基本知识:
1.hbase是一种基于列存储的数据库,也就是说它的一列的数据是存储在一个文件里面的,而传统的数据库存储都是一个文件存储多个行,这些行有不同的列,这些列的数据类型
不同。
2.基于HDFS存储数据,也就是说数据最终存储在HDFS上面,只不过HBase提供的一层对HDFS操作的封装,类似于传统数据库是基于文件系统的。
3.访问基于rowkey,存储成二进制类型,所以任何类型都可以存储行键,通过三维定位:rowkey-列簇-限定符,自带版本号与时间
4.Memstore-HFile,所以同一个列基本都是存储在一个文件里面,不同列存储在不同文件里面。
HBase安装(分布式安装):
1.首先按照Zookeeper
2.启动Zookeeper
为什么安装Zookeeper,因为HBase的元数据存储在Zookeeper上,保证HMaster的HA,所以HBase。
具体安装:
1.mv zoo.cfg.sample zoo.cfg
2.vim zoo.cfg
dataDir=/Users/apple/zookeeper/data
dataLogDir=/Users/apple/zookeeper/logs
server.1=192.168.109.137:8880:7770
server.2=192.168.109.138:8880:7770
server.3=192.168.109.139:8880:7770
3. 在dataDir目录创建myid文件,注意文件内容,server.1,写蓝色的文字
4.在各个节点上启动zk,启动命令:./zkServer.sh start
HBase安装:
1.vim conf/hbase-site.xml
<property>
<name>hbase.rootdir</name>
<value>hdfs://master:9000/hbase</value>
</property>
<property>
<name>hbase.hregion.max.filesize</name>
<value>1073741824</value>
</property>
<property>
<name>hbase.hregion.memstore.flush.size</name>
<value>134217728</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.property.clientPort</name>
<value>2181</value>
</property>
<property>
<name>zookeeper.session.timeout</name>
<value>120000</value>
</property>
<property>
<name>hbase.zookeeper.property.tickTime</name>
<value>6000</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>master,slave1,slave2</value>
</property>
<property>
<name>hbase.tmp.dir</name>
<value>/home/hbase/temp</value>
</property>
2.vim regionservers
slave1
slave2
3.启动Hbase
./start-hbase.sh
4.webui管理界面
http://master:60010
总结:
1.hbase的安装主要是配置hbase-site.xml文件,里面设计hbase的存储位置,一般都是HDFS,所以事先搭建好Hadoop集群,启动HDFS。
2.配置vim regionservers ,主要是让Hbase了解有哪些slave节点,在上运行regionserver服务。
3.蓝色的字体代表hbase的基本原理,存储在什么地方、主节点的HA、有哪些slave工作节点,其他的都是调优参数。