当前位置: 首页 > 后端技术 > PHP

手把手教你如何通过Thrift接入云数据库HBase

时间:2023-03-29 15:16:54 PHP

摘要:手把手教你如何使用Thrift接入云数据库HBaseThrift多语言接入Thrift提供了多语言接入HBase的能力。支持的语言包包括:C++、Thrift官网的Java、Python、PHP、Ruby、Erlang、Perl、Haskell、C#、Cocoa、JavaScript、Node.js、Smalltalk、OCaml、Delphi等语言。主要流程是用户的thriftClient通过Thrift协议访问HBase的thriftserver,thriftserver将请求转发到HBase的存储服务进行数据的读写操作。总体架构图如下:通过thrift多语言访问HBase,需要进行以下步骤:1.开启HBasethriftserver服务:用户自己的控制页面点此参考。Thriftserver服务(高可用版thriftserver),你会得到一个host:port访问入口;或者可以选择ECS自建thriftserver方式,参考这里,最后自建ECSip(host)和默认端口9090作为访问入口。2.UserThrift客户端接入:一般客户常见的接入方式有python接入方式和php接入方式。这里先一步步给出php的访问方法;2.1.使用php通过thrift访问HBase:2.1.1.安装thrift编译环境;我们云HBase的thrift环境是0.9.0,所以建议客户自己搭建thrift环境也是0.9.0,这里可以从这里下载thrift0.9.0版本,下载的源码包后面我们会用到。这里需要先安装thrift编译环境。源码安装可以参考thrift官网;通过以下命令可以看到安装的thrift的版本信息;2.1.2.生成thrift访问客户端的访问文件;获取我们云HBase的Hbase.thrift文件。这里我们的云HBase使用的是thrift1协议。具体可以参考文件看格式。下载完成后,执行thrift命令进行编译;编译命令如下:上面是语言的缩写,那么常见的如下:执行thrift--genphpHbase.thrift和你以后会在该目录下获取gen-php。这是我们需要的功能包文件;另外,我们在2.1.1中获取的thrift的源码包文件将下载到Thrift源码文件夹下的/lib/php/lib下的Thrift文件夹中,gen-php是把我们的业务逻辑代码放在一个src目录下,加上我们自己的client.php代码,目录结果如下:2.1.3。php访问代码编写;这时候我们来写我们的client.php代码逻辑,上面提到的Thrift文件夹和gen-php文件夹可以根据自己的项目和个人风格来命名,这里方便大家理清后目录结构,保持原有风格;下面贴出php代码,我们下面的所有程序都在HBase中新建了一张表:代码执行结果如下:2.2.python接入流程;另外还有常见的python客户。对于python,有包含thrift的第三方python库,比如happybase。我们看到一些客户使用happybase访问HBasethrift。见文章;另外,python有丰富的库,我们可以通过pip安装Thrift,访问HBase的thrif图书馆;执行过程如下,假设用户已经安装了python和pip:上面2步完成后,就可以编写访问HBase的代码了:上面程序执行对应的结果如下:3.访问HBasethriftserver3.1.访问开启本机白名单将被访问机器的ip加入HBase集群的白名单,即可正常执行代码;本文作者:玄灵阅读原文云栖社区原创内容,未经允许不得转载