我有一些文本數據,我想存儲在MySQL數據庫。我目前有數據存儲在一個變量作爲一個字符串。壓縮字符串數據存儲和檢索
我擔心表格會變得相當大,因爲我對每行的文本數據量很大。
因此,什麼是以理想的存儲和檢索格式壓縮這個字符串數據的最簡單的方法(最好是在函數中構建的php)?
我有一些文本數據,我想存儲在MySQL數據庫。我目前有數據存儲在一個變量作爲一個字符串。壓縮字符串數據存儲和檢索
我擔心表格會變得相當大,因爲我對每行的文本數據量很大。
因此,什麼是以理想的存儲和檢索格式壓縮這個字符串數據的最簡單的方法(最好是在函數中構建的php)?
如果你使用的是InnoDB,你可以在整個表上啓用壓縮,這完全不影響你的代碼。
ALTER TABLE database.tableName ENGINE='InnoDB' ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=8;
您可以更改KEY_BLOCK_SIZE較小的值,以獲得更多的壓縮(取決於數據),但是這會增加更多的開銷到CPU。 測試了一系列表後,我發現KEY_BLOCK_SIZE爲8可以很好地平衡壓縮性能。
什麼數據類型是您存儲數據的列? – Cez
也許關於另一個主題的答案可能會幫助你: http://stackoverflow.com/questions/6733659/best-way-to-compact-a-string-in-php-that-can-be-decoded-to-其原始格式 –
數據類型爲TEXT – user1294886