これらのテキストにインデックスを付けますか。このテキストの読み取り負荷はどのくらいですか?負荷を挿入しますか?
InnoDBデータ圧縮を使用できます-透過的で最新の方法です。 ドキュメント を参照してください 詳細については
本当に巨大なテキストがある場合(たとえば、各テキストが10MBを超える場合)、Mysqlに保存しないことをお勧めします。圧縮されたgzipテキストをファイルシステムに保存し、ポインタとメタのみをmysqlに保存します。将来的にストレージを簡単に拡張して、たとえば次の場所に移動できます。 DFS。
更新: Mysqlの外部にテキストを保存するもう1つの利点:DBは小型で高速なままです。マイナス:データの不整合の可能性が高い。
更新2: プログラミングリソースがたくさんある場合は、次のようなプロジェクトをご覧ください: http://code.google.com/p/mysql-filesystem-engine/ 。
最終更新: あなたの情報によると、InnoDB圧縮を使用することができます-それはZIPと同じです。次のパラメータから始めることができます:
CREATE TABLE book_parts
(...)
ENGINE=InnoDB
ROW_FORMAT=COMPRESSED
KEY_BLOCK_SIZE=8;
後で、KEY_BLOCK_SIZE
で遊ぶ必要があります 。 SHOW STATUS LIKE 'COMPRESS_OPS_OK'
を参照してください およびSHOW STATUS LIKE 'COMPRESS_OPS'
。これら2つのパラメーターの比率は1.0に近い必要があります:ドキュメント
。