一.查看Zookeeper信息

[hadoop@weekend01 ~]$zkServer.sh status

JMX enabled by default

Using config: /hadoop/zookeeper-3.4.6/bin/../conf/zoo.cfg

Mode: leader

[hadoop@weekend02 ~]$zkServer.sh status

JMX enabled by default

Using config: /hadoop/zookeeper-3.4.6/bin/../conf/zoo.cfg

Mode: follower

[hadoop@weekend03 ~]$ zkServer.sh status

JMX enabled by default

Using config: /hadoop/zookeeper-3.4.6/bin/../conf/zoo.cfg

Mode: follower

二.命名空间的操作

1.创建myns1命名空间

hbase(main):002:0> create_namespace 'myns1'

0 row(s) in 0.5840 seconds

2.在myns1命名空间上创建表mytable,并查看该命名空间中的表信息

hbase(main):003:0> create 'myns1','mytable'

0 row(s) in 0.3140 seconds

=> Hbase::Table - myns1

3.删除myns1命名空间

hbase(main):004:0> drop_namespace 'myns1'

0 row(s) in 0.1320 seconds

三.查看meta系统表信息

创建nyist表,并观察meta系统表前后的信息变化

创建前

hbase(main):005:0> scan 'hbase:meta'

ROW COLUMN+CELL

hbase:namespace,,146 column=info:regioninfo, timestamp=1463478332970, value={EN

3478330523.c515e6022 CODED => c515e602219215debe5c20797ef49598, NAME => 'hbase:

19215debe5c20797ef49 namespace,,1463478330523.c515e602219215debe5c20797ef49598.

598. ', STARTKEY => '', ENDKEY => ''} 。。。。。。。内容太多以下省略

创建表nyist

hbase(main):006:0> create 'nyist','info'

0 row(s) in 0.3900 seconds

=> Hbase::Table – nyist

创建后

hbase(main):007:0> scan 'hbase:meta'

。。。。。

nyist,,1464873740887 column=info:regioninfo, timestamp=1464873741163, value={EN

.743fd741807411c415e CODED => 743fd741807411c415e8186523994416, NAME => 'nyist,

8186523994416. ,1464873740887.743fd741807411c415e8186523994416.', STARTKE

Y => '', ENDKEY => ''}

nyist,,1464873740887 column=info:seqnumDuringOpen, timestamp=1464873741181, val

.743fd741807411c415e ue=\x00\x00\x00\x00\x00\x00\x00\x02

8186523994416.

nyist,,1464873740887 column=info:server, timestamp=1464873741181, value=slave2:

.743fd741807411c415e 16020

8186523994416.

nyist,,1464873740887 column=info:serverstartcode, timestamp=1464873741181, valu

.743fd741807411c415e e=1464869626765

8186523994416. 。。。。。

这是创建后多出来的信息。

四.查看HBase HDFS上目录,并给出HBase有哪些目录

第一种方法是用命令查看

[root@master ~]# hadoop fs -ls hdfs://192.168.186.134:9000/hbase

16/06/02 21:26:27 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

Found 8 items

drwxr-xr-x - root supergroup 0 2016-06-02 20:18 hdfs://192.168.134.131:9000/hbase/.tmp

drwxr-xr-x - root supergroup 0 2016-06-02 20:14 hdfs://192.168.134.131:9000/hbase/WALs

drwxr-xr-x - root supergroup 0 2016-06-02 21:19 hdfs://192.168.134.131:9000/hbase/archive

drwxr-xr-x - root supergroup 0 2016-05-30 20:29 hdfs://192.168.134.131:9000/hbase/corrupt

drwxr-xr-x - root supergroup 0 2016-06-02 21:17 hdfs://192.168.134.131:9000/hbase/data

-rw-r--r-- 2 root supergroup 42 2016-05-30 20:29 hdfs://192.168.134.131:9000/hbase/hbase.id

-rw-r--r-- 2 root supergroup 7 2016-05-30 20:29 hdfs://192.168.134.131:9000/hbase/hbase.version

drwxr-xr-x - root supergroup 0 2016-06-02 21:18 hdfs://192.168.134.131:9000/hbase/oldWALs

第二种使用了浏览器

http://192.168.186.134:50070

五、flush、compact、split操作

创建学生表'student',列族为'info'

hbase(main):013:0> create 'student','info'

0 row(s) in 0.3920 seconds

=> Hbase::Table - student

插入数据'info:name','lisi1'

hbase(main):019:0> put 'student','rk0001','info:name','lisi1'

0 row(s) in 0.1780 seconds

使用flush写入磁盘

hbase(main):020:0> flush 'student'

0 row(s) in 0.4990 seconds

插入数据'info:name','lisi2'

hbase(main):021:0> put 'student','rk0002','info:name','lisi2'

0 row(s) in 0.0070 seconds

使用flush写入磁盘

hbase(main):022:0> flush 'student'

0 row(s) in 0.2870 seconds

使用compact合并磁盘文件

hbase(main):023:0> compact 'student'

0 row(s) in 0.1340 seconds

使用split分离region

hbase(main):024:0> split 'region'

0 row(s) in 0.0670 seconds

关闭表'student'的region

hbase(main):036:0>close_region 'student,,1463730257094.ed1902898fb90cae03772240a505cf75.'

0 row(s) in 0.2370 seconds

查看表'student'数据

hbase(main):037:0> scan 'student'

ROW COLUMN+CELL

rk0001 column=info:name, timestamp=1464874655412, value=lisi1

rk0002 column=info:name, timestamp=1464874756191, value=lisi2

2 row(s) in 0.3200 seconds

启动region

hbase(main):038:0>assign 'student,,1463730257094.ed1902898fb90cae03772240a505cf75.'

0 row(s) in 0.1980 seconds

再查看表'student'数据

hbase(main):039:0> scan 'student'

ROW COLUMN+CELL

rk0001 column=info:name, timestamp=1464874655412, value=lisi1

rk0002 column=info:name, timestamp=1464874756191, value=lisi2

2 row(s) in 0.3200 seconds

删除表'student',观察hbase目录中是否有表'student'的文件信息

hbase(main):002:0> disable 'student'

0 row(s) in 1.3360 seconds

hbase(main):003:0> drop 'student'

0 row(s) in 0.2170 seconds

hbase(main):004:0> list

TABLE

hbase_student

my_data

myns1

new_scores

nyist

scores

user

7 row(s) in 0.0150 seconds

=> ["hbase_student", "my_data", "myns1", "new_scores", "nyist", "scores", "user"]

本次实验全部是命令的练习,和对HBase体系结构的理解,只要勤加练习,这部分不是问题,加上之前的数据库的基础知识,接受这部分内容还是没有问题的,另外还有就是在练习过程中敲错命令是常事,感觉还是有点不习惯,对这种数据存储结构和运作流程还需要课下多阅读官方文档,自己找一些书籍,多练习下才能对这部分掌握熟练。

help

list_namespace --显示命名空间

scan 'hbase:namespace' --显示命名空间

create_namespace 'myns1' --创建命名空间

list_namespace

scan 'hbase:namespace'

list_namespace_tables 'myns1' --显示命名空间中的表

create 'myns1:mytable'

list_namespace_tables 'myns1'

drop_namespace 'myns1' --删除命名空间

list_namespace

scan 'hbase:namespace'

四、HBase HDFS上目录

1.查看HBase的方法

两种:

a.浏览器 IP或主机名:50070

b.hadoop 命令

cd /hadoop/hadoop-2.6.0/bin/

./hadoop fs -ls hdfs://192.168.1.2:9000/hbase

2.HBase HDFS上目录分析

a、.tmp目录:代表的hbase的临时目录,当我们在对表进行删除和创建的时候,hbase会将表先move到.tmp目录,然后,进行操作。

b、WALs目录:预写日志文件,在0.94.x版本时叫.logs目录,0.98.x中就改版了,是RegionServer在处理数据插入和删除的过程中用来记录操作内容的一种日志

比如:向HBas

3.

hbase(main):002:0> list_namespace

NAMESPACE

default

hbase

2 row(s) in 0.5070 seconds

hbase(main):003:0> scan 'hbase:namespace'

ROW COLUMN+CELL

default column=info:d, timestamp=1462885868353, value=\x0A\x07defa

ult

hbase column=info:d, timestamp=1462885868394, value=\x0A\x05hbas

e

2 row(s) in 0.3690 seconds

hbase(main):004:0> create_namespace 'myns1'

0 row(s) in 0.3700 seconds

hbase(main):005:0> list_namespace

NAMESPACE

default

hbase

myns1

3 row(s) in 0.0510 seconds

hbase(main):006:0> list_namespace_tables 'myns1'

TABLE

0 row(s) in 0.0780 seconds

hbase(main):007:0> drop_namespace 'myns1'

0 row(s) in 0.3120 seconds

hbase(main):008:0> list_namespace

NAMESPACE

default

hbase

2 row(s) in 0.0320 seconds

hbase(main):009:0>

4.

hbase(main):010:0> create 'nuist','info'

0 row(s) in 2.7440 seconds

=> Hbase::Table - nuist

hbase(main):012:0> sacn 'nuist'

NoMethodError: undefined method `sacn' for #<Object:0x1d5ff9c>

hbase(main):013:0> disable 'nuist'

0 row(s) in 1.3630 seconds

hbase(main):014:0> drop 'nuist'

0 row(s) in 0.4870 seconds

hbase(main):001:0> create 'student','info'

0 row(s) in 4.6830 seconds

=> Hbase::Table - student

hbase(main):002:0> put 'student','rk0001','info:name','lisi'

0 row(s) in 0.2790 seconds

hbase(main):003:0> scan 'student'

ROW COLUMN+CELL

rk0001 column=info:name, timestamp=1463729729329, value=lisi

1 row(s) in 0.0580 seconds

hbase(main):004:0> flush 'student'

0 row(s) in 0.8910 seconds

hbase(main):005:0> put 'student','rk0002','info:name','lisi2'

0 row(s) in 0.0460 seconds

hbase(main):006:0> flush 'student'

0 row(s) in 0.3100 seconds

hbase(main):007:0> put 'student','rk0003','info:name','lisi3'

0 row(s) in 0.0240 seconds

hbase(main):008:0> flush 'student'

0 row(s) in 0.3850 seconds

hbase(main):009:0> compact 'student'

0 row(s) in 0.1420 seconds

hbase(main):010:0> split 'student'

0 row(s) in 0.0570 seconds

hbase(main):011:0> split 'student','rook0002'

0 row(s) in 0.0930 seconds

hbase(main):012:0> split 'student','rk0002'

0 row(s) in 0.1230 seconds

hbase(main):001:0> close_region 'student,,1463730257094.ed1902898fb90cae03772240a505cf75.'

0 row(s) in 0.2370 seconds

hbase(main):003:0> scan 'student'

ROW COLUMN+CELL

ERROR: org.apache.hadoop.hbase.NotServingRegionException: Region student,,1463730257094.ed1902898fb90cae03772240a505cf75. is not online on slave2,16020,1463728132224

hbase(main):007:0> assion 'student,,1463730257094.ed1902898fb90cae03772240a505cf75.'

NoMethodError: undefined method `assion' for #<Object:0x161412>

hbase(main):008:0> assign 'student,,1463730257094.ed1902898fb90cae03772240a505cf75.'

0 row(s) in 0.1980 seconds

hbase(main):009:0> scan 'student'

ROW COLUMN+CELL

rk0001 column=info:name, timestamp=1463729729329, value=lisi

rk0002 column=info:name, timestamp=1463729915233, value=lisi2

rk0003 column=info:name, timestamp=1463729938724, value=lisi3

3 row(s) in 0.4290 seconds

Hadoop体系结构管理的更多相关文章

  1. Hadoop体系结构杂谈

    hadoop体系结构杂谈 今天跟一个朋友在讨论hadoop体系架构,从当下流行的Hadoop+HDFS+MapReduce+Hbase+Pig+Hive+Spark+Storm开始一直讲到HDFS的底 ...

  2. Hadoop学习笔记(一)——Hadoop体系结构

    HDFS和MapReduce是Hadoop的两大核心. 整个Hadoop体系结构主要是通过HDFS来实现分布式存储的底层支持的,而且通过MapReduce来实现分布式并行任务处理的程序支持. 一.HD ...

  3. hadoop队列管理(指定queue跑程序)

    hadoop 升级到cdh5后,队列管理被取消,而是统一用资源池分配. hadoop2.0版本,Hadoop采用了平级队列组织方式,,管理员可将用户分到若干个扁平队列中,在每个队列中,可指定一个或几个 ...

  4. Hadoop权限管理

    1.Hadoop权限管理包括以下几个模块: (1) 用户分组管理.用于按组为单位组织管理,某个用户只能向固定分组中提交作业,只能使用固定分组中配置的资源:同时可以限制每个用户提交的作业数,使用的资源量 ...

  5. Hadoop基础-Hadoop快照管理

    Hadoop基础-Hadoop快照管理 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.快照的作用 快照可以迅速对文件(夹)进行备份,不产生新文件,使用差值存储,默认是禁用状态. ...

  6. Hadoop 权限管理(转)

    如下图,hadoop访问控制分为两级,其中ServiceLevel Authorization为系统级,用于控制是否可以访问指定的服务,例如用户/组是否可以向集群提交Job,它是最基础的访问控制,优先 ...

  7. Hadoop体系结构之 HDFS

    HDFS采用主从(Master/Slave)结构模型,一个HDFS集群是由一个NameNode和若干个DataNode组成的(在最新的Hadoop2.2版本已经实现多个NameNode的配置-这也是一 ...

  8. Hadoop体系结构

    在前面的博文中,我已经介绍过Hadoop的基本概念了(见博文初识Hadoop),今天来介绍一下Hadoop的体系结构. Hadoop的两大核心是HDFS和MapReduce,而整个Hadoop的体系结 ...

  9. Hadoop 权限管理

    Hadoop的权限管理同Linux的很像,有用户,用户组之分,同时Hadoop提供了权限管理命令,主要包括: chmod [-R] mode file … 只有文件的所有者或者超级用户才有权限改变文件 ...

随机推荐

  1. hadoop mapred和mapreduce包

    mapred包是老的1.0的map reduce api mapreduce包是新的2.0的map reduce api

  2. CH 5302 金字塔(区间DP)

    CH 5302 金字塔 \(solution:\) 很神奇的一道题目,当时看到还以为是一道字符串求回文子串的题目.但是数据范围很小,而且只知道回文串也不好做.但是我们观察可得,如果是深度搜索便利,那么 ...

  3. ubuntu gcc低版本过低引起错误

    错误内容: 正在读取软件包列表... 完成正在分析软件包的依赖关系树 正在读取状态信息... 完成 您可能需要运行“apt-get -f install”来纠正下列错误:下列软件包有未满足的依赖关系: ...

  4. 微信小程序引入外部js 方法

    步骤: 1.首先将外部js放在你指定的文件夹里(这都是废话...) 2.接下来 将该js文件中你要使用的方法给暴露出来 3.在您要使用的js中引入该js 4.使用暴露出来的方法 例子:使用md5加密 ...

  5. ios 短音效的使用

    1.通用短音效ID的获取 #import <Foundation/Foundation.h> @interface MJAudioTool : NSObject /** * 播放音效 * ...

  6. pyspark 日期格式

    1. 获取当前日期 from pyspark.sql.functions import current_date spark.range(3).withColumn('date',current_da ...

  7. Android隐藏Activity和图标

    今天发现4.0以后如果不写Activity只写BroadcastReceiver的话,这个广播接收器是不能运行的.经过查询,好像是HoneyComb之后添加了安全机制,规定必须运行一次Activity ...

  8. 「SHOI2007」「Codevs2341」 善意的投票(最小割

    2341 善意的投票 2007年省队选拔赛上海市队选拔赛 时间限制: 5 s 空间限制: 128000 KB 题目等级 : 大师 Master   题目描述 Description 幼儿园里有n个小朋 ...

  9. MongoDB 用户名密码登录

    Mongodb enable authentication MongoDB 默认直接连接,无须身份验证,如果当前机器可以公网访问,且不注意Mongodb 端口(默认 27017)的开放状态,那么Mon ...

  10. c/c++内存机制(一)(原)

    一:C语言中的内存机制 在C语言中,内存主要分为如下5个存储区: (1)栈(Stack):位于函数内的局部变量(包括函数实参),由编译器负责分配释放,函数结束,栈变量失效. (2)堆(Heap):由程 ...