Hbase操作集锦
一.Hbase架构与理解
Hbase架构大致如下,图片取自https://www.cnblogs.com/linkworld/p/10963910.html。
二.Hbase shell操作
创建Hbase表时默认有一个region,这个region的rowkey是没有边界的,即没有开始的startrowkey和结尾的endrowkey。这样做有一个坏处就是当数据太大,会出现写热点,当一个region装不下时就会split为2个region,拆分会消耗大量IO。所以一般创建表时都会进行预分区,即指定每个region的startrowkey和endrowkey。但当数据量太大时还是会导致region进行split,只是概率稍微少点,不易造成热点。
比如create 'model:hbasetest',{NAME=>'cf'},SPLITS=>['10000','20000','30000']就是在命名空间model下创建了4个region的hbase表。预分区有多种方式,这里就不在赘述。
hbase相关操作如下:
1.统计有多少行
count 'model:hbasetest',INTERVAL => 5000
2.列出所有表名
list_namespace_tables 'model'
3.查看命名空间
list_namespace
4.创建命名空间
create_namespace 'model'
5.获取任意5条数据
scan 'model:hbasetest',{LIMIT=>5}
6.插入数据
put 'model:hbasetest','100','cf:level','6'
7.查询指定key的数据
get 'model:hbasetest','100'
8.删除数据某个key的所有数据
deleteall 'model:hbasetest','100'
9.删除表
disable 'model:hbasetest'
drop 'model:hbasetest'
三.springboot操作hbase
具体代码操作这里就不详述,具体见github:https://github.com/MyCreazy/springboot_opt_hbase.git
四.有用就关注一下码农独白,了解更多技术分享
最新文章
- 反人类的MyEclipse之-Javascript双引号自动补全
- 几种方法实现ajax请求内容时使用浏览器后退和前进功能
- 值得 Web 开发人员学习的20个 jQuery 实例教程
- Unity3D 系统宏
- eclipse使用
- kvm安装
- Python网络编程——处理套接字错误
- Hibernate---基础配置
- Https握手协议以及证书认证
- maya_help()验证编程过程中模块导入的情况
- mysql索引技巧
- luogu P4899 [IOI2018] werewolf 狼火
- Remove menucool tooltip trial version
- 在vue2.x项目中怎么引入Element UI
- B - 低阶入门膜法 - D-query (查询区间内有多少不同的数)
- .NetCore下使用Prometheus实现系统监控和警报 (五)进阶自定义收集指标 之 Counter
- delphi 属性 参数 新注释
- yii Nav:widget 配置参数encodeLabels
- mysql5.7 新增的json字段类型
- BERT总结:最先进的NLP预训练技术