配置HBase的伪分布跟完全分布集群

来源:互联网 发布:ubuntu安装tar.gz文件 编辑:程序博客网 时间:2024/04/19 20:22

HBase的伪分布  

下载地址https://mirrors.tuna.tsinghua.edu.cn/apache/hbase/stable/

修改配置文件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</value>

</property>

<property>

<name>dfs.replication</name>

<value>1</value>

</property>

 

修改文件$HBASE_HOME/conf/hbase-env.sh,修改内容如下

exportJAVA_HOME=/usr/local/jdk80 

exportHBASE_MANAGES_ZK=true

 

将hbase添加到环境变量中

export HBASE_HOME=/usr/hbase

export PATH=$HBASE_HOME/bin:$PATH

HBase的完全分布集群

 

配置环境变量,加上zookeeper的 /etc/profile

exportZOOKEEPER_HOME=/usr/zookeeper

exportPATH=PATH=$PATH:$ZOOKEEPER_HOME/bin

 

 

1.hbase的机群搭建过程(在原来的master上的hbase伪分布基础上进行搭建)

1.1 集群结构,主节点(hmaster)master,从节点(region server)slave1slave2

1.2 修改master上的hbase的几个文件

    (1)修改hbase-env.sh的最后一行export HBASE_MANAGES_ZK=false

         (2)修改hbase-site.xml文件的hbase.zookeeper.quorum的值为master, slave1, slave2

         (3)修改regionservers文件(存放的regionserverhostname),内容修改为slave1slave2

1.3 复制master中的hbase文件夹到slave1slave2        

    复制master中的/etc/profileslave1slave2中,在slave1slave2上执行source/etc/profile

1.4 启动集群

Ø  首先启动hadoop(在masterstart-all.sh),

Ø  然后启动zookeeper集群(分别在三台机器上zkServer.sh  start;可以使用zkServer.sh status查看zk的状态)。

Ø  最后在m1上启动hbase集群(start-hbase.sh)。

 

 

hbase拷贝到slave节点,且路径和master中的相同。

#cd /usr /hbase

scp -r ./*root@slave1:/usr/hbase

scp -r ./*root@slave2:/usr/hbase

 

创建表

>create 'users','user_id','address','info'

        (说明:users,有三个列族user_id,address,info)

得到表的描述

1. >describe 'users'  


创建表

1. >create 'users_tmp','user_id','address','info'  


删除表

1. >disable 'users_tmp'  

2.   

3. >drop 'users_tmp'  

添加记录

put ‘表名’,’行键(标识)’,’列族:字段’,’数值

示例:

[html] view plain copy

1. put 'users','xiaoming','info:age','24';  

2.   

3. put 'users','xiaoming','info:birthday','1987-06-17';  

4.   

5. put 'users','xiaoming','info:company','alibaba';  

6.   

7. put 'users','xiaoming','address:contry','china';  

8.   

9. put 'users','xiaoming','address:province','zhejiang';  

10.  

11.put 'users','xiaoming','address:city','hangzhou';  

12.  

13.put 'users','zhangyifei','info:birthday','1987-4-17';  

14.  

15.put 'users','zhangyifei','info:favorite','movie';  

16.  

17.put 'users','zhangyifei','info:company','alibaba';  

18.  

19.put 'users','zhangyifei','address:contry','china';  

20.  

21.put 'users','zhangyifei','address:province','guangdong';  

22.  

23.put 'users','zhangyifei','address:city','jieyang';  

24.  

25.put 'users','zhangyifei','address:town','xianqiao'  

获取一条记录

1.       取得一个id的所有数据

 

1.   >get 'users','xiaoming'  

2.       获取一个id,一个列族的所有数据

 

1. >get 'users','xiaoming','info'  

 

3.       获取一个id,一个列族中一个列的所有数据

1. >get 'users','xiaoming','info:age'  

 

更新记录

1. >put 'users','xiaoming','info:age' ,'29'  

2.   

3. >get 'users','xiaoming','info:age'  

4.   

5. >put 'users','xiaoming','info:age' ,'30'  

6.   

7. >get 'users','xiaoming','info:age'  


获取单元格数据的版本数据

1. >get 'users','xiaoming',{COLUMN=>'info:age',VERSIONS=>1}  

2.   

3. >get 'users','xiaoming',{COLUMN=>'info:age',VERSIONS=>2}  

4.   

5. >get 'users','xiaoming',{COLUMN=>'info:age',VERSIONS=>3}  


获取单元格数据的某个版本数据

1. 〉get 'users','xiaoming',{COLUMN=>'info:age',TIMESTAMP=>1364874937056}  


全表扫描

1. >scan 'users'  


 

删除xiaoming值的'info:age'字段

1. >delete 'users','xiaoming','info:age'  

2.   

3. >get 'users','xiaoming'  


删除整行

1. >deleteall 'users','xiaoming'  


统计表的行数

1. >count 'users'  


清空表

>truncate 'users'  

 

原创粉丝点击