删除HBase中的列

时间:2013-09-12 12:13:49

标签: hadoop nosql hbase bigdata

在HBase中,调用DeleteColumn()方法,即基本上对列系列进行模式更改或删除列系列会导致HBase Cluster的停机时间?

1 个答案:

答案 0 :(得分:7)

HBase的Delete mutation上的deleteColumn方法删除特定行中的特定列,这不是架构更改,因为HBase不保留每行(以及每行)的列的架构级知识可以有不同数量和类型的列 - 将其视为一个人口稀少的矩阵。对于此对象的deleteFamily也是如此。

此时不会出现群集停机(并且HBase实际上不会删除数据,直到该区域的下一次主要压缩)

如果要从整个表中删除列族,可以通过HBaseAdmin使用不那么恰当命名的deleteColumn方法(或带alter 'table_name', {NAME => 'family_name', METHOD => 'delete'}的shell)来执行此操作 - 在本例中为表需要首先禁用,以便HBase不会出现停机时间,具体表格将