mysql データベースに保存したいテキスト データがあります。現在、データを変数に文字列として格納しています。
各行のテキスト データの量が多いため、テーブルが非常に大きくなることが懸念されます。
したがって、この文字列データを保存と検索に理想的な形式に圧縮する最も簡単な方法 (できれば php 組み込み関数) は何ですか?
InnoDBを使用している場合は、コードにまったく影響を与えないテーブル全体の圧縮を有効にできます。
ALTER TABLE database.tableName ENGINE='InnoDB' ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=8;
KEY_BLOCK_SIZEを小さい値に変更して、圧縮率を上げることができます(データによって異なります)が、これによりCPUのオーバーヘッドが増加します。さまざまなテーブルをテストした後、KEY_BLOCK_SIZEが8の場合、圧縮とパフォーマンスのバランスが取れていることがわかりました。