0

レシピ用に 1 つの varchar と 2 つの BLOB 型のデータがあります。データ間の関係は必要ありません。たとえば、どの食事にポテトなどが必要かを知る必要はありません。

食事の資料をデータベースから取得し、編集して BLOB として保存し直します。次に、バイナリ テキスト ファイル (約 100 KB) をオンザフライで作成し、バイナリ データという名前の別の列に保存します。

私の質問は、テーブルを 2 つに分割することは理にかなっていますか? 1 つの BLOB を 1 つのテーブルに配置し、別の BLOB を別のテーブルに配置すると、(理論的には) パフォーマンスが変化します。それとも、バックアップの問題以外は何も変わりませんか?

+-id--+-meal name (varchar)----+-materials (BLOB)------------+-binary data (BLOB)---+
| 1   | meatball               | (meat, potato, bread etc.)  | (some binary files)  |
| 2   | omelette               | (potato, egg, etc.)         | (other binary files) |
+-----+------------------------+-----------------------------+----------------------+
4

2 に答える 2

0

ORM を使用する場合は、分割テーブル アプローチを使用することをお勧めします。それ以外の場合、材料を要求すると、ORM は通常、使用可能なすべてのフィールドを取得します...したがって、大きくて不要な「バイナリ」オブジェクトを読み取ります。

反対に...バイナリ結果を提供する場合は、ファイルを保存して直接提供することをお勧めします。

于 2013-05-20T20:24:59.867 に答える