如何设计 Hbase 架构以实现高性能
Posted
技术标签:
【中文标题】如何设计 Hbase 架构以实现高性能【英文标题】:how to design Hbase schema for high performance 【发布时间】:2015-08-19 22:39:33 【问题描述】:对于设计性能良好的 Hbase 架构有什么好的建议吗?例如:不要使用太多的columnFamily,因为太多的columnFamily会导致读/写慢?在不同的columnFamily中将大列与小列分开?我非常感谢任何建议。
【问题讨论】:
Lars George 的任何文章都值得一读。 每个设计都取决于您要解决的问题。所有问题都没有单一的解决方案 【参考方案1】:HBase 表由列族组成,列族是列的逻辑和物理分组。一个族中的列与另一族中的列分开存储。如果您有不经常查询的数据,请将这些数据分配给单独的列族。
每行重复列族和列限定符名称。因此,尽量保持名称简短,以减少 HBase 存储和读取的数据量。例如,使用 f:q 代替 mycolumnfamily:mycolumnqualifier。
由于列族存储在单独的 HFile 中,因此列族的数量尽可能少。您还希望减少列族的数量以减少 MemStore 刷新的频率和压缩的频率。而且,通过使用尽可能少的列族,您可以缩短 LOAD 时间并减少磁盘消耗。
【讨论】:
以上是关于如何设计 Hbase 架构以实现高性能的主要内容,如果未能解决你的问题,请参考以下文章