您好,欢迎来到华佗小知识。
搜索
您的当前位置:首页Hbase 中 RowKey 是怎么设计的,以及 RowKey 的设计原则

Hbase 中 RowKey 是怎么设计的,以及 RowKey 的设计原则

来源:华佗小知识

RowKey 的设计原则:

1. 长度原则: 尽可能短,因为 HBase 的持久化文件 HFile 是按照 KeyValue 存储的。尽可能不要超过 16 个字节。

2. 散列原则:   

设计的 RowKey 应均匀分布在各个 HBase 节点上。如 RowKey 是按系统时间戳的方式递增,RowKey 的第一部分如果是时间戳的话,将造成所有新数据都在一个 RegionServer 堆积的热点现象,也就是通常说的 Region 热点问题。

        热点问题:热点发生在大量的 client 直接访问集中在个别 RegionServer 上 (访问可能是读、写或者其他操作), 导致单个 RegionServer 机器自身负载过高,引起   性能下降甚至 Region 不可用,常见的是发生 jvm full gc 或者显示 region too busy 异常情况

3. 唯一性原则
保证 rowKey 的唯一性。由于在 HBase 中数据存储是 Key-Value 形式,若 HBase 中同一表插入相同 RowKey,则原先的数据会被覆盖掉(如果表的 version 设置为 1 的话,默认保留时间戳为最新的数据)。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo0.cn 版权所有 湘ICP备2023017654号-2

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务