HBASE 常用语法和phoenix 配置

hadoop服务器监控网址

   

hadoop常用命令

使用账号从ssh登录,进入HADOOP_HOME目录。

hadoop安装目录:/usr/lib/hadoop/

启动Hadoop     

         执行sh bin/start-all.sh

        

       

关闭Hadoop

·        执行sh bin/stop-all.sh

 

1、查看指定目录下内容

hadoop dfs –ls [文件目录]

eg: hadoop dfs –ls /user/wangkai.pt

2、打开某个已存在文件

hadoop dfs –cat [file_path]

eg:hadoop dfs -cat /user/wangkai.pt/data.txt

3、将本地文件存储至hadoop

hadoop fs –put [本地地址] [hadoop目录]

hadoop fs –put /home/t/file.txt /user/t   

(file.txt是文件名)

4、将本地文件夹存储至hadoop

hadoop fs –put [本地目录] [hadoop目录] 
hadoop fs –put /home/t/dir_name /user/t

(dir_name是文件夹名)

5、将hadoop上某个文件down至本地已有目录下

hadoop fs -get [文件目录] [本地目录]

hadoop fs –get /user/t/ok.txt /home/t

6、删除hadoop上指定文件

hadoop fs –rm [文件地址]

hadoop fs –rm /user/t/ok.txt

7、删除hadoop上指定文件夹(包含子目录等)

hadoop fs –rm [目录地址]

hadoop fs –rmr /user/t

8、在hadoop指定目录内创建新目录

hadoop fs –mkdir /user/t

9、在hadoop指定目录下新建一个空文件

使用touchz命令:

hadoop  fs  -touchz /user/new.txt

10、将hadoop上某个文件重命名

使用mv命令:

hadoop  fs  –mv /user/test.txt  /user/ok.txt   (将test.txt重命名为ok.txt

11、将hadoop指定目录下所有内容保存为一个文件,同时down至本地

hadoop dfs –getmerge /user /home/t

12、将正在运行的hadoop作业kill

hadoop job –kill  [job-id]

Zookeeper常用命令

ZooKeeper服务命令:

     在准备好相应的配置之后,可以直接通过zkServer.sh 这个脚本进行服务的相关操作

  • 1. 启动ZK服务:       sh bin/zkServer.sh start
  • 2. 查看ZK服务状态: sh bin/zkServer.sh status
  • 3. 停止ZK服务:       sh bin/zkServer.sh stop
  • 4. 重启ZK服务:       sh bin/zkServer.sh restart

ZooKeeper进行访问,数据创建,数据修改等操作使用 zkCli.sh-server 127.0.0.1:2181 连接到 ZooKeeper 服务,连接成功后,系统会输出 ZooKeeper 的相关环境以及配置信息。

命令行工具的一些简单操作如下:

  • 1. 显示根目录下、文件: ls / 使用 ls 命令来查看当前 ZooKeeper 中所包含的内容
  • 2. 显示根目录下、文件: ls2 / 查看当前节点数据并能看到更新次数等数据
  • 3. 创建文件,并设置初始内容: create /zk "test" 创建一个新的 znode节点“ zk ”以及与它关联的字符串
  • 4. 获取文件内容: get /zk 确认 znode 是否包含我们所创建的字符串
  • 5. 修改文件内容: set /zk "zkbak" zk 所关联的字符串进行设置
  • 6. 删除文件: delete /zk 将刚才创建的 znode 删除
  • 7. 退出客户端: quit
  • 8. 帮助命令: help

ZooKeeper 常用四字命令

      ZooKeeper 支持某些特定的四字命令字母与其的交互。它们大多是查询命令,用来获取 ZooKeeper 服务的当前状态及相关信息。用户在客户端可以通过 telnet nc ZooKeeper 提交相应的命令

  • 1. 可以通过命令:echo stat|nc 127.0.0.1 2181 来查看哪个节点被选择作为follower或者leader
  • 2. 使用echo ruok|nc 127.0.0.1 2181 测试是否启动了该Server,若回复imok表示已经启动。
  • 3. echo dump| nc 127.0.0.1 2181 ,列出未经处理的会话和临时节点。
  • 4. echo kill | nc 127.0.0.1 2181 ,关掉server
  • 5. echo conf | nc 127.0.0.1 2181 ,输出相关服务配置的详细信息。
  • 6. echo cons | nc 127.0.0.1 2181 ,列出所有连接到服务器的客户端的完全的连接 / 会话的详细信息。
  • 7. echo envi |nc 127.0.0.1 2181 ,输出关于服务环境的详细信息(区别于 conf 命令)。
  • 8. echo reqs | nc 127.0.0.1 2181 ,列出未经处理的请求。
  • 9. echo wchs | nc 127.0.0.1 2181 ,列出服务器 watch 的详细信息。
  • 10. echo wchc | nc 127.0.0.1 2181 ,通过 session 列出服务器 watch 的详细信息,它的输出是一个与 watch 相关的会话的列表。
  • 11. echo wchp | nc 127.0.0.1 2181 ,通过路径列出服务器 watch 的详细信息。它输出一个与 session 相关的路径。

 

 

 

HBASEshell 常用命令

 (1)建立一个表scores,有两个列族grad和courese  

hbase(main):001:0> create ‘scores','grade', ‘course

   可以使用list命令来查看当前HBase里有哪些表。使用describe命令来查看表结构。(记得所有的表明、列名都需要加上引号) 

(2)按设计的表结构插入值

put ‘scores','Tom','grade:','5′
put ‘scores','Tom','course:math','97′
put ‘scores','Tom','course:art','87′
put ‘scores','Jim','grade','4′
put ‘scores','Jim','course:','89′
put ‘scores','Jim','course:','80′ 

  这样表结构就起来了,其实比较自由,列族里边可以自由添加子列很方便。如果列族下没有子列,加不加冒号都是可以的。 
put命令比较简单,只有这一种用法: 
hbase> put ‘t1′, ‘r1′, ‘c1′, ‘value', ts1 
t1指表,r1指行键名,c1指列名,value指单元格值。ts1指时间戳,一般都省略掉了。

(3)根据键值查询数据

get ‘scores','Jim'
get ‘scores','Jim','grade' 

可能你就发现规律了,HBase的shell操作,一个大概顺序就是操作关键词后跟表名,行名,列名这样的一个顺序,如果有其他条件再用花括号加上。 
get有用法如下: 

hbase> get ‘t1′, ‘r1′
hbase> get ‘t1′, ‘r1′, {TIMERANGE => [ts1, ts2]}
hbase> get ‘t1′, ‘r1′, {COLUMN => ‘c1′}
hbase> get ‘t1′, ‘r1′, {COLUMN => ['c1', 'c2', 'c3']}
hbase> get ‘t1′, ‘r1′, {COLUMN => ‘c1′, TIMESTAMP => ts1}
hbase> get ‘t1′, ‘r1′, {COLUMN => ‘c1′, TIMERANGE => [ts1, ts2], VERSIONS => 4}
hbase> get ‘t1′, ‘r1′, {COLUMN => ‘c1′, TIMESTAMP => ts1, VERSIONS => 4}
hbase> get ‘t1′, ‘r1′, ‘c1′
hbase> get ‘t1′, ‘r1′, ‘c1′, ‘c2′
hbase> get ‘t1′, ‘r1′, ['c1', 'c2']

(4)扫描所有数据 
     指定一些修饰词:TIMERANGE, FILTER, LIMIT,STARTROW, STOPROW, TIMESTAMP, MAXLENGTH,or COLUMNS。没任何修饰词,就是上边例句,就会显示所有数据行。 
   代码如下: 

hbase> scan ‘.META.'
hbase> scan ‘.META.', {COLUMNS => ‘info:regioninfo'}
hbase> scan ‘t1′, {COLUMNS => ['c1', 'c2'], LIMIT => 10, STARTROW => ‘xyz'}
hbase> scan ‘t1′, {COLUMNS => ‘c1′, TIMERANGE => [1303668804, 1303668904]}
hbase> scan ‘t1′, {FILTER => “(PrefixFilter (‘row2′) AND (QualifierFilter (>=, ‘binary:xyz'))) AND (TimestampsFilter ( 123, 456))”}
hbase> scan ‘t1′, {FILTER => org.apache.hadoop.hbase.filter.ColumnPaginationFilter.new(1, 0)}

(5)删除指定数据 

  代码如下: 

delete ‘scores','Jim','grade'
delete ‘scores','Jim' 

删除数据命令也没太多变化,只有一个: 

hbase> delete ‘t1′, ‘r1′,‘c1′, ts1 
另外有一个deleteall命令,可以进行整行的范围的删除操作,慎用! 
如果需要进行全表删除操作,就使用truncate命令,其实没有直接的全表删除命令,这个命令也是disable,drop,create三个命令组合出来的。 
(6)修改表结构 

  代码如下: 

disable ‘scores'
alter ‘scores',NAME=>'info'
enable ‘scores' 

alter命令使用如下(如果无法成功的版本,需要先通用表disable): 

a、改变或添加一个列族: 

hbase> alter ‘t1′, NAME => ‘f1′, VERSIONS => 5 

b、删除一个列族: 

  代码如下: 

hbase> alter ‘t1′, NAME => ‘f1′, METHOD => ‘delete'
hbase> alter ‘t1′, ‘delete' => ‘f1′ 

 c、也可以修改表属性如MAX_FILESIZE 

MEMSTORE_FLUSHSIZE, READONLY,和 DEFERRED_LOG_FLUSH:
hbase> alter ‘t1′, METHOD => ‘table_att', MAX_FILESIZE => '134217728′ 

d、可以添加一个表协同处理器 

hbase> alter ‘t1′, METHOD => ‘table_att', ‘coprocessor'=> ‘hdfs:///foo.jar|com.foo.FooRegionObserver|1001|arg1=1,arg2=2′ 

一个表上可以配置多个协同处理器,一个序列会自动增长进行标识。加载协同处理器(可以说是过滤程序)需要符合以下规则: 
[coprocessor jar file location] | class name | [priority] | [arguments] 
e、移除coprocessor如下: 
hbase> alter ‘t1′, METHOD => ‘table_att_unset', NAME =>‘MAX_FILESIZE' 
hbase> alter ‘t1′, METHOD => ‘table_att_unset', NAME =>‘coprocessor$1′ 
f、可以一次执行多个alter命令: 

hbase> alter ‘t1′, {NAME => ‘f1′}, {NAME => ‘f2′, METHOD => ‘delete'} 

(7)统计行数: 

  代码如下: 

hbase> count ‘t1
hbase> count ‘t1′, INTERVAL => 100000
hbase> count ‘t1′, CACHE => 1000
hbase> count ‘t1′, INTERVAL => 10, CACHE => 1000 

  count一般会比较耗时,使用mapreduce进行统计,统计结果会缓存,默认是10行。统计间隔默认的是1000行(INTERVAL)。 

(8)disable 和 enable 操作 

  很多操作需要先暂停表的可用性,比如上边说的alter操作,删除表也需要这个操作。disable_all和enable_all能够操作更多的表。 

(9)表的删除 
  先停止表的可使用性,然后执行删除命令。 
  drop ‘t1′ 
以上是一些常用命令详解,具体的所有hbase的shell命令如下,分了几个命令群,看英文是可以看出大概用处的,详细的用法使用help “cmd” 进行了解。 
4. hbase shell脚本 

既然是shell命令,当然也可以把所有的hbase shell命令写入到一个文件内,想linux shell脚本程序那样去顺序的执行所有命令。如同写linux shell,把所有hbase shell命令书写在一个文件内,然后执行如下命令即可: 

 代码如下:


$ hbase shell test.hbaseshell 

方便好用。 

 

PHOENIX 配置

 

 

配置PHOENIX步骤(本次hbase版本1.1.2):1、下载hbase对应的安装包 2、tar -zxvf -C /usr/local/phoenix/ apache-phoenix-4.8.2-HBase-1.1-bin.tar.gz  3、配置环境变量vi /etc/profile 添加export PHOENIX_HOME=/usr/local/phoenix/apache-phoenix-4.8.2-HBase-1.1-bin export PHOENIX_CLASSPATH=$PHOENIX_HOMEb export PATH=$PATH:$PHOENIX_HOME/bin 4、拷贝jar包到hbase  cp phoenix-4.8.2-HBase-1.1-server.jar  /usr/local/hbase/hbase-1.1.10b 5、启动sqlline.py master,slave1,slave2:2181  sqlline.py + 主机名 + zookeeper端口号 2181

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值