为什么HBase会有列族的概念呢?
一行由若干列组成,若干列又构成一个列族(column family),这不仅有助于构建数据的语义边界或者局部边界,还有助于给它们设置某些特性(如压缩)或者指示他们存贮在内存中,一个列族的所有列存贮在同一个底层的存储文件中,这个存储文件叫做HFile。Hbase官方文档中写明,目前列族数量最优不超过3个
列族数对 Flush 的影响
在 HBase 中,调用 API 往对应的表插入数据是会写到 MemStore 的,而 MemStore 是一种内存结构,每个列族对应一个 MemStore(和零个或多个 HFile)。越多的列族,将会导致内存中存在越多的 MemStore;而储存在 MemStore 中的数据在满足一定条件的时候将会进行 Flush 操作;每次 Flush 的时候,每个 Mem