如何使用hbase shell在bigtable中设置表压缩模式?

mftmpeh8  于 2021-06-09  发布在  Hbase
关注(0)|答案(1)|浏览(444)

我正在bigtable中使用hbase shell和通常的 create table 可以指定压缩的命令显然忽略了compression属性。
例子:

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
bksxznpy

bksxznpy1#

bigtable使用专有的压缩算法,并且不公开压缩方法或配置。因此,当输入被忽略时,压缩正在发生,并自动为您管理。
这在bigtable与hbase的区别中有记录:

柱族

创建列族时,不能使用hbase shell或通过hbase api配置块大小或压缩方法。cloud bigtable为您管理块大小和压缩。
此外,如果使用hbase shell获取有关表的信息,hbase shell将始终报告每个列族不使用压缩。实际上,cloudbigtable对所有数据都使用专有的压缩方法。

相关问题