如何从 Hbase 的列族中删除列?

How to drop a column from a columnfamily in Hbase?

要删除列族,我们有以下命令。

hbase> disable tablename
hbase> alter 'tablename',{NAME=>'COLFAM NAME',METHOD=>'delete}

如果 table 'emptable' 中有一个列族:'empdetails' 列:'col1,col2',有没有办法从列族中删除特定的列? 我不会实施它,但这只是为了我的知识,并知道是否有这种可能性。

删除“{table 名称}”、“{行}”、“{列名称}”、“{时间戳}”

删除 'emp'、'1'、'personal data:city'、1417521848375

delete命令可以用来删除某些columns.In为了删除整行包括它的所有列,使用deleteall.To删除table中的所有行,使用截断“table名称”。在后台,HBase 将禁用、删除并重新创建 table

  • 删除一行中的列: hbase> 删除“”,“行键”,“列” hbase> 删除‘t1’、‘r1’、‘fam1:c1’
  • 删除整行 hbase> 删除“”,“行键” hbase> 删除‘t1’、‘r1’
  • 删除所有行 hbase> 截断‘’

如果我没答错你的问题,你想删除列族下的列限定符。

正如我们所知,在 table 创建过程中,我们将仅定义列族而不是列限定符。因此,列限定符将即时创建,这取决于需要。这意味着您不会为 table 中的所有行设置列限定符。所以没有规定删除特定列族的列限定符。

有两种方式删除一行:

  1. delete :删除与行相关的特定单元格,提供所有相关信息,如 table、rowKey、column (family:qualifier)、timestamp
  2. deleteall :删除与行相关的所有单元格,提供最少的信息,如 table 和 rowKey

也许你可以参考这个 link 以获得准确的语法

参考此页面,它提供了 3 种从 HBase 中删除列的解决方案 table -

https://querydb.blogspot.com/2019/11/hbase-phoenix-cause-and-solution-for.html
  1. Unix 命令
  2. 穿越凤凰
  3. Hadoop Map Reduce