HBase 数据模型操作

在 HBase 中有四个主要的数据模型操作,分别是:Get、Put、Scan 和 Delete。

Get(读取)

Get 指定行的返回属性。读取通过 Table.get 执行。

Get 操作的语法如下所示:

HBase 数据模型操作

在以下的 get 命令示例中,我们扫描了 emp 表的第一行:

HBase 数据模型操作

读取指定列

下面给出的是使用 get 操作读取指定列语法:

HBase 数据模型操作

在下面给出的示例表示用于读取 HBase 表中的特定列:

HBase 数据模型操作

Put(写)

Put 可以将新行添加到表中(如果该项是新的)或者可以更新现有行(如果该项已经存在)。Put 操作通过 Table.put(non-writeBuffer)或 Table.batch(non-writeBuffer)执行。

Put 操作的命令如下所示,在该语法中,你需要注明新值:

HBase 数据模型操作

新给定的值将替换现有的值,并更新该行。

Put操作示例

假设 HBase 中有一个表 EMP 拥有下列数据:

HBase 数据模型操作

以下命令将员工名为“raju”的城市值更新为“Delhi”:

HBase 数据模型操作

更新后的表如下所示:

HBase 数据模型操作

Scan(扫描)

Scan 允许在多个行上对指定属性进行迭代。

Scan 操作的语法如下:

HBase 数据模型操作

以下是扫描表格实例的示例。假定表中有带有键 "row1 "、 "row2 "、 "row3 " 的行,然后是具有键“abc1”,“abc2”和“abc3”的另一组行。以下示例显示如何设置Scan实例以返回以“row”开头的行。

HBase 数据模型操作

请注意,通常,指定扫描的特定停止点的最简单方法是使用 InclusiveStopFilter 类。

Delete(删除)

Delete 操作用于从表中删除一行。Delete 通过 Table.delete 执行。

HBase 不会修改数据,因此通过创建名为 tombstones 的新标记来处理 Delete 操作。这些 tombstones,以及没用的价值,都在重大的压实中清理干净。

使用 Delete 命令的语法如下:

HBase 数据模型操作

下面是一个删除特定单元格的例子:

HBase 数据模型操作

删除表的所有单元格

使用 “deleteall” 命令,可以删除一行中所有单元格。下面给出是 deleteall 命令的语法:

HBase 数据模型操作

这里是使用“deleteall”命令删除 emp 表 row1 的所有单元的一个例子。

HBase 数据模型操作

使用 Scan 命令验证表。表被删除后的快照如下:

HBase 数据模型操作


分享到:


相關文章: