如何使用HBASE Shell创建具有预拆分和压缩或其他选项的表

Mik*_*keb 10 hbase

在HBase shell中,帮助文件向我们显示了创建表的几种允许语法:

 create 'tableName', {NAME => 'colFamily', VERSIONS => 5 }
 create 'tableName', {NAME => 'cf1'}, {NAME => 'cf2'}
 create 'tableName', 'cf1', 'cf2', 'cf3'
 create 'tableName', 'cf1', {SPLITS => ['10','20','30','40']}
Run Code Online (Sandbox Code Playgroud)

我想创建一个表格,我指定一个Split和一些表格选项,如COMPRESSION =>'SNAPPY'和VERSIONS,但我似乎无法弄清楚语法或找到有用的文档.

Mik*_*keb 15

在实验之后最终变得清晰的是Shell语法将接受一组Column Family字典,而SPLIT字典实际上是它自己的动物(这有意义,因为它修改了整个表,而不仅仅是一个特定的列族.

所以另外一个有用的例子是:

 create 'tableName', {NAME => 'colFam', VERSIONS => 2, COMPRESSION => 'SNAPPY'}, 
    {SPLITS => ['333','666','FOO']}
Run Code Online (Sandbox Code Playgroud)

请注意,拆分字典与列族字典是分开的; 大概我们仍然可以输入一组列族,然后以Splits字典结束.