Hbase
分布式数据库
授权协议:Apache
开发语言:Java

软件介绍

HBase Hadoop Database,是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群,海量数据的快速随机访问。

开源地址:http://hbase.apache.org/

1.    安装环境推荐配置

安装Hbase的环境推荐配置如表1-1所示。

表1-1安装Hbase的环境推荐配置

类别

子项

版本

获取地址

硬件

CPU

Kunpeng 916

-

网络

Ethernet-10GE

-

存储

SATA 1TB

-

内存

512G 2400MHz

-

OS

CentOS

7.4.1708

https://www.centos.org/download/

Kernel

4.11

含在OS镜像包中

软件

GCC

4.8.5

含在OS镜像包中

OpenJDK

1.8.0_191

https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u191-b12/OpenJDK8U-jdk_aarch64_linux_hotspot_8u191b12.tar.gz

Maven

3.5.4

https://archive.apache.org/dist/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin.tar.gz

Protobuf

2.5.0

https://github.com/protocolbuffers/protobuf/releases/download/v2.5.0/protobuf-2.5.0.tar.gz


2.    准备编译环境

1)     安装OpenJDK

操作步骤

a)     下载OpenJDK安装包。

wget  https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u191-b12/OpenJDK8U-jdk_aarch64_linux_hotspot_8u191b12.tar.gz

b)     解压安装包。

tar -zxf OpenJDK8U-jdk_aarch64_linux_hotspot_8u191b12.tar.gz

c)      OpenJDK安装到指定目录。

mv jdk8u191-b12 /opt/tools/installed/

d)     配置java环境变量。

打开“/etc/profile”文件。

vi /etc/profile

在“/etc/profile”文件末尾处增加如下代码。

JAVA_HOME=/opt/tools/installed/jdk8u191-b12
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME PATH

修改完成后,按“Esc”键,输入:wq!命令保存退出。

执行以下命令,使修改的环境变量生效。

source /etc/profile

2)     安装Maven

a)     操作步骤

下载Maven安装包。

wget https://archive.apache.org/dist/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin.tar.gz

b)     解压安装包。

tar -zxf apache-maven-3.5.4-bin.tar.gz

c)      Maven安装到指定目录。

mv apache-maven-3.5.4 /opt/tools/installed/

d)     配置Maven环境变量。

在“/etc/profile”文件末尾增加如下蓝色字体代码。

JAVA_HOME=/opt/tools/installed/jdk8u191-b12
MAVEN_HOME=/opt/tools/installed/apache-maven-3.5.4
PATH=$MAVEN_HOME/bin:$JAVA_HOME/bin:$PATH
export MAVEN_HOME JAVA_HOME PATH

执行以下命令,使修改的环境变量生效。

source /etc/profile

e)     修改Maven配置文件/opt/tools/installed/apache-maven-3.5.4/conf/settings.xml中的本地仓路径、远程仓等。

例如将/path/to/local/repo修改成“/opt/tools/repo”。

<!--默认在“~/.m2/”目录下,修改成用户想保存的目录-->
<localRepository>/path/to/local/repo</localRepository>

<!--修改成用户自己搭建的maven仓库,ARM使能后的jar包替换到该仓库-->
<mirror>
</mirror>
例如阿里厂库是下面的镜像,用户需要修改成自己的ARM仓,确保ARM仓里面的jar包是经过ARM使能的,修改样例如下:
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf> 
</mirror>

3)     安装GCC

操作步骤

a)     挂载OS镜像。

mount YOUR_OS.iso /media -o loop

b)     修改“/etc/yum.repos.d/Base.repo”文件,配置yum本地源。

[Local]
name=CentOS-7.4 Local
baseurl=file:///media/
enabled=1
gpgcheck=0

c)      执行以下命令,使yum源配置生效。

yum clean all
yum makecache

d)     安装GCC相关软件。

yum install gcc.aarch64 gcc-c++.aarch64 gcc-gfortran.aarch64 libgcc.aarch64

4)     安装Protoc

a)     操作步骤

下载Protoc安装包。

wget https://github.com/protocolbuffers/protobuf/releases/download/v2.5.0/protobuf-2.5.0.tar.gz

b)     解压安装包。

tar -zxf protobuf-2.5.0.tar.gz

c)      进入解压后目录。

cd protobuf-2.5.0

d)     请从鲲鹏生态社区获取Protoc ARM补丁包。

e)     安装Protoc ARM补丁。

cp protoc.patch ./src/google/protobuf/stubs/
cd ./src/google/protobuf/stubs/
patch -p1 < protoc.patch
cd -

f)      编译并安装到系统默认目录。

./autogen.sh && ./configure CFLAGS='-fsigned-char' && make && make install


3.    软件移植分析

请依据《CheckSo使用说明文档》扫描Hbase安装包,分析得出需要移植的第三方依赖包如表3-1所示。

表3-1软件移植分析结果

原始jar

so文件

commons-crypto-1.0.0.jar

libcommons-crypto.so

netty-all-4.0.23.Final.jar

libnetty-transport-native-epoll.so

leveldbjni-all-1.8.jar

libleveldbjni.so

snappy-java-1.0.5.jar

libsnappyjava.so


4.    编译依赖包

操作步骤

1)     请参考表4-1编译第三方依赖包。

表4-1依赖包编译参考

依赖包

编译参考

commons-crypto-1.0.0.jar

请参考《编译commons-crypto-1.0.0.jar》进行编译。

netty-all-4.0.23.Final.jar

请参考《编译netty-all-4.0.23.Final.jar》进行编译。

leveldbjni-all-1.8.jar

请参考《编译leveldbjni-all-1.8.jar》进行编译。

snappy-java-1.0.5.jar

请参考《编译snappy-java-1.0.5.jar》进行编译。

2)     请将编译完成的jar包替换到自己搭建的Maven仓库和本地仓库中。

5.    编译Hbase

操作步骤

1)     下载Hbase安装包。

wget http://archive.apache.org/dist/hbase/2.1.0/hbase-2.1.0-src.tar.gz

2)     解压安装包。

tar -zxf hbase-2.1.0-src.tar.gz

3)     进入解压后目录。

cd hbase-2.1.0

4)     执行编译。

mvn clean package -DskipTests assembly:single

编译成功后,将在源码下的“hbase-assembly/target/”目录生成tar.gz包。

6.    相关文档

第三方依赖包编译指导

Kunpeng 916 FusionInsight HD C80 HBase组件性能调优指导

软件下载

源码下载立即下载