1.安装Hbase:
解压:tar-zxvf hbase-1.2.1-bin.tar.gz
重命名:mvhbase-1.2.1 hbase
2.配置环境变量
exportJAVA_HOME=/usr/local/software/jdk1.8.0_66
exportCLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
exportHBASE_HOME=/usr/local/software/hbase_1.2.1
exportPATH=.:$JAVA_HOME/bin:$HBASE_HOME/bin:$PATH
3.修改hbase/conf/hbase-env.sh配置文件
exportJAVA_HOME=/opt/jdk
exportHBASE_MANAGES_ZK=true #配置由hbase自己管理zookeeper
4.修改hbase/conf/hbase-site.xml配置文件,指定Hbase数据的存储位置:
file:///opt/hbase/data #或者hdfs://master1:8020/hbase
<property>
<name>hbase.rootdir</name>
<value>hdfs://master:9000/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>master</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
5.启动Hbase:start-hbase.sh
手动在从节点上单独启动HregionServer:
bin/hbase-daemon.sh start regionserver hbase-daemon.shstart master
6.验证启动,查看运行的Hbase进程:jps HMaster HregionServer QuorumPeerMain
7.WebUI: http://node1:16010/
集群配置:
1.修改hbase-env.sh使用外部zookeeper
exportHBASE_MANAGES_ZK=false
2. 修改hbase-site.xml
<property>
<name>hbase.rootdir</name>
<value>hdfs://master:9000/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>master,work01,work02</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/bigdata/hbase/zktmp</value>
</property>
<property>
<name>hbase.tmp.dir</name>
<value>/bigdata/hbase/tmp</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
3.把hadoop的core-site.xml和hdfs-site.xml考到hbase的conf目录下。
基本操作
建表:
create 'stu','cf1','cf2'
put 'stu', 'key1','cf1:name','luozhao'
put 'stu', 'key1','cf1:sex','man'
put 'stu', 'key1','cf2:age','24'
put 'stu', 'key1','cf2:adress','cqupt'
查看表中的所有数据:
hbase(main):003:0> scan 'stu'
ROW COLUMN+CELL
key1 column=cf1:name, timestamp=1509613019570, value=luozhao
key1 column=cf1:sex, timestamp=1509613498507, value=man
key1 column=cf2:adress, timestamp=1509613375543, value=cqupt
key1 column=cf2:age, timestamp=1509613370794, value=24
查看其中某一个Key的数据:
hbase(main):003:0> get 'stu','key1'
COLUMN CELL
cf1:name timestamp=1509613019570,value=luozhao
cf1:sex timestamp=1509613498507,value=man
cf2:adress timestamp=1509613375543,value=cqupt
cf2:age timestamp=1509613370794, value=24
phoenix安装
1.tar zxvfapache-phoenix-4.12.0-HBase-1.2-bin.tar.gz
2.export PNX_HOME=/home/app/phoenix4.12
export PATH=$PATH:$PNX_HOME/bin
3.进入到phoenix的安装目录把phoenix-4.12.0-HBase-1.2-server.jar拷贝到集群中每个节点( 主节点也要拷贝 )的 hbase 的 lib 目录下
4.重启hbase
5. 启动phoenix:
bin/sqlline.py master,work01,work02:2181进入命令行
#端口可以省略 sqlline.py master
退出: !quit注意,命令前有感叹号,或者 !q
6.执行自带脚本测试
psql.py master,work01,work02:2181WEB_STAT.sql
7.新建sql脚本:
-- create tableuser
create table ifnot exists user (id varchar primary key,account varchar ,passwd varchar);
-- insert data
upsert intouser(id, account, passwd) values('001', 'admin', 'admin');
upsert intouser(id, account, passwd) values('002', 'test', 'test');
upsert intouser(id, account, passwd) values('003', 'zx', 'zx');
-- query data
select * fromuser;
运行:psql.py master,work01,work02:2181 user.sql
希望和大家一起每天进步一点点!刚刚开始在公众号同步博客,请大家多多支持,如有不足之处多多包含,最后多多关注哈哈哈。