大数据NoSQL数据库HBase集群部署

简介

HBase 是一种分布式、可扩展、支持海量数据存储的 NoSQL 数据库。

和Redis一样,HBase是一款KeyValue型存储的数据库。

不过和Redis设计方向不同

  • Redis设计为少量数据,超快检索

  • HBase设计为海量数据,快速检索

HBase在大数据领域应用十分广泛,现在我们来在node1、node2、node3上部署HBase集群。

安装

  1. HBase依赖Zookeeper、JDK、Hadoop(HDFS),请确保已经完成前面

    • 集群化软件前置准备(JDK)

    • Zookeeper

    • Hadoop

    • 这些环节的软件安装

  2. 【node1执行】下载HBase安装包

    复制代码
    # 下载
    wget http://archive.apache.org/dist/hbase/2.1.0/hbase-2.1.0-bin.tar.gz
    ​
    # 解压
    tar -zxvf hbase-2.1.0-bin.tar.gz -C /export/server
    ​
    # 配置软链接
    ln -s /export/server/hbase-2.1.0 /export/server/hbase
  3. 【node1执行】,修改配置文件,修改conf/hbase-env.sh文件

    复制代码
    # 在28行配置JAVA_HOME
    export JAVA_HOME=/export/server/jdk
    # 在126行配置:
    # 意思表示,不使用HBase自带的Zookeeper,而是用独立Zookeeper
    export HBASE_MANAGES_ZK=false
    # 在任意行,比如26行,添加如下内容:
    export HBASE_DISABLE_HADOOP_CLASSPATH_LOOKUP="true"
  4. 【node1执行】,修改配置文件,修改conf/hbase-site.xml文件

    复制代码
    # 将文件的全部内容替换成如下内容:
    <configuration>
            <!-- HBase数据在HDFS中的存放的路径 -->
            <property>
                <name>hbase.rootdir</name>
                <value>hdfs://node1:8020/hbase</value>
            </property>
            <!-- Hbase的运行模式。false是单机模式,true是分布式模式。若为false,Hbase和Zookeeper会运行在同一个JVM里面 -->
            <property>
                <name>hbase.cluster.distributed</name>
                <value>true</value>
            </property>
            <!-- ZooKeeper的地址 -->
            <property>
                <name>hbase.zookeeper.quorum</name>
                <value>node1,node2,node3</value>
            </property>
            <!-- ZooKeeper快照的存储位置 -->
            <property>
                <name>hbase.zookeeper.property.dataDir</name>
                <value>/export/server/apache-zookeeper-3.6.0-bin/data</value>
            </property>
            <!--  V2.1版本,在分布式情况下, 设置为false -->
            <property>
                <name>hbase.unsafe.stream.capability.enforce</name>
                <value>false</value>
            </property>
    </configuration>
  5. 【node1执行】,修改配置文件,修改conf/regionservers文件

    复制代码
    # 填入如下内容
    node1
    node2
    node3
  6. 【node1执行】,分发hbase到其它机器

    复制代码
    scp -r /export/server/hbase-2.1.0 node2:/export/server/
    scp -r /export/server/hbase-2.1.0 node3:/export/server/
  7. 【node2、node3执行】,配置软链接

    复制代码
    ln -s /export/server/hbase-2.1.0 /export/server/hbase
  8. 【node1、node2、node3执行】,配置环境变量

    复制代码
    # 配置在/etc/profile内,追加如下两行
    export HBASE_HOME=/export/server/hbase
    export PATH=$HBASE_HOME/bin:$PATH
    
    source /etc/profile
  9. 【node1执行】启动HBase

    请确保:Hadoop HDFS、Zookeeper是已经启动了的

    复制代码
    start-hbase.sh
    
    # 如需停止可使用
    stop-hbase.sh

    由于我们配置了环境变量export PATH=PATH:HBASE_HOME/bin

    start-hbase.sh即在$HBASE_HOME/bin内,所以可以无论当前目录在哪,均可直接执行

  10. 验证HBase

    浏览器打开:http://node1:16010,即可看到HBase的WEB UI页面

  11. 简单测试使用HBase

    【node1执行】

    复制代码
    hbase shell
    ​
    # 创建表
    create 'test', 'cf'
    ​
    # 插入数据
    put 'test', 'rk001', 'cf:info', 'itheima'
    ​
    # 查询数据
    get 'test', 'rk001'
    ​
    # 扫描表数据
    scan 'test'
相关推荐
Json_181790144803 小时前
An In-depth Look into the 1688 Product Details Data API Interface
大数据·json
Qspace丨轻空间5 小时前
气膜场馆:推动体育文化旅游创新发展的关键力量—轻空间
大数据·人工智能·安全·生活·娱乐
Elastic 中国社区官方博客6 小时前
如何将数据从 AWS S3 导入到 Elastic Cloud - 第 3 部分:Elastic S3 连接器
大数据·elasticsearch·搜索引擎·云计算·全文检索·可用性测试·aws
Aloudata7 小时前
从Apache Atlas到Aloudata BIG,数据血缘解析有何改变?
大数据·apache·数据血缘·主动元数据·数据链路
水豚AI课代表7 小时前
分析报告、调研报告、工作方案等的提示词
大数据·人工智能·学习·chatgpt·aigc
拓端研究室TRL10 小时前
【梯度提升专题】XGBoost、Adaboost、CatBoost预测合集:抗乳腺癌药物优化、信贷风控、比特币应用|附数据代码...
大数据
黄焖鸡能干四碗10 小时前
信息化运维方案,实施方案,开发方案,信息中心安全运维资料(软件资料word)
大数据·人工智能·软件需求·设计规范·规格说明书
编码小袁10 小时前
探索数据科学与大数据技术专业本科生的广阔就业前景
大数据
WeeJot嵌入式11 小时前
大数据治理:确保数据的可持续性和价值
大数据
zmd-zk12 小时前
kafka+zookeeper的搭建
大数据·分布式·zookeeper·中间件·kafka