4

我正在使用 HBase 存储大量传感器数据。

我尝试使用 txt 文件来存储我的传感器数据,对于 20MB 的文件,如果我压缩它,它会在磁盘上减少到 1MB。

我的问题是:将数据存储到磁盘时,HBase 本身是否会自动进行压缩?

谢谢

4

2 回答 2

2

您可以使用 lzo、gzip 或 snappy 进行 hbase 压缩。如果您希望将它们用于 hbase 压缩(包括 gzip),您需要自己设置 lzo/snappy。

通常 - lzo 比 gzip 压缩快,尽管 gzip 压缩比通常更好。Snappy 在压缩方面很强大,但压缩比通常更差。

创建表时 - 您可以指定压缩/压缩库 - 如果使用压缩,则 hfiles 在写入磁盘时会被压缩(并且在读取时需要解压缩)。

希望能帮助到你

于 2012-08-22T01:25:38.113 回答
1

您还可以稍后更改表以添加压缩支持。然后你的数据将在下一次压缩时被真正压缩(正如阿里所说,因为一个新的 HFile 将被写入磁盘)。据我了解,压缩算法用于块级,而不是整个 HFile。这意味着在读取数据时,它不必解压缩几个 GB 的 HFile,而只需解压缩几个 KB 的数据块。

于 2012-08-24T06:15:09.010 回答