HBase安装过程
1).上传,解压,重命名,修改环境变量/etc/profile
2).修改 hbase-env.sh 文件
export JAVA_HOME=/usr/java/jdk1.7.0_27 //Java 安装路径
export HBASE_CLASSPATH=/hadoop/hbase-0.96.2 //HBase 类路径
export HBASE_MANAGES_ZK=true //由 HBase 自己负责启动和关闭 Zookeeper
3).编辑 hbase-site.xml 文件
<property>
<name>hbase.rootdir</name>
//hbase 中数据存放的HDFS根路径
<value>hdfs://hadoop01:9000/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
//hbase 是否安装在分布式环境中
<value>true</value>
</property>
<property>
//指定 Hbase 的 ZK 节点位置,由于上述已指定 Hbase 自己管理 ZK
<name>hbase.zookeeper.quorum</name>
<value>hadoop01</value>
</property>
<property>
<name>dfs.replication</name>
//伪分布环境,副本数为 1
<value>1</value>
</property>
4).(可选)文件regionservers
//这个文件指定了 regionservers,即子节点所在的位置
hadoop01(即本机主机名或IP)
5).启动 HBase
******启动 hbase 之前,确保 hadoop 是运行正常的,并且可以写入文件*******
启动脚本:start-hbase.sh
验证方式:(1)执行 jps,发现新增加了 3 个 java 进程,分别是 HMaster、HRegionServer、HQuorumPeer
(2)使用浏览器访问 http://hadoop01:60010
6).shell 操作
命令:hbase shell 进入 shell 操作的终端。
***对于在使用 SecureCRT 在 shell 终端无法使用删除键的问题:在 secureCRT 中,点击【选项】【会话选项】【终端】【仿真】,右边的终端选择 linux,在 hbase shell 中如输入出错,按住 Ctrl+删除键 即可删除!
7).基本操作
创建表 Create
--Create '表名称','列族1','列族2','列族N'
--【注意结尾处没有;】【RowKey 是天然自带的,不用手动指定】
查看表信息 List 和 Describe
插入数据 Put
--Put '表名','行键Row Key','列族:列','列值'
put 'users','xiaoming','user_id:id','' --批量插入,每行结尾木有;
put 'users','xiaoming','info:age',''
put 'users','xiaoming','info:birthday','1987-06-17'
put 'users','xiaoming','info:company','alibaba'
put 'users','xiaoming','address:contry','china'
put 'users','xiaoming','address:province','zhejiang'
put 'users','xiaoming','address:city','hangzhou'
put 'users','zhangyifei','info:birthday','1987-4-17'
put 'users','zhangyifei','info:favorite','movie'
put 'users','zhangyifei','info:company','alibaba'
put 'users','zhangyifei','address:contry','china'
put 'users','zhangyifei','address:province','guangdong'
put 'users','zhangyifei','address:city','jieyang'
put 'users','zhangyifei','address:town','xianqiao'
全表扫描 Scan
两个RowKey:‘xiaoming’和'zhangyifeng'对应两行记录
查询一个 RowKey 中所有数据(即一行数据) Get
查询一个RowKey中一个列族的所有数据
查询一个RowKey的列族中一个列的所有数据
同时查询两个列族的所有数据(两种方法)
注意:第二种方法中的COLUMN关键字大小写敏感
同时查询两个列族中两个列的所有数据(两种方法)
更新表中的数据 Put
由于hdfs只支持写入和追加操作,所以hbase对于修改数据,只能进行准加覆盖操作
获取单元格Cell数据的时间戳
对于操作VERSIONS=>2也只返回一行数据,这是由于在创建表时,没有显示指定VERSIONS版本个数,则会设置为默认值1。通过命令describe ‘users’可以发现VERSION=>’1’。
通过TIMESTAMP读取数据
删除某行数据 Delete
deleteall 'users','xiaoming'
删除某一列的数据 Delete
这里和SQL有区别:SQL中删除某一列的话整行数据都会被删除。而HBase则不然,它可以删除指定的列而不影响其它列的数据
修改表的结构:删除某一列族 Alter
全表扫描 Scan
红圈表示此表中现在只有两条记录,因为只有两个RowKey: ’xiaoming’ + ‘zhangyifei’
这时我们发现,表中的”user_id”这个列族已经被删掉,并且它对应的值‘007’也一并被删除---这是DDL的操作。
统计表的行数 Count
清空表的数据 Truncat
这个指令实际包含三个操作:disable + drop + create
判断一个表是否存在 exists
exit是退出HBase shell,切记
判断表是否enable或disable is_enabled 'users'
删除表Drop TableName之前,必须先使其disable:disable TableName 不然报错
HBase安装过程的更多相关文章
- HBase 安装过程记录
http://blog.csdn.net/chenxingzhen001/article/details/7756129 环境: 操作系统Centos 6.4 32-bit 三台节点 ip ...
- HBase - 安装过程中的问题
问题1:启动时start-hbase.sh 报 权限不够 原因:在移动文件时,使用root用户在/usr/local下创建的hbase,所以hbase文件夹的使用者为root,其他人没权限 解决方案: ...
- hbase 1.1.7在centor6.5安装过程
1.自己安装的最新版一直没成功,换成了1.1.7稳定版的.中间遇到的问题记录下 1) jdk 用的1.7版本的,安装过程省略. 2)下载hbase zip包:https://mirrors.tuna ...
- HBASE的安装过程及运行HBASE程序的需要配置的内容
HBase安装配置 ①下载压缩包(选择与自己安装的Hadoop版本的兼容版本,见后面附录) 官网下载地址:https://mirrors.tuna.tsinghua.edu.cn/apache/hba ...
- hbase安装
HBase的安装 本篇介绍两种HBase的安装方式:本地安装方式和伪分布式安装方式. 安装的前提条件是已经成功安装了hadoop,而且hadoop的版本要和hbase的版本相匹配. 我将要安装的hba ...
- Hadoop第12周练习—HBase安装部署
1 1.1 1.2 :安装HBase 2.1 内容 运行环境说明 1.1 硬软件环境 线程,主频2.2G,6G内存 l 虚拟软件:VMware® Workstation 9.0.0 build-8 ...
- Hbase总结(一)-hbase命令,hbase安装,与Hive的区别,与传统数据库的区别,Hbase数据模型
Hbase总结(一)-hbase命令 下面我们看看HBase Shell的一些基本操作命令,我列出了几个常用的HBase Shell命令,如下: 名称 命令表达式 创建表 create '表名称', ...
- HBase安装inAction
在安装Hbase之前,需要有hadoop的运行环境,关于hadoop的安装过程,请查看我之前的blog:hadoop安装笔记:或者另一个博主的超详细文章http://weixiaolu.iteye.c ...
- hbase总结(二)-hbase安装
本篇介绍两种HBase的安装方式:本地安装方式和伪分布式安装方式. 安装的前提条件是已经安装成功了hadoop,并且hadoop的版本号要和hbase的版本号相匹配. 我将要安装的hbase是hbas ...
随机推荐
- Java 数组详解 - 用法、遍历、排序、实用API
数组,就是相同数据类型的元素按一定顺序排列的集合,就是把有限个类型相同的变量用一个名字命名,然后用编号区分他们的变量的集合,这个名字称为数组名,编号称为下标. 组成数组的各个变量称为数组的分量,也称为 ...
- CodeForces 732C Sanatorium
C. Sanatorium time limit per test 1 second memory limit per test 256 megabytes input standard input ...
- Code Forces 645B Mischievous Mess Makers
It is a balmy spring afternoon, and Farmer John's n cows are ruminating about link-cut cacti in thei ...
- Servlet------>jsp自定义标签3(不显示余下jsp内容)
2.自定义标签控制,jsp页面余下标签是否继续执行 EndTag.java package tag; import javax.servlet.jsp.JspException; import jav ...
- jsonarray 循环
JSONArray groupList = JSON.parseArray(st1); for (int i=0;i<groupList.size();i++){ JSONObject json ...
- (转)聊聊Servlet、Struts1、Struts2以及SpringMvc中的线程安全
前言 很多初学者,甚至是工作1-3年的小伙伴们都可能弄不明白?servlet Struts1 Struts2 springmvc 哪些是单例,哪些是多例,哪些是线程安全? 在谈这个话题之前,我们先了解 ...
- FreeMarker 的使用方法
1.FreeMarker 概述 FreeMarker 是一个用Java语言编写的模板引擎,使用模板来生成文本输出;主要用于做静态页面或页面展示; 2.FreeMarker 使用 // 导入jar包: ...
- nodejs获取参数的方法
1 获取get的querystring参数 GET /test?name=fred&tel=0926xxx572 let aa = req.param("name"); l ...
- Ubuntu apt-get更换阿里云源
sudo vim /etc/apt/sources.list deb http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe ...
- [笔记] Ubuntu 18.04安装Docker CE及nvidia-docker2流程
Docker的好处之一,就是在Container里面可以随意瞎搞,不用担心弄崩Host的环境. 而nvidia-docker2的好处是NVidia帮你配好了Host和Container之间的CUDA相 ...