zoukankan      html  css  js  c++  java
  • HBase环境搭建随笔

    HBase随笔:
    --------------
    1、HBase数据存放在hdfs集群中,是一个大表,写操作使用MapReduce处理,将(增删改)处理结果放入HBase中,读就直接读HBase,
    HBase的并发量在1000左右,常用的关系型数据库MySql的并发量在300到500之间,原因在于HBase启用了缓存技术.HBase中的块的单位是64k,
    每次读取数据以块为单位加载数据到内存中,加载到内存中的数据形同一个散列表,散列表以Key-Value的键值对方式存储,HDFS中存储的数据
    收到HBase的元数据管理,这种管理方式与Hive雷同,即HBase通过Zookeeper集群管理元数据,通过HDFS集群管理业务数据

    2、数据存储以Region作为单位(行的集合),一个Region的默认大小为128M

    3、因为HBase是基于键值对(读时以块为单位读)的一个NOSQL数据库,Redis的读写纯粹是基于键值对,Redis的并发量在十万左右,并发能力高,
    但没有副本机制,数据容易丢失,而HBase基于HDFS集群,具有副本机制,数据安全度高

    4、使用关联评估算法(属于机器学习)

    HBase架构原理
    -------------
    1、客户端链接zookeeper集群,申请写数据
    2、zookeeper返回一个地址列表给客户端
    3、客户端根据地址列表链接slave节点写数据,并反馈状态
    ------------slave节点会主动上报存储状态及工况信息到master
    ------------master则主动将元数据上报zookeeper集群
    4、客户端告知zookeeper记录和状态

    HBase集群搭建与基础运维操作
    --------------------------
    A、安装HBase集群
    ---------------
    A1、解压安装包
    [hadoop@master01 install]$ tar -zxcf hbase-1.2.6-bin.tar.gz -C /software/

    A2、系统配置环境变量
    #配置/etc/profile
    [hadoop@master01 software]$ su -lc "vi /etc/profile"
    JAVA_HOME=/software/jdk1.7.0_79
    HADOOP_HOME=/software/hadoop-2.7.3
    HBASE_HOME=/software/hbase-1.2.6
    PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/lib:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HBASE_HOME/bin
    export PATH JAVA_HOME HADOOP_HOME HBASE_HOME

    #分发系统配置文件
    [hadoop@master01 software]$ su -lc "scp -r /etc/profile slaver03:/etc/"
    [hadoop@slaver03 software]$ source /etc/profile

    配置HBase集群文件
    -----------------
    [hadoop@master01 software]$ cd hbase-1.2.6/conf/
    [hadoop@master01 conf]$ vi hbase-env.sh
    --------
    29 export JAVA_HOME=/software/jdk1.7.0_79
    132 export HBASE_MANAGES_ZK=false
    --------
    [hadoop@master01 conf]$ vi hbase-site.xml
    指定
    <configuration>
    <property>
    <name>hbase.rootdir</name>
    <value>hdfs://ns1/userase</value>
    </property>

    指定HBase为分布式
    <property>
    <name>hbase.cluster.distributed</name>
    <value>true</value>
    </property>
    指定zookeeper集群节点
    <property>
    <name>hbase.zookeeper.quorum</name>
    <value>slaver01:2181,slaver02:2181,slaver03:2181</value>
    </property>
    </configuration>

    指定HBase从节点:
    [hadoop@master01 conf]$ vi regionservers
    [hadoop@master01 conf]$ cat regionservers
    slaver01
    slaver02
    slaver03

    #将hbase安装环境拷贝到三个从节点上:
    [hadoop@master01 software]$ scp -r hbase-1.2.6/ slaver01:/software/
    #将hdfs的配置文件放到hbase安装目录下的conf路径下(每个节点都要操作);
    [hadoop@master01 software]$ cp -a /software/hadoop-2.7.3/etc/hadoop/{core-site.xml,hdfs-site.xml} /software/hbase-1.2.6/conf/

    B、启动zookeeper集群:
    [hadoop@slaver01 software]$ cd zookeeper-3.4.10/bin/ && ./zkServer.sh start
    C、启动HDFS集群:
    [hadoop@master01 software]$ start-dfs.sh
    D、启动HBase:
    [hadoop@master01 software]$ start-hbase.sh
    在master02上启动HBase:
    [hadoop@master02 software]$ hbase-daemon.sh start master
    手动启动slaver节点上的 regionserver进程:
    [hadoop@slaver01 software]$ hbase-daemon.sh start regionserver
    E、在终端查看:
    http://master01:16010/

  • 相关阅读:
    2020.1.15考试总结
    P4558 [JSOI2018]机器人 结论&DP
    2020.1.11考试总结
    2020.1.9考试总结
    如何和出题人斗智斗勇?奇技淫巧汇总
    各种公式总结
    2020.1.5考试总结
    C基础学习笔记——01-C基础第10天(内存结构)
    C基础学习笔记——01-C基础第09天(指针下)
    C基础学习笔记——01-C基础第08天(指针上)
  • 原文地址:https://www.cnblogs.com/pandazhao/p/8125134.html
Copyright © 2011-2022 走看看