3.1、访问机器开通白名单
将访问的机器的ip加入HBase集群的白名单,然后就可以正常实行代码;
择要:手把手教你利用Thrift访问ApsaraDB for HBase
Thrift 多措辞接入
Thrift 供应多措辞访问HBase的能力,支持的措辞包从Thrift官网看括: C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, OCaml , Delphi 以及别的措辞.紧张流程是用户thrift Client 通过Thrift协议访问HBase的thriftserver,thriftserver做要求转发给HBase的存储做事来做数据的读以及写操作.大概架构图如下:
要通过thrift 多措辞访问HBase须要以下几步:
一、开通HBase thriftserver做事:
在用户自己管控页面点击这里参考开通thriftserver做事化(高可用版本thriftserver),会得到一个host:port的访问入口;或者自己可以选择ECS自建thriftserver方法,参考这里,终极自建ECS的ip (host)以及默认的话9090端口作为访问入口。
二、用户Thrift client访问:
一样平常客户常见的访问办法是python的访问办法以及php的访问办法 ,这里我们先一步步给出php的访问办法;
2.1 . 以php走thrift访问HBase:
2.1.1 . 安装thrift 编译环境;
我们云HBase的thrift环境是0.9.0,以是建议客户自己建立自己的thrift环境也是0.9.0,这里可以从这里下载thrift的0.9.0 版本,下载的源码包我们后面会用到,这里须要先安装thrift编译环境,对付源码安装可以参考thrift官网;
通过如下命令可以看出安装thrift的版本信息;
thrift --version
2.1.2. 天生thrift访问client的访问文件;
我们从这里下载出我们云HBase的Hbase.thrift文件,这里我们云HBase利用的是thrift1协议,详细可以参考文件看出利用格式,下载完成往后实行thrift命令进行编译;
编译命令如下:
thrift --gen <language> Hbase.thrift
上述是措辞的缩写,那么常见的有如下:
thrift --gen php Hbase.thrift
thrift --gen cpp Hbase.thrift
thrift --gen py Hbase.thrift
实行thrift --gen php Hbase.thrift 往后会在目录下得到gen-php 这个便是我们须要的函数包文件;
thrift git:(last_dev) ll
total 56
-rw-r--r-- 1 xuanling.gc staff 24K 3 5 15:06 Hbase.thrift
drwxr-xr-x 3 xuanling.gc staff 96B 8 1 16:03 gen-php
此外我们在2.1.1得到thrift的源码包文件将下载到的Thrift源码文件夹下的/lib/php/lib下面的Thrift文件夹以及gen-php一起丢在我们的业务逻辑代码一个src目录下面,加上我们自己的client.php的代码,目录结果如下所示:
[root@xxxxxxxxxxx thrift_client]# ll
total 12
-rw-r--r-- 1 zookeeper games 2743 Aug 2 11:16 client.php
drwxr-xr-x 3 zookeeper games 4096 Aug 2 01:22 gen-php
drwxr-xr-x 12 zookeeper games 4096 Aug 2 01:22 Thrift
2.1.3. php访问代码编写;
这个时候,我们来编写我们的client.php代码逻辑,上述的Thrift文件夹以及gen-php文件夹,可以随自己项目以及个人风格命名,这里方便大家搞清目录构造,就保留原来风格;下面贴出php的代码,我们下面的所有程序都是在HBase 建了一张表\"大众new\"大众:
代码实行结果如下:
2.2.python访问流程;
此外还有常见的python的客户,对付python的话,有happybase这种python的第三方包含thrift的库去做,我们见过一些客户利用Happybase进行访问HBase thrift,拜会文章;此外,python 有丰富的库,我们通过pip可以安装thrift,以及访问HBase的thrift库;实行流程如下,假设用户已经安装python以及pip:
上面2步实行完成往后,既可以编写访问HBase的代码:
对应上述的程序实行的结果如下:
更多资讯更在云栖科技联播~
快点关注我认识我爱上我啊~~~