Hbase列系列设计的重要性

时间:2015-03-07 17:45:37

标签: java hbase

我正在学习HBase,但找不到自己的答案。

让我们考虑以下情况。我们有五个物理(硬件)服务器(0-4)。 Hmaster安装在服务器0上,4个hregion服务器安装在服务器1-4上。我们有一个非常大的表,我们需要使用这五个服务器。

据我所知,每个区域服务器都负责某个区域(某些行(!))。这意味着始终只有一行(包括其所有列族,列和单元格)仅位于一个区域服务器中(在我们的示例中位于一个物理服务器中)。

如果我写的是对的,我无法理解列族的用途和重要性。如果我错了并且/或者放弃使用哪些列系列,请纠正我。

1 个答案:

答案 0 :(得分:1)

扫描/获取时,IO性能更高。如果您在扫描/获取期间发现自己仅使用X,Y和Z列而不使用A,B和C列,则可以将数据分区为两个列系列以提高IO性能。

压缩表也可能有一个小好处,因为类似数据可以物理地组合在一起,因此更容易压缩。