建议使用以下浏览器,以获得最佳体验。 IE 9.0+以上版本 Chrome 31+ 谷歌浏览器 Firefox 30+ 火狐浏览器
请选择 进入手机版 | 继续访问电脑版
设置昵称

在此一键设置昵称,即可参与社区互动!

确定
我再想想
选择版块
1035213fnlks2fx6defuh6.jpg 云搜索服务CSS 钜惠专场 2020年华为云AI实战营 华为云普惠AI

Resol1992

发帖: 2粉丝: 0

级别 : 新手上路

发消息 + 关注

发表于2019-3-13 10:30:44 7453 3
直达本楼层的链接
楼主
显示全部楼层
[教程] [CloudTable服务]HBase on Sql客户端操作指南

[CloudTable服务]HBase on Sql客户端操作指南

背景:

为了方便用户能够像操作传统关系型数据库一样地操作HBase,我们可以以Phoenix为基础并结合其他工具分别在Linux和Windows环境上利用SQL语句来操作HBase,如创建表、数据写入、数据查询等。

1 Linux客户端篇

1.1 环境准备

1.1.1 创建CloudTable集群并开启Lemon特性

登录华为云官网,选择表格存储服务 CloudTable,进入集群模式购买集群

注意需要勾选Lemon高级特性;如果在创建集群时没有勾选,可以在集群创建完成后,再开启Lemon。

1552377856901.png

1552377807645.png

1552440086138.png

1.1.2 创建Linux ECS并绑定公网EIP

(1)选择弹性云服务器 ECS购买云服务器,在选择镜像时要选择公共镜像,操作系统为LinuxCentOS

1552378394727.pngspacer.gif

(2)在创建ECS时,要确保虚拟私有云VPC、网卡子网、安全组与1.1.1章节中CloudTable集群保持一致,并且需要为安全组按需配置出入规则,否则会出现网络无法访问的问题。为了能在公网直接访问该ECS,用户在创建ECS时可以勾选现在购买弹性公网IP或者在ECS创建完成后再为该ECS绑定一个弹性公网IP

CloudTable集群:

spacer.gif1552378658695.png

ECS:spacer.gif

1552378540366.png

(3)当ECS创建完成后,用户可以利用xshell、putty等工具登录到该ECS上(需要使用绑定的弹性公网IP)。

1.1.3 一键安装部署HBase客户端

(1)登录到ECS后,需要在该ECS上安装部署HBase客户端,可参照如下文档一键式安装。

 https://support.huaweicloud.com/en-us/usermanual-cloudtable/cloudtable_01_0097.html

1.2 客户端下载、安装及使用

1.2.1 下载Phoenix客户端包

进入到phoenix官网下载,选择*HBase-1.3

spacer.gif1552379637316.png

http://phoenix.apache.org/download.html

或在ECS上使用如下命令:

wget http://mirror.bit.edu.cn/apache/phoenix/apache-phoenix-4.14.1-HBase-1.3/bin/apache-phoenix-4.14.1-HBase-1.3-bin.tar.gz

1.2.2 解压客户端tar.gz包

tar -zxvf apache-phoenix-4.14.1-HBase-1.3-bin.tar.gz

1.2.3 使用客户端

cd apache-phoenix-4.14.1-HBase-1.3-bin/bin

./sqlline-thin.py <cloudtable-lemon-url>:<port>

关于<cloudtable-lemon-url>:<port>的获取可以查看1.1.1章节中创建的CloudTable集群的详细信息中的Lemon链接地址,当前Lemon链接地址中包含多个<cloudtable-lemon-url>:<port>,我们任意选择其中一个进行连接即可spacer.gif

1552379849555.png

(4)查看数据库中有哪些表

!tables

(5)创建数据表

CREATE TABLE "test" ("time" VARCHAR, "vin" VARCHAR, "a038" VARCHAR, "a039" VARCHAR, "a040" VARCHAR CONSTRAINT rowkey PRIMARY KEY("time", "vin")) SPLIT ON ('50', '100');

(6)数据写入

UPSERT INTO "test" VALUES ('2019-03-08 10:00:00', 'IXX0M56GSRVQI9S1S', null, '1', '1');

(7)数据查询

SELECT * FROM "test";

(8)创建索引

CREATE INDEX "idx_test" ON "test"("vin");

(9)用户可以利用1.1.3章节中安装的HBase客户端,通过hbase shell命令查看创建的"test"数据表。


2 Windows客户端篇

2.1 环境准备

使用Windows客户端有两种方案:

(1)申请一台Linux ECS并为其绑定EIP,在客户自己本地的Windows机器上采用VPN的方式通过该Linux ECS连接到CloudTable内部,前提是客户自己本地的Windows上已经配置了Jave JDK;

(2)申请一台Windows ECS并为其绑定EIP,客户通过远程桌面连接的方式登录到该Windows ECS后,再在Windows ECS上进行操作。

如果采用第(1)方案,则环境准备需要完成2.1.1,2.1.2, 2.1.3章节。

如果采用第(2)种方案,则环境准备需要完成2.1.1,2.1.4, 2.1.5,2.1.6章节。

2.1.1 创建CloudTable集群并开启Lemon特性

直接参照1.1.1章节的内容。

2.1.2 创建Linux ECS并绑定公网IP

直接参照1.1.2章节内容。

2.1.3 配置vpn连接

参照如下文档:

https://bbs.huaweicloud.com/forum/thread-13371-1-1.html

2.1.4 创建Windows ECS并绑定公网EIP

(1)选择弹性云服务器 ECS购买云服务器,在选择镜像时要选择公共镜像,操作系统为Windows

例如:spacer.gif

1552380754352.png

(2)同样的,在创建ECS时,要确保虚拟私有云VPC、网卡子网、安全组与1.1.1章节中CloudTable集群保持一致,并且需要为安全组按需配置出入规则,否则会出现网络无法访问的问题。为了能在公网直接访问该ECS,用户在创建ECS时可以勾选现在购买弹性公网IP或者在ECS创建完成后再为该ECS绑定一个弹性公网IP,具体可以参照1.1.2章节第(2)步内容。

2.1.5 连接并登录Windows ECS

利用Windows自带的远程桌面连接工具,连接上面创建的Windows ECS。

spacer.gif1552381051188.png

spacer.gif1552381308874.png

2.1.6 Windows ECS配置Java JDK

登录成功后,需要先安装配置Java JDK

安装配置Java JDK的具体过程用户可自行上网查阅,在此不再赘述。

2.2 客户端工具下载、安装及使用

2.2.1 下载squirrel sql client工具

进入Squirrel sql官网:http://www.squirrelsql.org/, 并下载Squirrel SQL Client的Windows客户端jar 包。当前最新为3.9.1版本。

spacer.gif 1552381663977.png

2.2.2 安装squirrel sql client工具

(1)打开Windows cmd命令行,进到squirrel-sql-3.9.1-standard.jar所在目录,执行如下命令:

        java -jar squirrel-sql-3.9.1-standard.jar

(2)或者直接双击squirrel-sql-3.9.1-standard.jar文件

spacer.gif1552382106835.png

可以直接点击Nex选择默认配置。

2.2.3 配置squirrel sql client工具

将1.4.1章节中下载的apache-phoenix-4.14.1-HBase-1.3-bin.tar.gz解压,并将解压目录中

phoenix-4.14.1-HBase-1.3-thin-client.jar文件放到squirrel sql client安装目录的lib目录下,

如squirrel sql client安装目录为:C:\Program Files\squirrel-sql-3.9.1,

则将phoenix-4.14.1-HBase-1.3-thin-client.jar文件放到C:\Program Files\squirrel-sql-3.9.1\lib目录下。

2.2.4 使用squirrel sql client工具

双击squirrel sql client安装目录下的squirrel-sql.bat文件,启动squirrel sql client,

选择左侧的Drivers,并点击加号Create a new Driver

spacer.gif1552383202072.png

2.2.5 配置新的Driver

在弹出的Add Driver窗口中设置相应的Driver NameExample URL,Example URL只是一个URL模 板,并在Java Class Path中选择2.2.3章节中的phoenix-4.14.1-HBase-1.3-thin-client.jar,然后点击List Drivers按钮,过一小段时候后观察最下方的Class Name对应的下拉菜单中是否有值,否则,

选择org.apache.phoenix.queryserver.client.Driver项,如果没有,则手动输入org.apache.phoenix.queryserver.client.Driver。

spacer.gif1552384703773.png

Example URL:jdbc:phoenix:thin:url=http://<lemon url>:<port>;serialization=PROTOBUF

Java Class Path:C:\Program Files\squirrel-sql-3.9.1\lib\phoenix-4.14.1-HBase-1.3-thin-client.jar

Class Name:org.apache.phoenix.queryserver.client.Driver

2.2.6 创建新的Alias

选择左侧的Aliases,并点击加号Create a new Alias

spacer.gif1552387661746.png

2.2.7 配置Driver

在弹出的Add Alias窗口中设置相应的Alias NameDirverURLUserNamePassword。其中:

Driver选择2.2.5章节中创建的DriverURL则利用选中的Driver对应的模板Example URL并根据真实的Lemon URL端口号Port来构造,UserNamePassword直接填admin即可。

1552387823797.pngspacer.gif

Driver: 2.2.5章节中创建的Driver

URL:jdbc:phoenix:thin:url=http://cloudtable-for-dat-lemon-2-1-OzWH5Rdy.cloudtable.com:8765;serialization=PROTOBUF

UserName:admin

Password:admin

2.2.8 测试配置是否正确

配置完成后,点击Add Alias弹出窗下方的Test按钮,测试配置是否正确,如果弹出Connection successful则说明配置正确。

spacer.gif1552388256333.png

2.2.9 执行创表、数据写入、数据查询

spacer.gif1552389163634.png

分别执行以下的SQL语句:

create table person(id integer not null primary key, name varchar, age integer);

upsert into person values(1'zhangsan',18);

select * from person;

也可以直接通过可视化界面查看当前的表及表中数据

1552389355474.png


举报
分享

分享文章到朋友圈

分享文章到微博

建赟

发帖: 442粉丝: 28

级别 : 外部版主

发消息 + 关注

发表于2019-5-23 14:56:00
直达本楼层的链接
沙发
显示全部楼层

了解下

点赞 评论 引用 举报

Joey啊

发帖: 84粉丝: 11

级别 : 版主

发消息 + 关注

发表于2019-8-30 10:41:18
直达本楼层的链接
板凳
显示全部楼层

点赞 评论 引用 举报

Joey啊

发帖: 84粉丝: 11

级别 : 版主

发消息 + 关注

发表于2019-8-30 10:41:23
直达本楼层的链接
地板
显示全部楼层

点赞 评论 引用 举报

游客

富文本
Markdown
您需要登录后才可以回帖 登录 | 立即注册