Hbase 表设计.docVIP

  • 5
  • 0
  • 约1.99千字
  • 约 6页
  • 2017-12-19 发布于河南
  • 举报
Hbase 表设计

HBase与RDBMS的区别在于:HBase的Cell(每条数据记录中的数据项)是具有版本描述的(versioned),行是有序的,列(qualifier)在所属列簇(Column families)存在的情况下,由客户端自由添加。以下的几个因素是Hbase Schema设计需要考虑的问题: 1、 Hbase中没有joins的概念 大表的结构可以使得不需要joins,而解决这一问题。 2、Row keys 设计 主键,在Region里按字母顺序来排序(byte数组存储)。124 12345 写入要分散(不能使用递增的写入),如订单表: order_id做reverse逆排序后做rowkey,以便分布式存储,避免数据只保存在个别节点上。 201101 逆排序后 101102 201102 逆排序后 201102 多条件查询时,设为组合row key,左匹配 注:读取数据只能按row key(及其range)或scan全表扫描,确保查询高效 3、列族CF设计 尽量少,建议CF数量在1-2个。 设计Hbase schema的时候,要尽量只有一个column family。 flush和compaction触发的基本单位都是Region级别。当一个CF有大量的数据的时候会触发整个region里面的其他CF的memstore(其实这些memstore可能仅有少量的数据,还不需要flush

文档评论(0)

1亿VIP精品文档

相关文档