文档首页> > 快速入门

从零开始使用HBase

更新时间: 2018-11-16 10:51
  • 华为云表格存储服务(CloudTable)是基于Apache HBase提供的全托管NoSQL服务,集成OpenTSDB和GeoMesa,提供毫秒级随机读写能力,适用于海量(半)结构化数据存储。可被广泛应用于物联网、车联网、金融、智慧城市等行业 。

  • 本指南提供从零开始使用HBase的操作指导:通过HBase Shell命令实现创建表,往表中插入数据,修改表,读取表数据,删除表中数据以及删除表的功能。

Step1 创建CloudTable集群

步骤

① 登录 为云控制台

② 单击“服务列表”,选择“EI企业智能 > 表格存储服务”,进入表格存储服务管理控制台。

③ 单击“购买集群”,进入“购买集群”页面。

说明

① 您也可以通过访问以下地址登录表格存储服务管理控制台:

https://console.huaweicloud.com/cloudtable

1

登录CloudTable管理控制台

申请虚拟私有云

2

购买集群

申请弹性云服务器

单击图片可查看原图

Step2 配置集群

步骤

① 选择默认的“地域”和“可用分区”。

② 设置集群名称及存储配额。

本示例中,集群名称设为 “cloudtable-demo”。   存储配额默认为800GB。

1

集群配置

选择付费方式

单击图片可查看原图

Step3 配置网络和软件

步骤

① 配置网络。

  • 虚拟私有云 :选择使用已有的虚拟私有云网络或者单击“查看虚拟私有云”新建一个新的虚拟私有云。
  • 子网 :创建虚拟私有云时会默认创建一个子网,可以选择对应的子网名。
  • 安全组 :默认选择即可。

② 配置软件。

  • IAM统一身份认证 :如果需要IAM认证模式的安全集群,请开启。本示例不开启,表示普通模式,即非安全模式。
  • IAM认证方式的安全性高于普通模式,建议CloudTable集群开启IAM认证功能,并在客户端或应用程序代码中采用IAM认证方式连接集群。

  • 高级特性 :“OpenTSDB 2.3.0”、GeoMesa,可自行选择是否勾选。本示例选择不勾选。注意,开启后暂不支持关闭。

③配置计算单元数量。默认数量为2,默认即可。

1

网络配置

选择付费方式

2

软件配置

选择实例配置

单击图片可查看原图

Step4 确认您的集群配置

步骤

①确认信息无误后,单击“立即购买”。系统将会自动为您创建CloudTable集群。

CloudTable集群创建需要时间,所创集群的初始状态为“创建中”,创建成功后状态更新为“服务中”,请您耐心等待。

说明

① 实例需和ECS选取相同的虚拟私有云。
② 建议配置相同的安全组,不用再添加端口访问规则。

1

确认后立即购买

选择付费方式

2

查看集群状态

选择实例配置

单击图片可查看原图

Step5.a 准备弹性云服务器

步骤

① 购买Linux弹性云服务器,。

请参见《弹性云服务器快速入门》的“购买并登录Linux弹性云服务器”章节。

  • 弹性云服务器操作系统可以为CentOS。
  • 弹性云服务器需要与购买的CloudTable集群具有相同的地域、可用分区、虚拟私有云、子网和安全组。
  • 购买弹性云服务器时需要选择现在购买“弹性IP”,并绑定“弹性IP”。

② 使用密码方式登录Linux弹性云服务器。

1

购买弹性云服务器

选择付费方式

单击图片可查看原图

Step5.b 准备弹性云服务器

步骤

① 将Linux弹性云服务器主机IP配置到/etc/hosts文件,可以加速访问CloudTable集群。

以root用户登录Linux,执行“hostname”和“ifconfig”查询主机名和IP,并添加到/etc/hosts文件中。示例如右图所示。

1

为ECS主机配置hostname

选择付费方式

单击图片可查看原图

Step5.c 准备弹性云服务器

步骤

① 为Linux弹性云服务器配置DNS。

DNS服务器用于解析CloudTable集群ZK访问域名,DNS服务器IP地址为100.125.1.250。

以root用户登录Linux,编辑“/etc/resolv.conf”文件,增加“nameserver”配置。示例如右图所示。

nameserver 100.125.1.250

详情请参见 配置方法

1

为ECS主机配置DNS

选择付费方式

单击图片可查看原图

Step6 安装HBase客户端

步骤

① 通过VNC方式登录Linux弹性云服务器。

② 使用curl命令下载HBase客户端。

curl -o hbase-1.3.1-bin.tar.gz https://cloudtable-publish.obs.myhwclouds.com/hbase-1.3.1-bin.tar.gz

③ 解压Hbase客户端到指定目录。

tar -xvf hbase-1.3.1-bin.tar.gz -C /tmp

④ 修改Hbase客户端配置文件,添加zookeeper地址。

在客户端解压目录下,使用vi工具打开“conf/hbase-site.xml”文件,配置“hbase.zookeeper.quorum”参数后(该参数值为在集群管理列表中查找的对应集群的“ZK链接地址”),保存退出vi。。

vi /tmp/hbase-1.3.1/conf/hbase-site.xml

1

HBase客户端配置

选择付费方式

单击图片可查看原图

Step7 设置JAVA_HOME环境变量

步骤

① 安装Oracel JDK 1.8。

JDK官网下载地址请单击 这里 。下载完成后请上传至步骤2中的Linux弹性云服务器上,并完成安装。

② 设置JAVA_HOME环境变量。

export JAVA_HOME=/path_to_java_home

path_to_java_home是JDK的安装路径,请根据实际的安装目录替换。比如/usr/java/jdk1.8.0_151。

1

下载JDK

选择付费方式

单击图片可查看原图

Step8.a 运行HBase Shell命令

步骤

① 示例场景:

假定用户开发一个应用程序,用于管理企业中的使用A业务的用户信息,使用HBase客户端实现A业务操作流程如下:

  • 创建用户信息表user_info。
  • 在用户信息中新增用户的学历、职称信息。
  • 根据用户编号查询用户姓名和地址。
  • 根据用户姓名进行查询。
  • 用户销户,删除用户信息表中该用户的数据。
  • A业务结束后,删除用户信息表。

1

示例表

选择付费方式

单击图片可查看原图

Step8.b 运行HBase Shell命令

步骤

① 运行HBase Shell,并使用HBase Shell命令实现A业务。

/tmp/hbase-1.3.1/bin/hbase shell

② 根据用户信息表创建表user_info并添加相关数据。

create 'user_info',{NAME => 'i'}

以增加编号12005000201的用户信息为例,其他用户信息参照如下命令依次添加:

put 'user_info','12005000201','i:name','A'

put 'user_info','12005000201','i:gender','Male'

put 'user_info','12005000201','i:age','19'

put 'user_info','12005000201','i:address','City A'

1

创建表

选择付费方式

单击图片可查看原图

Step8.c 运行HBase Shell命令

步骤

① 在用户信息表user_info中新增用户的学历、职称信息。

以增加编号为12005000201的用户的学历、职称信息为例,其他用户类似。

put 'user_info','12005000201','i:degree','master'

put 'user_info','12005000201','i:pose','manager'

②  根据用户编号查询用户姓名和地址。

以查询编号为12005000201的用户姓名和地址为例,其他用户类似。

scan'user_info',{STARTROW=>'12005000201',STOPROW=>'12005000201',COLUMNS=>['i:name','i:address']}

1

插入数据并查询

选择付费方式

单击图片可查看原图

Step8.d 运行HBase Shell命令

步骤

① 根据用户姓名进行查询。

以查询A用户信息为例,其他用户类似。

scan'user_info',{FILTER=>"SingleColumnValueFilter('i','name',=,'binary:A')"}

②删除用户信息表中该用户的数据。

所有用户的数据都需要删除,以删除编号为12005000201的用户数据为例,其他用户类似。

delete'user_info','12005000201','i’

③ 删除用户信息表。

disable'user_info';drop 'user_info'

1

完成查询后删除表

选择付费方式

单击图片可查看原图

Step9 清除资源

步骤

完成示例后,如果不再需要示例集群,您可以将示例集群删除。

① 在左侧导航树,单击 集群管理
② 在集群管理列表中,选中需要删除的集群名,在对应的 操作 列中,单击 更多 > 删除

1

删除集群

获取实例连接地址

单击图片可查看原图

相关操作指导

视频小图标 Created with Sketch.

创建CloudTable集群

视频小图标 Created with Sketch.

从零开始使用HBase

视频小图标 Created with Sketch.

HBase样例代码操作指导

文档是否有解决您的问题?

提交成功!

非常感谢您的反馈,我们会继续努力做到更好!

反馈提交失败,请稍后再试!

在文档使用中是否遇到以下问题







请至少选择或填写一项反馈信息

字符长度不能超过100

反馈内容不能为空!

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

跳转到云社区
点我,12·12惊喜等着你哦~