如何使用HBase shell在Bigtable中设置表压缩模式



>我正在使用HBase shell在Bigtable中创建表,而通常的create table命令可以在其中指定压缩显然忽略了压缩属性。

例:

hbase(main):003:0> create 'table_snappy', {NAME => 'event', VERSIONS => 1, COMPRESSION => 'SNAPPY', BLOOMFILTER => 'ROW'}
hbase(main):004:0> describe 'table_snappy'
Table table_snappy is ENABLED
table_snappy
COLUMN FAMILIES DESCRIPTION
{NAME => 'event', BLOOMFILTER => 'ROW', VERSIONS => '1', IN_MEMORY => 'false', KEEP_DELETED_CELLS => 'FALSE', DATA_BLOCK_ENCODING => 'NONE', TTL => 'FOREVER', COMPRESSION => 'NONE', MIN_VERSIONS => '0', BLOCKCACHE => 'true', BLOCKSIZE => '65536', REPLICATION_SCOPE => '0'}
1 row(s) in 0.0870 seconds
hbase(main):003:0> create 'table_lzo', {NAME => 'event', VERSIONS => 1, COMPRESSION => 'LZO', BLOOMFILTER => 'ROW'}
hbase(main):004:0> describe 'table_lzo'
Table table_lzo is ENABLED
table_lzo
COLUMN FAMILIES DESCRIPTION
{NAME => 'event', BLOOMFILTER => 'ROW', VERSIONS => '1', IN_MEMORY => 'false', KEEP_DELETED_CELLS => 'FALSE', DATA_BLOCK_ENCODING => 'NONE', TTL => 'FOREVER', COMPRESSION => 'NONE', MIN_VERSIONS => '0', BLOCKCACHE => 'true', BLOCKSIZE => '65536', REPLICATION_SCOPE => '0'}
1 row(s) in 0.0870 seconds

Bigtable 使用专有的压缩算法,并且不公开压缩方法或配置。因此,当输入被忽略时,压缩正在发生并自动为您管理。

这记录在 Bigtable 与 HBase 的差异中:

色谱柱系列

创建列族时,无法使用 HBase 外壳或通过 HBase API 配置块大小或压缩方法。Cloud Bigtable 为您管理块大小和压缩。

此外,如果使用 HBase 外壳获取有关表的信息,则 HBase 外壳将始终报告每个列系列不使用压缩。实际上,Cloud Bigtable对您的所有数据使用专有的压缩方法。

最新更新