hbase动态更改行键设计_nosql – HBase行键设计,用于单调递增键
应该如何设计行键,使带有〜10的行最后?
您以这种方式看到扫描输出,因为HBase中的行键保持排序为lexicographically,而不考虑插入顺序.这意味着它们根据其字符串表示进行排序.请记住,HBase中的行键被视为具有字符串表示形式的字节数组.表中最先显示的是最低的行键.这就是为什么10出现在2之前,依此类推.请参阅此page上的章节了解更多信息.
当您使用零填充整数时,它们的自然排序保持不变,同时按字典排序,这就是为什么您看到扫描顺序与插入数据的顺序相同.为此,您可以按照@shutty的建议设计您的行键.
我正在寻找一些推荐的方法或更流行的设计HBase行键的方式.
为了设计好的设计,需要遵循一些一般的指导方针:
>保持行键尽可能的小.
>避免使用单调增加的行键,如时间戳等.这是一个差的shecma设计,并导致RegionServer热点.如果你不能避免使用某种东西,就像哈希或盐渍,以避免热点.
>尽可能避免使用字符串作为行键.与其整数或长表示相比,数字的字符串表示需要更多的字节.例如:长为8字节.您可以将这8个字节中的无符号数字存储为18,446,744,073,709,551,615.如果您将此号码存储为字符串 – 假设每个字符为一个字节,则需要将近3个字节.
>使用一些机制,如散列,以便统一分配行,以防您的区域不均匀加载.您也可以创建预先拆分的表来实现此目的.
有关rowkey设计的更多信息,请参阅link.
HTH
hbase动态更改行键设计_nosql – HBase行键设计,用于单调递增键相关推荐
- hbase动态更改行键设计_Hadoop HBase概念学习系列之优秀行键设计(十六)
尽量最小化行名和列名的字段大小 在HBase中,值是作为一个单元(Cell)保存在系统的中的,要定位一个单元,需要行,列名和时间戳.通常情况下,如果你的行和列的名字要是太大(甚至比value的大小还要 ...
- hbase动态更改行键设计_谈笑间学会Hbase Rowkey设计
谈笑间学会-Hbase Rowkey设计 1.为什么Rowkey这么重要 1.1.Rowkey是什么 类似于MySQL.Oracle中的主键,用于标示唯一的行 完全是由用户指定的一串不重复的字符串: ...
- HBase建表高级属性,hbase应用案例看行键设计,HBase和mapreduce结合,从Hbase中读取数据、分析,写入hdfs,从hdfs中读取数据写入Hbase,协处理器和二级索引
1. Hbase高级应用 1.1建表高级属性 下面几个shell 命令在hbase操作中可以起到很到的作用,且主要体现在建表的过程中,看下面几个create 属性 1. BLOOMFILTER 默认是 ...
- hbase 二进制数据写入_分布式数据库HBase的架构设计详解(有彩蛋)
原标题:分布式数据库HBase的架构设计详解(有彩蛋) 本文根据DBAplus社群第99期线上分享整理而成,文末还有好书送哦~ 讲师介绍 陈鸿威 云财经大数据CTO 曾任百度高级工程师,现主持设计开发 ...
- 【Hbase】(十一)详解 HBase 表的设计原则
文章目录 一.建表高级属性 1. BLOOMFILTER 2. VERSIONS 3. COMPRESSION 4. TTL 5. alter 6. describe/desc 7. disable_ ...
- 【HBase】HBase 行健设计
文章目录 一.RowKey 的作用 1.1.RowKey 在查询中的作用 1.2.RowKey 在 Region 中的作用 二.RowKey 应该具备的特性 2.1.字符串类型 2.2.有明确意义 2 ...
- hbase行健设计原则
行健的设计问题 行健的热点问题 是由于行健相似.连续且数据量过大操作成单region的数据量过大,进而影响读写效率 行健应该尽量的随机.不要出现连续行健. 常见的行健设计就是,比如手机号码倒置+时间戳 ...
- hbase hyperbase 区别_大数据之HBase的几个常规性问题
本文主要针对对HBase不了解的人.主要想基于个人的理解回答以下几个问题: 什么是HBase? 何时用HBase? 与Hive.Pig的区别? HBase的结构 为何HBase速度很快? HBase常 ...
- hbase 使用lzo_带你快速上手HBase | HBase列族优化
随着大数据的越来越普及,HBase也变得越来越流行.使用HBase并不困难,但是如何用好HBase,这确是一个难点.为了合理地使用HBase,尽可能发挥HBase的功能,我们需要根据不同的场景对HBa ...
- hbase学习教程(一):hbase的概述和hbase架构及基本组件
一.hbase的概述 概述 HBase是一个构建在HDFS上的分布式列存储系统: HBase是基于Google BigTable模型开发的,典型的key/value系统: HBase是Apache H ...
最新文章
- 编程练习:Matlab,图片保存
- Python中的startswith和endswith函数使用实例
- 集合(Collection和Map)
- Linux 基础知识(九)
- 面试官 | 如何在 Spring Boot 中进行参数校验?
- python分支结构说课_Python_3.8平台上的分支结构(模块.类.函数)_11
- ffmpeg合并音频(转)
- c++ string 回文串_第33期:上海自来水来自海上,回文字符串验证!
- excel的主要功能_勤哲EXCEL服务器软件做装饰企业管理系统ERP
- 普林斯顿微积分读本 大纲与重点 (by zzd)
- 高德地图api汇总(二)插件的使用
- 在新的固态硬盘中安装windows系统(旧固态硬盘已安装ubuntu系统)
- KVM 多电脑切换器(KVM Switch)
- 微软的学术可视化搜索
- 庆山《得未曾有》摘录
- Python性能分析优化及测试
- UBC计算机专业好进吗,硕士转专业逆袭——UBC计算机
- leetcode算法练习 JavaScript实现
- 零基础想要学习前端,却无从下手?其实你就差一套这样的web前端学习路线
- pytorch embedding层详解(从原理到实战)