一旦工作,那就要努力的干,聪明的干,快速的干——用省下来的时间干自己喜欢干的事情。!

Hbase架构、存储机制、安装及与hadoop的区别

hadoop lampnick 2415℃ 0评论
Hbase
1.介绍
    是分布式面向列的数据库,构建在hadoop之上,类似于google的big table,对海量结构化数据的快速随机访问。是hadoop生态系统的一部分,提供随机实时读写。
    
2.Hbase和Hadoop的区别
HDFS                                      Hbase
1.分布式文件系统,存储大量数据      数据库,构建于HDFS之上
2.不支持快速单个记录查找            支持大表的快速查找
3.提供了高延迟批处理                提供了单行记录低延迟随机访问(10亿级别)
4.只提供数据按序访问                内部使用hash表提供的随机访问,在HDFS上存放索引文件,用于快速查找。

Hbase存储机制
1.面向列族的数据库,适用于海量数据的随机读写
2.Table中只定义了列族,表按照row存储
3.术语
    table:表,是row的集合。
    row:行,是列族的集合。
    column family:列族,是列的集合。
    column:列,是kv对集合。
4.面向行和面向列的区别
    row                     column
    a.适合于OLTP            适合于OLAP
    b.针对行列较少的        大表
5.Hbse和RDBMS区别

Hbase                                     RBDMS
a.是无模式的,没有列的定义          有模式的,描述整个的表结构
只定义列族,列是key
b.适合于宽表,水平伸缩              适合于小表,难于扩展。
c.没有事务支持                      事务性的
d.不是规范化的                      规范化的
e.结构化和半结构化的                结构化的

Hbase架构
1.master-slave主从结构
2.table从垂直方向进行切割,分成若干个区域。由每个regionserver进行处理。
3.master server(ms)
    a.负责指派region给rs,通过ZK获得Task的帮助。
    b.处理跨rs的region的负载均衡问题
    c.从繁忙服务器到空闲服务器之间的数据转载。
    d.通过裁定和,负载均衡判断集群的状态。
4.region
    被切割的表,跨rs
5.region server(rs)
    和客户端通信
    处理数据操作
    处理它下面的所有region的读写请求
    通过阀值决定region size

Hbase安装
1.下载http://apache.fayea.com/hbase/stable/
2.解压复制建立符号链接
3.配置环境变量 
vim /etc/environment
HABASE_HOME=/soft/hbase
:/soft/hbase/bin
source /etc/environment

4.配置hbase的本地模式
[hbase/confi/hbase-site.xml]
<property>
    <name>hbase.rootdir</name>
    <valuse>file:///home/hadoop/hbase/root</value>
</property>
<property>
    <name>hbase.zookeeper.property.dataDir</name>
    <valuse>/home/hadoop/hbase/zk</value>
</property>
建立对应的文件夹
5.start-hbase.sh
6.jps=>HMaster

部署
hbase/conf/hbase-site.xml
1.local
    hbase.rootdir=file:///
    素有hbase程序和zk运行同一个jvm中
2.psesudo(伪分布式)
    hbase.rootdir=hdfs://s100:8020/hbase
    dfs.replication=1
3.完全分布式
    [conf/hbase-site.xml]
    hbase.rootdir=hdfs://s100:8020/hbase
    dfs.replication=3
    hbase.cluster.distributed=true
    
    #zk conf
    <property>
        <name>hbase.zookeeper.property.clientPort</name>
        <value>2181</value>
    </property>
    <property>
        <name>hbase.zookeeper.quorum</name>
        <value>s101,s102,s103</value>
    </property>
    <property>
        <name>hbase.zookeeper.property.dataDir</name>
        <value>/home/hadoop/hbase/zk</value>
    </property>
    
    
    [conf/regionservers]
    s101
    s102
    s103
    
    
    b.分发配置
    [hbase安装配置]
    $>--删除/hbase/docs
    $>xsync /soft/hbase
    $>xsync /soft/hbase-1.2.5
    $root>xsync /etc/environment
    $>reboot//重启客户机
    c.启动hbase集群,一定要在master主机启动(s100)
    $>start-hbase.sh
    d.查看进程
    $>xcall jps
    hmaster //master
    hregionserver //regionserver
    hquorumpeer //zk
    e.查看webui
    http://hmaster:16010    //master webui
    http://s101:16030       //regionserver webui
    
hbase常用命令
$>start-hbase.sh    //启动集群
$>stop-hbase.sh     //停止集群


hbase shell
$>hbase shell   //查看shell帮助
$hbase>help     //查看帮助
$hbase>help general //查看组帮助
$hbase>create 't1',{name=>'f1'}
$hbase>put 't1','row1','f1:name','tom'
$hbase>delete 't1','row1','f1:name','tom'
$hbase>get   +   scan 查询
$hbase>create
$hbase>disable  //禁用表
$hbase>drop     //删除表

转载请注明:MitNick » Hbase架构、存储机制、安装及与hadoop的区别

喜欢 (2)or分享 (0)
头像
发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址