HBase 笔记2
Hadoop 服务启动顺序: zookeeper -》journalnode-》namenode -> zkfc -> datanode
HBase Master WEB控制台: <Master>:60010
如果RegionServer正常启动,但是连接不上Master自己又停止,而Master/Region Server之间网络连接,端口可见性正常,多半是/etc/hosts内映射不正确或/etc/sysconfig/network内hostname设置有问题
HBase自带一个命令行工具 hbase shell
进入hbase 命令行: $HBASE_HOME/bin/hbase shell
创建表: create 'test','cf' ====>创建表test,包含一个列族cf
查看库中有哪些表: list
查看表的属性:describe 'test'
建新列族: alter 'test','cf2' ====>新增列族cf2
插入数据:put 'test','row1','cf:name','jack' 向表test的行键为row1的行的cf列族下的name列插入数据,值为Jack
修改HBase保留的版本数:alter 'test',{NAME=>'cf',VERSION=>5} ===>设置表test的cf列族保留版本数为5,默认为1(即使单元格插入多个版本数据,也只会保留最新版本)
查看数据:get 'test','row2',{COLUMN=>'cf:name',VERSION=>3} ====>获取表test,row2行,cf列族下name列的最近3个版本数据
get 'test','row7','cf:name' ===》显示某个单元格的全部数据
遍历表的全部数据: scan '表名'
遍历表的部分数据:scan 'test',{STARTROW=>'row3'} ===>显示所有rowkey大于且等于row3的数据
scan 'test',{ENDROW=>'row4'} ====>显示所有rowkey小于row4的数据
删除数据: delete 'test','row4','cf:name' ====>删除表test中的row4行中的cf:name单元格数据
根据版本删除数据:delete 'test','row1','cf:name',ts ====>删除ts版本之前的所有版本数据(包含这个版本)
HBase删除数据并不是真正删除数据,而是放置了一个墓碑标记,导致这个版本+之前的版本都不可见
删除整行数据: deleteall 'test','row3' ===>删除test表的row3的整行数据
查看打上墓碑标记的数据:scan 'test',{RAW=>true,VERSION=>5} ===>查询最近的5个版本的数据,墓碑隐藏数据也显示
停用表: disable 'test'
删除表: 删除表之前需要停用表
drop 'test'
通用命令:
查看集群状态 status 'summary' | 'simple' | 'detailed'
查看HBase版本: version
查看当前用户: whoami
查看表操作信息: table_help
表操作:
list 列出所有的表名
alter 更改表/列族的定义
1)建立/修改列族
列族属性 BLOOMFILTER REPLICATION_SCOPE MIN_VERSIONS COMPRESSION TTL BLOCKSIZE IN_MEMORY IN_MEMORY_COMPACTION BLOCKCACHE KEEP_DELETED_CELLS DATA_BLOCK_ENCODING
CACHE_DATA_ON_WRITE CACHE_DATA_IN_L1 CACHE_BLOOMS_ON_WRITE CACHE_INDEX_ON_WRITE EVICT_BLOCKS_ON_CLOSE PREFETCH_BLOCKS_ON_OPEN ENCRYPTION ENCRYPTION_KEY IS_MOB_BYTES
MOB_THRESHOLD_BYTES
格式: alter '表名',NAME=>'列族',属性名1=>属性值1,....
2)修改/建立多个列族
格式:alter '表名',{NAME=>'列族',属性名1=>属性值1,....},{NAME=>'列族',属性名1=>属性值1,....}
3)删除列族:
格式: alter '表名',‘delete’=>‘列族名’
4)修改表级别的属性
格式:alter '表名',属性名1=>属性值1,......
5)设置表的配置
格式 : alter '表名',CONFIGURATION => {'配置名' => '配置值'}
alter '表名',{NAME=> '列族名',CONFIGURATION => {'配置名' => '配置值'}}
例: alter 'test',{NAME=>'cf1',CONFIGURATION => {'hbase.hstore.blockingStoreFiles' => '15'}}
6) 删除表级别的属性
格式:alter '表名',METHOD=>'table_att_unset',NAME=>'属性名'
7)同时执行多个命令
格式:alter '表名‘,command1,command2,command3,....

create 建立新表
格式:create '表名','列族1',’列族2‘,....
create '表名’,{NAME=>'列族1',属性名=>属性值},{NAME=>'列族2',属性名=>属性值},....
alter_status 查看表的各个Region的更新状况
alter_async 异步更新表
格式:alter_async '表名',参数列表
describe 输出表的描述信息
格式:describe '表名‘ 或 desc '表名'
dsiable 停用指定表
格式:disable '表名'
disable_all 使用正则表达式来停用多个表
格式:disable_all '正则表达式'
is_disabled 检测指定表是否被停用
格式: is_disabled ’表名‘
drop 删除指定表
格式 drop '表名'
drop_all 通过正则表达式删除多个表
格式:drop_all 正则表达式
enable 启动指定表
格式:enable '表名'
enable_all 通过正则表达式启动指定表
格式:enable_all '正则表达式'
is_enabled 判断表是否启用
格式: is_enabled '表名'
exists 判断表是否存在
格式:exists ’表名‘
show_filters 列出所有过滤器
get_table 把表名转换成一个对象
格式: 变量 = get_table '表名'
locate_region 定位传入的行键对应的行在哪个Region里面
格式:locate_region '表名',’行键‘
数据操作:
scan 按照字典排序遍历表的数据
格式:scan '表名'
scan '表名',{COLUMNS => ['列1 ',....]} 遍历指定列
scan ‘表名' {STARTROW => '起始行键',END_ROW =》 ’结束行键‘}
scan '表名',{LIMIT => 行数量} 指定返回的行数量
scan '表名',{TIMERANGE => [最小时间戳,最大时间戳]} ===》包含最小时间戳,最大不包含
scan '表名',{VERSIONS => 版本数} 显示多个版本值
scan '表名',{RAW =》 true ,VERSIONS => 版本数} 显示原始单元格记录
scan '表名',{FILTER => '过滤器'}
get 通过行键获取某行记录
格式: get '表名',’行键‘
count 计算表的行数
格式: count ’表名‘
1)指定计算步长
格式:count '表名',INTERVAL => 行数计算步长
2)指定缓存加速计算过程
格式: count '表名',cache => 缓存条数
INTERVAL 和CACHE可以同时使用
delete 删除某列数据
格式:delete ’表名‘,’行键‘,’列名‘ 【,时间戳】
deleteall 删除整行数据
格式:deleteall ’表名‘ ,’行键‘
deleteall '表名',’行键‘,‘列名’
deleteall '表名',‘行键’,‘列明’,时间戳
incr 为计数器单元格的值加一,若单元格不存在则创建
格式: incr '表名',‘行键’,‘列名’【,加减值】
put 新增记录 or 设置属性
格式:put '表名',‘行键’,‘列名’,‘值’【,时间戳】
通过查询hbase:meta获取某个region的信息,如服务器的标识码

HBase 笔记2的更多相关文章
- HBase笔记:对HBase原理的简单理解
早些时候学习hadoop的技术,我一直对里面两项技术倍感困惑,一个是zookeeper,一个就是Hbase了.现在有机会专职做大数据相关的项目,终于看到了HBase实战的项目,也因此有机会搞懂Hbas ...
- Hbase笔记——RowKey设计
一).什么情况下使用Hbase 1)传统数据库无法承载高速插入.大量读取. 2)Hbase适合海量,但同时也是简单的操作. 3)成熟的数据分析主题,查询模式确立不轻易改变. 二).现实场景 1.电商浏 ...
- HBase笔记--自定义filter
自定义filter需要继承的类:FilterBase 类里面的方法调用顺序 方法名 作用 1 boolean filterRowKey(Cell cell) 根据row key过滤row.如果需要 ...
- HBase笔记--filter的使用
HBASE过滤器介绍: 所有的过滤器都在服务端生效,叫做谓语下推(predicate push down),这样可以保证被过滤掉的数据不会被传送到客户端. 注意: 基于字符串的比较器,如 ...
- HBase笔记--编程实战
HBase总结:http://blog.csdn.net/lifuxiangcaohui/article/details/39997205 (very good) Spark使用Java读取hbas ...
- HBase笔记--安装及启动过程中的问题
1.使用hbase shell的时候运行命令执行失败 例如:在shell下执行 status,失败. 可能的原因:节点之间的时间差距过大 解决方法调整两个节点的时间,使二者一致,这里用了个比较笨的方法 ...
- HBase笔记6 过滤器
过滤器 过滤器是GET或者SCAN时过滤结果用的,相当于SQL的where语句 HBase中的过滤器创建后会被序列化,然后分发到各个region server中,region server会还原过滤器 ...
- HBase笔记5(诊断)
阻塞急救: RegionServer内存设置太小: 解决方案: 设置Region Server的内存要在conf/hbase-env.sh中添加export HBASE_REGIONSERVER_OP ...
- HBase笔记4(调优)
Master/Region Server调优 JVM调优 默认的RegionServer内存是1G,而Memstore默认占40%,即400M,实在是太小了,可以通过HBASE_HEAPSIZE参数修 ...
- HBase 笔记3
数据模型 Namespace 表命名空间: 多个表分到一个组进行统一的管理,需要用到表命名空间 表命名空间主要是对表分组,对不同组进行不同环境设定,如配额管理 安全管理 保留表空间: HBase中有 ...
随机推荐
- 【C语言】 重拾
[C语言] 因为以前学过C语言,只不过太长时间不用,已经忘得差不多了… 所以这篇文章的性质是把C语言中一些对于现在的我不是很符合预期的知识点记录一下. ■ HelloWorld程序 HelloWorl ...
- Linux下printf、fprintf、sprintf的区别
(1)fprintf() int fprintf( FILE *stream, const char *format, ... ); 用于文件操作,根据指定的format(格式)发送信息(参数)到 ...
- NaviSoft31.源码开发完成
NaviSoft是作者一人开发完成,从之前的1.0版本,到现在的3.1版本.历经2年时间,开发完成 下面是NaviSoft的源码结构 加QQ群了解更多信息
- JAVA中有一个特殊的类: Object。它是JAVA体系中所有类的父类(直接父类或者间接父类)。
接口往往被我们定义成一类XX的东西. 接口实际上是定义一个规范.标准. ① 通过接口可以实现不同层次.不同体系对象的共同属性: 通过接口实现write once as anywhere. 以JA ...
- @Resource注入为null
UserController中userService为null只有一个原因, 那就是你所使用的UserController对象没有被IoC容器所管理,你使用的对象是自己new出来的, 而不由sprin ...
- linux 安装svn客户端
安装命令:yum install -y subversion 客户端使用命令: svn help 帮助命令 svn checkout --help 子帮助命令
- laravel5.8笔记二:部署
部署项目之前需要知道的几件事 1.有几个模块(admin,index,wap,api) 2.有几个数据库(mysql1,mysql2,mysql3) 3.有那些缓存(redis1,redis2,red ...
- 入围T00ls 2018风云人物
今天早上打开T00ls,发现成功入围了<T00ls第六届(2018)年度人物风云榜>,共34名年度人物,每个id可投10票,34选10. T00ls是当前国内为数不多的民间网络信息安全研究 ...
- dbeaver导出MySQL的架构提示"IO Error: Utility 'mysqldump.exe' not found in client home 'MySQL Connector/Net"解决方案
今天想到用dbeaver的Dump dabase功能导出MySQL的架构脚本,到最后一步生成的时候提示以下错误信息: IO Error: Utility 'mysqldump.exe' not fou ...
- phpstorm 找到文件修改历史
对着需要查看修改历史的文件右单击: