Hbase的安装部署及基本语法
来源:互联网 发布:红叶知弦小说 编辑:程序博客网 时间:2024/06/10 11:40
Hbase的安装部署
1、前提条件
1)hadoop环境 启动相关的Hadoop进程
2)zookeeper环境 启动zookeeper
2、安装Hbase
解压tar -zxf hbase-0.98.6-cdh5.3.6.tar.gz -C /opt/modules/cdh
##配置hbase-env.sh
export HBASE_MANAGES_ZK=false //124行
export JAVA_HOME=/opt/modules/jdk1.7.0_67 //29行
##配置hbase-site.xml
<property>
<name>hbase.rootdir</name>
<value>hdfs://[hostname]:8020/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>[hostname]</value>
</property>
#### regionservers文件配置
[hostname]
3、启动Hbase
在${HOME_Hbase}目录下:
方式一:单独启动
bin/hbase-daemon.sh start master
bin/hbase-daemon.sh start regionserver
方式二:同时启动
bin/start-hbase.sh
停止时将start对应修改为stop即可
解决hbase shell中无法退格的问题:
xshell :
文件-属性-终端-键盘-两个都选择ASCII 127
CRT:
选项-会话选项-仿真-终端-选择linux
选项-会话选项-映射键--勾选上
基本语法
在${HOME_Hbase}目录下:
$ bin/hbase version //查看hbase的版本
$ bin/hbase shell //连接Hbase
连接hbase之后,Hbase的常用命令
如何创建命名空间:
> create_namespace '命名空间名' //创建命名空间
两种创建表的方式:
>create ‘命名空间:表名’,’列簇名1’,’列簇名2’,’.........’ //创建表格(默认版本数为1)
查看表结构
>desc ‘命名空间:表名’
>create '命名空间:表名’,{NAME=>'列簇名',VERSIONS=>版本个数},{.......} //创建表格(自定义版本数)
查看表结构
scan 扫描表
> scan '命名空间:表名' 扫描全表
> scan '命名空间:表名' ,{COLUMNS => '列簇:列名'} 扫描该表的该列簇下的所有数据
> scan '命名空间:表名' ,{COLUMNS => '列簇:列名'} 扫描该表的该列簇下该列名的所有数据
> scan '命名空间:表名' ,{COLUMNS => ['列簇:列名','列簇:列名' ]} 扫描多列数据
> scan '命名空间:表名' ,{COLUMNS => ‘列簇’,STARTROW=>'rowkey值'} 指定扫描的起始rowkey
> scan '命名空间:表名' ,{COLUMNS => ‘列簇’,STARTROW=>'rowkey值',STOPROW=>'rowkey值’} 给定扫描数据rowkey的范围,默认是左闭右开
> scan '命名空间:表名' ,{LIMIT=>n} 只扫描设定n(正整数)条数据
> scan '命名空间:表名' ,{COLUMNS => '列簇:列名', LIMIT=>n} 组合使用
get 获取数据
get获取的某条数据
scan获取的是一个范围内的数据
> get '命名空间:表名' ,'rowkey值' 获取某条数据的cell
> get '命名空间:表名' ,'rowkey值', {COLUMN => '列簇:列名'} 获取某条数据某个列的cell
>get '命名空间:表名', 'rowkey值', ['列簇:列名', '列簇:列名'] 获取指定列的cell
删除数据
删除命令并不是立即从hdfs上删除数据,删除命令只是对对应的这些cell打上了‘删除’标签
打上‘删除’标签的cell不能直接scan或get获取数据
在hbase进行大合并机制时才会彻底从hbase中删除
> delete '命名空间:表名','rowkey值' ,'列簇:列名' 删除某个cell内的所有的版本
> deleteall '命名空间:表名', 'rowkey值', '列簇:列名' 也看可以删除某条数据的某个cell所有版本
> deleteall '命名空间:表名', 'rowkey值' 删除整条数据
> truncate 'xxx' 清空一张表
version 版本
优点:版本就是保存了value值的多个历史记录,客户端可以根据需求获取历史记录
创建表时默认的版本数是1个 ,多个版本时scan或get时默认显示最新版本
>create '命名空间:表名’,{NAME=>'列簇名',VERSIONS=>版本个数},{.......} //创建表格(自定义版本数)
添加数据
>Put ‘命名空间:表名’,’rowkey值’,’列簇:列名’,’cell值’
> scan '命名空间:表名' 默认显示最新的值
> scan '命名空间:表名' , { VERSIONS=> n} 指定显示最新的n个cell的版本
> get '命名空间:表名',’rowkey值’',{COLUMN =>'列簇:列名', TIMESTAMP=>时间戳} //获取指定版本的cell的值
删除表
> disable '命名空间:表名' 先禁用
> drop '命名空间:表名' 再删除
> count '命名空间:表名' 计算某张表有多少行数据
- Hbase的安装部署及基本语法
- HBase介绍及安装部署
- HBase集群的安装部署
- Hbase的基本简介及安装、配置、使用(一)
- hbase安装及部署(hadoop2.7.4集群)
- hbase+python安装部署及操作
- hbase基本语法
- Hbase基本语法
- hbase 基本语法
- Hbase入门教程和分布式的安装部署
- hbase和zookeeper的安装和部署
- jade安装及基本语法使用
- HBASE安装部署过程
- HBase安装部署过程
- hbase安装部署
- nutch + hbase 安装部署
- HBase安装部署
- hbase 安装部署
- Centos下安装Nginx
- 【2017新疆网络赛】C Coconut
- Spring Cloud Zuul微服务网关的API限流
- HDU Number Sequence (KMP模板)
- 使用ajax完成python flask前端与后台数据的交互
- Hbase的安装部署及基本语法
- HDU 6201 树形DP
- JFinal上传文件时用getFile()方法报错
- Nginx配置详解
- XML的使用
- 谁知道vimrc中的这条横线是vimrc中的哪一条?看着好别扭
- C++单元测试(Unit Test)中Catch和Gmock的结合使用
- HDU 6194 后缀数组+lcp+rmq
- Java 通过Xml导出Excel文件,Java Excel 导出工具类,Java导出Excel工具类