转载请注明出处:http://blog.csdn.net/l1028386804/article/details/46447573
1.HBase(NoSQL)的数据模型
1.1 表(table)
存储管理数据的。
1.2 行键(row key)
类似于MySQL中的主键。
行键是HBase表天然自带的。1.3 列族(column family)
列的集合。
HBase中列族是需要在定义表时指定的,列是在插入记录时动态增加的。HBase表中的数据,每个列族单独一个文件。
1.4 时间戳(timestamp)
列(也称作标签、修饰符)的一个属性。
行键和列确定的单元格,可以存储多个数据,每个数据含有时间戳属性,数据具有版本特性。如果不指定时间戳或者版本,默认取最新的数据。
1.5 存储的数据都是字节数组。
1.6 表中的数据是按照行键的顺序物理存储的。
2.HBase的物理模型
2.1 HBase是适合海量数据(如20PB)的秒级简单查询的数据库。
2.2 HBase表中的记录,按照行键进行拆分, 拆分成一个个的region。
许多个region存储在region server(单独的物理机器)中的。这样,对表的操作转化为对多台region server的并行查询。
3.HBase的体系结构
3.1 HBase是主从式结构,HMaster、HRegionServer
4.HBase伪分布安装
4.1 解压缩、重命名、设置环境变量
4.2 修改$HBASE_HOME/conf/hbase-env.sh
修改内容如下:
export JAVA_HOME=/usr/local/jdkexport HBASE_MANAGES_ZK=true
4.3 修改$HBASE_HOME/conf/hbase-site.xml
修改内容如下:
<property><name>hbase.rootdir</name>
<value>hdfs://hadoop0:9000/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>hadoop0</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
4.4 (可选)文件regionservers的内容为hadoop0
4.5 启动hbase,执行命令start-hbase.sh
******启动hbase之前,确保hadoop是运行正常的,并且可以写入文件*******4.6 验证:
(1)执行jps,发现新增加了3个java进程,分别是HMaster、HRegionServer、HQuorumPeer
(2)使用浏览器访问http://hadoop0:60010