2

大量のテキスト (ログ ファイル) があり、非常に大きくなる可能性があります (ギガバイトまで)。それらはデータベースに保存しているエンティティに関連付けられており、それらを SQL データベース内に保存するか、外部ファイルに保存する必要があるかを把握しようとしています。

データベース内のストレージは、MySQL の LONGTEXT フィールドに対して 4GB に制限されている可能性があり、おそらく他の DB にも同様の制限があるようです。また、データベースに格納すると、このデータを表示するときにあらゆる種類のシークがおそらく排除されます。データの一部をレンダリングするには、データの全長をロードする必要がありますよね?

したがって、私はこのデータをDB外に保存することに傾いているようです:データベースに大きなブロブを保存することについての私の不安は有効ですか?データベースの外に保存する場合は、フレームワーク/ライブラリがありますか?それを助けるために?

(私はPythonで働いていますが、他の言語の技術にも興味があります)

4

2 に答える 2

2

あなたの不安は有効です。

DB は数年前に大きなバイナリ フィールドとテキスト フィールドを処理できるようになりましたが、みんなが試した後、あきらめました。

この問題は、大きなオブジェクトに対する操作が原子値に対する操作と大きく異なる傾向があるという事実から生じます。そのため、コードは難しくなり、一貫性がなくなります。

したがって、ほとんどの退役軍人は、db にポインタを置いてファイルシステムにそれらを格納するだけです。

于 2011-01-14T02:48:45.850 に答える
0

php/mysql/oracle/prob more を使用すると、メモリの問題を回避するファイル ポインターがあるかのように、大きなデータベース オブジェクトを操作できることがわかります。

于 2011-01-14T00:48:17.780 に答える