开发者学堂课程【HBase入门教程:HBase伪分布式、命令_4】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/397/detail/5070
HBase伪分布式、命令_4
内容介绍
一、创建、删除命令
二、HBase 数据模型
一、创建、删除命令
首先可以先用 list_namespace 查看,对应有两个分别为 default 和 hbase 。两个目录,hbase 创建的目的是为了创建 MySQL 的时候自身管理。
创建表之后的删除命令
hbase(main):018:0> create
‘tbl’,’cf’
0 row(s) in 0.1500 seconds
=> Hbase::Table - tbl
hbase(main):019:0> drop ‘tbl’
ERROR: Table tbl is enabled. Disable it first.
Here is some help for this command:
Drop the named table. Table must first be disabled;
hbase> drop ‘t1’
hbase> drop ‘nsl:t1’
hbase (main) :020:0> disable
disable disable_all disable_peer disable_table_replication
hbase (main) :020:0> disable ‘tbl’
0 row(s) in 1.2410 seconds
hbase (main) :021:0>list
TABLE
psn
tbl
0 row(s) in 0.0040 seconds
=>[“psn”,”tbl”]
hbase (main) :022:0>drop ‘tbl’
0 row(s) in 0.2140 seconds
hbase (main) :023:0>list
TABLE
psn
0 row(s) in 0.0080 seconds
=>[“psn”]
如果在 hbase 里面删除不了的话,就先进入然后再删除。现在已经成功构建了一个伪分布式,数据存在于计算机本身磁盘里。接下来进入磁盘查看一下,新开一个窗口
[root@node5 ~]# cd /home/hbase-0.98/conf/
[root@node5 conf]# vi hbase-site. xml
[root@node5 conf]# cd /tmp/hbase
[root@node5 hbase]# ls
archive data hbase.id hbase.version oldWALs WALs
[root@node5 hbase]# cd data/
[root@node5 data]# ls
default hbase
[root@node5 data]# cd default/
[root@node5 default]# ls
psn
[root@node5 default ]#cd psn/
[root@node5 psn]# ls
f7533337c84ff20f7f4ff6f93051f3ce
[root@node5 psn]# netstat -npl I grep java
tcp 0 0 : :ffff:192.168.183. 10:41501 : : :* LISTEN 1447/java
tcp 0 0 : :ffff:34366 : : :* LISTEN 1447/java
tcp 0 0 : :ffff:192.168.183. 10:50433 : : :* LISTEN 1447/java
tcp 0 0 : :ffff:2181 : : :* LISTEN 1447/java
tcp 0 0 : :ffff:60010 : : :* LISTEN 1447/java
[root@node5 psn ]# service iptables status
Iptables: irewall is not running.
访问一下这个窗口,输入 node5:60010,就能查看到相关数据
[root@node5 psn]# cd f7533337c84ff20f7f4f f6f93051f3ce/
[root@node5 f 7533337c84ff20f 7f4f f6f93051f3ce]# ls
cf1 cf2
[root@node5 f 7533337c84ff20f7f4f f6f93051f3ce]# cd cf
-bash: cd: cf: NO such file or directory
[root@node5 f 7533337c84 f20f7f4ff6f93051f3ce]# cd cf1
[root@node5 cf1]# clear (
清空一下)
[root@node5 cf1]# ls
hbase(main) :025:0> scan ‘psn’
ROW COLUMN+CELL
0001 column=cf1:name , times tamp= 1478662547816, value=lilei
0001 column=cf1:sex, times tamp= 1478662311059, value=boy
1 row(s) in 0.0200 seconds
hbase (main) :026:0> flush ‘psn’
0 row(s) in 0.1210 seconds
hbase (main) :027:0>
[root@node5 cf1]# ls
b11cb869b2dd4e20938fea946b70d32e
[root@node5 cf1]# hbase hfile --help
[root@node5 cf1]# hbase hfile -help
[root@node5 cf1]# hbase hfile -p -f b11cb869b2dd4e20938fea946b70d32e
2016.09.11:44:50,142 WARN [main] ut1l NativeCodeLoader: Unable to load native- hadoop library for your platform... using builtin-java classes where applicable
2016.09.11:44:50,599 INFO [main] Conf igurat ion . deprecation: fs . default . name is deprecated. Instead, use fs . defaultFS
2016.09.11:44:50,693 INFO [main] Configurat ion . deprecation: hadoop.native.lib is deprecated. Instead, use 1o . native.lib.available 1
2016.89.11:44:51,024 INFO [main] util. Chec ksumType: Chec ksum us ing org · apache · hadoop · ut il. PureJavaCrc32
2016.09.11.69:11:44:51,026 INFO [main] util ,ChecksumType: Checksum can use org . apache hadoop .util . PureJavaCrc32C
k: 0001/cf1 :name/ 1478662547816/Put/vlem V: lilei
K: 0601/cf1:sex/ 1478662311059/Put/venm V: boy
Scanned kv count ->2
二、HBase 数据模型
HRegion 是 HBase 中分布式存储和负载均衡的最小单元。最小单元就表示不同的 HRegion 可以分布在不同的 HRegion server 上。HRegion 由一个或者多个 Store 组成,每个 store保存一个 columns family 。每个 Strore 又由一个 memStore 和0至多 个 StoreFile 组成。如图: StoreFile 以 HFiN 格式保存在 HDFS 上。
[root@node5 cf1]# cd
[root@node5 f7533337c84ff20f7f4ff6f93051f3ce]# pwd
/tmp/hbase/data/def ault/psn/f7533337c84f20f7f4ff6f93051f3ce
[root@node5 f7533337c84ff20f7f4ff6f93051f3ce]# ls
cf1 cf2
[root@node5 f7533337c84ff20f7f4ff6f93051f3ce]# cd cf1
[ rootanode5 cf1]# ls
b11cb869b2dd4e20938fea946b70d32e