繁体   English   中英

mysql压缩文本?

[英]mysql compression of text?

我对mysql有点陌生,不确定压缩如何工作。 基本上我有一个20GB的原始文件,正在加载到mysql中。 我知道何时使用gzip压缩(通常在2-4GB之间)。 所以我的问题是,mysql使用什么压缩(我可以更改它)吗? 它仅适用于表本身中存储的数据还是适用于文本?

这是我的桌子:

CREATE TABLE my_data (
  `ID` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `DATA` text NOT NULL,
  PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=4;

我的理解是DATA并不存储在表本身中,而只是存储在表中。 我想知道压缩是应用于数据本身还是仅应用于引用指针?

从mysql文档-

“当表采用COMPRESSED格式时,写入溢出页面的所有数据都按“原样”压缩;也就是说,InnoDB将zlib压缩算法应用于整个数据项。除了数据之外,压缩的溢出页面还包含未压缩的标头和包含页面校验和和到下一个溢出页面的链接的预告片,因此,如果数据具有高度可压缩性(对于文本数据通常如此),则更长的BLOB,TEXT或VARCHAR列可以节省大量存储空间(但不是以前压缩的图像)。”

我确定压缩算法已应用于数据。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM