HBase是否将同一行的列族存储在不同的计算机中?

HBase是否将同一行的列族存储在不同的计算机中?,hbase,Hbase,同一行的列族属于同一RegionServer。 所以,这里的问题是RegionServer会在不同的机器中存储不同的列族吗 不一定,但总有一天会的。这是基本HBase体系结构的一部分。如果将HBase表成像为具有行和列的电子表格,则区域在一个方向上跨越多个连续行,并跨越一个或多个列族的所有列。 这样,整个板材都覆盖了区域瓷砖 每个区域存储在一个或多个(通常为三个)群集节点上。(如果一次释放包含特定区域的所有节点,则释放该区域的所有数据。如果仅释放一个副本,则HBase会确保将其从其余副本复制到另

同一行的列族属于同一RegionServer。
所以,这里的问题是RegionServer会在不同的机器中存储不同的列族吗

不一定,但总有一天会的。这是基本HBase体系结构的一部分。如果将HBase表成像为具有行和列的电子表格,则区域在一个方向上跨越多个连续行,并跨越一个或多个列族的所有列。 这样,整个板材都覆盖了区域瓷砖

每个区域存储在一个或多个(通常为三个)群集节点上。(如果一次释放包含特定区域的所有节点,则释放该区域的所有数据。如果仅释放一个副本,则HBase会确保将其从其余副本复制到另一个节点。)

现在,当区域中包含的数据增长过大时,HBase会自动启动区域拆分,从而生成两个新区域,每个区域包含一半的数据。只有通过区域拆分(除了区域复制之外),数据才能最终分布在HBase群集上


将一行的数据存储在同一列族的不同列中可确保数据存储在一个位置

如果表中的数据足够大,HBase会将表拆分为不同的区域。因为HBase是一个面向列的数据库,不同的列族将存储在不同的区域。

“每个区域存储在一个或多个节点上”我想您的意思是复制,但对于一个区域本身,它不会跨多个节点。因此,我对这个问题的回答是,同一行不会存储在不同的机器上