如何在hbase中向列族添加列

Sea*_*yen 6 java command-line hbase

我是hbase的新手.您能告诉我如何将列添加到列族中.我有这样的数据:

{
name: abc
addres: xyz
}
Run Code Online (Sandbox Code Playgroud)

我有一个列家庭人员的表测试.如何将姓名和地址作为列添加到此人.请在hbase命令行以及java中显示.

Jea*_*ond 15

HBase Shell:

来自Hbase shell wiki:http://wiki.apache.org/hadoop/Hbase/Shell

将单元格"值"放在指定的表/行/列和可选的时间戳坐标处.要将单元格值放入标有时间'ts1'的列'c1'下'r1'行的表't1',请执行以下操作:

hbase> put 't1', 'r1', 'c1', 'value', ts1
Run Code Online (Sandbox Code Playgroud)

在你的情况下这样的事情:

hbase> put 'test', 'yourRow', 'person:name', 'abc'
hbase> put 'test', 'yourRow', 'person:address', 'xyz'
Run Code Online (Sandbox Code Playgroud)

在Java中:

Configuration config = HBaseConfiguration.create();
HTable table = new HTable(config, "test");

Put p = new Put(Bytes.toBytes("yourRow"));
p.add(Bytes.toBytes("person"), Bytes.toBytes("name"),
    Bytes.toBytes("abc"));
table.put(p);
Run Code Online (Sandbox Code Playgroud)


Arn*_*-Oz 6

JP Bond为您提供了所需的示例代码 - 我只是想补充说HBase的一个好处是因为它很稀疏(即不为没有值的行保留列空间).此设计决策的一个特性是您可以通过编写来创建新列(列族+限定符).