Chr*_*ain 21
目前(尽管预计会发生变化),区域的所有列族都会被刷新.这是人们说"HBase不超过2或3列家族"的主要原因.考虑两个CF,每个都有一列.A栏:A存储整个网页文本.B列:B存储页面中的单词数.所以每次我们刷A:A(这将经常发生,因为A:A的数据要大得多),我们还需要经历一个完整的单独文件I/O杂交路由到B列:B,即使没有需要 - B:B只持有数字,我可以连续几个月没有冲洗它.
如果将A和B存储在同一列系列(A:A和A:B)中,您可能会看到更好的刷新I/O性能,并且因为大多数HBase读取完全来自memstore,您可能会发现读取速度相当.
此外,也许更重要的是,如果列的基数大不相同,那么您的区域服务器将需要为较不密集的列族维护无用的大多数空文件.这永远不会改变.
所有这些都可以在HBase Book中找到.
因此,正如在所有这些性能情况中一样,在确定"正确"路径之前进行测量.