不同Hbase表中的列族名称相同

时间:2017-01-24 10:10:32

标签: hbase

我们可以在HBase中的两个不同表中使用相同的列族名称 在这种情况下如何存储数据?

2 个答案:

答案 0 :(得分:0)

是的,可以在不同的表中使用相同的列系列名称,因为它们将存储在HDFS的不同文件中。

official documentation

中查看详情

答案 1 :(得分:0)

是的,因为

是可能的

表被分成称为“区域”的行块。这些区域分布在集群中,由RegionServer进程托管并提供给客户端进程

反过来,一个区域由许多“商店”组成,它们对应于列族 并且每个列家庭有不同的分裂

分割中的hfiles中的数据以

的形式存储
key=123
columnfamily=s
columnIdentifier=AS1,AS2,BT1
Timestamp = 1476864522000
values will be in the form of byte array =33 0 31 30 30 31 33 33 34 34 35

Hfile的原始数据转储

keyvalues={123/s:AS1/1476864522000/Put/vlen=1/seqid=0,
123/s:AS1/1476862406000/Put/vlen=1/seqid=0, 
123/s:AS2/1476862406000/Put/vlen=1/seqid=0, 
123/s:AS2/1476862406000/Put/vlen=1/seqid=0, 
123/s:BT1/1476864522000/Put/vlen=3/seqid=0}