HBase行键设计例子
MD5利用JavaAPI设计行键
int id = 16;
byte[] rkid= Bytes.toBytes(id);
String prefix = MD5Hash.getMD5AsHex(rkid).substring(0, 3); //取出MD5码的前三位
byte[] rkid2 = Bytes.toBytes(prefix);
byte[] rowkey = Bytes.add(rkid, rkid2); //合并
shell设计行键
UPDATE fields_tmp SET hbase_row_key = MD5(id); //主键MD5加密当作行键
SELECT * FROM fields_tmp WHERE hbase_row_key = MD5(2);
SELECT * FROM fields_tmp WHERE hbase_row_key=MD5(10); //只能查指定行的
联合主键利用JavaAPI设计行键
//将MySQL的数据存储到hbase上
String id = result.getString("id");
String name=result.getString("name");
String rowkey=id+name //联合主键
Put put =new Put(Bytes.toBytes(rowkey));
StringBuilder a =new StringBuilder(tydm);
//StringBuffer a=new StringBuffer(tydm); //Buffer跟Builder两个都行
String rowkey = a.reverse().toString()+jgmc; //主键反转+联合主键
Put put=new Put(Bytes.toBytes(rowkey));
UUID uuid=UUID.randomUUID();
byte [] rowkey =Bytes.toBytes(uuid);
UUID这个不知道怎么查询,大家批评指正,有什么好的行键设计例子,也请留言赐教
注:如有侵权,请联系删除
HBase行键设计例子相关推荐
- HBase 行键设计
HBase 有两种基本的键结构:行键(row key)和列键(column key).两者都可以存储有意义的信息,一种是键本身存储的内容,另一种是键的排列顺序. 概念 HBase 的表中数据分隔主要是 ...
- HBase行键设计原则
[原理] HBase是一个分布式的.面向列的数据库,它和一般关系型数据库的最大区别是:HBase很适合于存储非结构化的数据,还有就是它基于列的而不是基于行的模式. 既然HBase是采用KeyVa ...
- 架构师必备:HBase行键设计与应用
- Hbase高级应用:建表高级属性、行键设计、设计原则、热点问题
Hbase建表高级属性 1.BLOOMFILTER 默认是NONE 是否使用布隆过虑及使用何种方式 布隆过滤可以每列族单独启用. 使用 HColumnDescriptor.setBloomFilt ...
- hbase表的行键设计原则
hbase表的行键设计原则 原理: HBase是一个分布式的.面向列的数据库,它和一般关系型数据库的最大区别是:HBase很适合于存储非结构化的数据,还有就是它基于列的而不是基于行的模式. 既然HB ...
- HBase建表高级属性,hbase应用案例看行键设计,HBase和mapreduce结合,从Hbase中读取数据、分析,写入hdfs,从hdfs中读取数据写入Hbase,协处理器和二级索引
1. Hbase高级应用 1.1建表高级属性 下面几个shell 命令在hbase操作中可以起到很到的作用,且主要体现在建表的过程中,看下面几个create 属性 1. BLOOMFILTER 默认是 ...
- hbase动态更改行键设计_Hadoop HBase概念学习系列之优秀行键设计(十六)
尽量最小化行名和列名的字段大小 在HBase中,值是作为一个单元(Cell)保存在系统的中的,要定位一个单元,需要行,列名和时间戳.通常情况下,如果你的行和列的名字要是太大(甚至比value的大小还要 ...
- 【HBase】HBase 行健设计
文章目录 一.RowKey 的作用 1.1.RowKey 在查询中的作用 1.2.RowKey 在 Region 中的作用 二.RowKey 应该具备的特性 2.1.字符串类型 2.2.有明确意义 2 ...
- hbase行健设计原则
行健的设计问题 行健的热点问题 是由于行健相似.连续且数据量过大操作成单region的数据量过大,进而影响读写效率 行健应该尽量的随机.不要出现连续行健. 常见的行健设计就是,比如手机号码倒置+时间戳 ...
最新文章
- seaborn可视化条形图并按照升序排序条形图进行可视化:Sort Bars in Barplot in Ascending Order in Python
- 一个自己设计的软件框架
- Android 5.0+高级动画开发 矢量图动画 轨迹动画 路径变换
- github 开源项目 java_2019 年 GitHub 上最热门的 Java 开源项目
- BigDecimal的用法
- 操作系统上机作业--实现mysys(多进程)
- “约见”面试官系列之常见面试题之第一百零一篇之vue-router传参(建议收藏)
- java 判断请求为 ajax请求_请问如何判断一个请求是不是ajax请求?
- 吴恩达神经网络和深度学习-学习笔记-26-迁移学习(transfer learning)
- quartus仿真22:优先编码器74148的级联(详细)
- 使用pdfobject.js实现在线浏览PDF--前端显示PDF
- gpio_set_value 函数
- WIN10 下的erlang + rabbitmq安装,以及遇到的问题
- 学习记录540@SVN查看日志报错:Item is not readable
- 快捷指令通知运行html,快捷指令怎样运行这段,一个书签
- JavaSE学习笔记(十)IO流_part2
- 无头浏览器和抓取-解决方案
- 【Linux】定时任务 | crontab定时任务
- IOS开发基础 · SwiftUI · StanfordCS193p Lecture1-2
- 2011_STC_Minimizing Additive Distortion in Steganography using Syndrome-Trellis Codes Abstract
热门文章
- 给三角形添加边框阴影
- APICloud-App-Templates
- 一、Docker—简介及安装
- Parallels Desktop虚拟机怎么完全卸载? PD虚拟机完全卸载方法
- 把时间当作朋友-读后感
- javascript 及 vue 中的变量前面的美元符号 $ 是什么意思
- java毕业设计校园课室资源预约系统设计与实现mybatis+源码+调试部署+系统+数据库+lw
- 三星手机里的照片删了怎么恢复
- 苹果降频门:旧款iPhone哪些功能受到影响
- Use ‘sudo apt autoremove‘ to remove it.