R语言连接hbase问题疑解

原创 2016年08月29日 19:15:26

安装rhbase出现的问题

安装rhbase需事先安装thrift,在此采用yum安装:

# yum -y install thrift thrift-devel

下载rhbase包:https://github.com/RevolutionAnalytics/RHadoop/wiki/Downloads
安装命令:

R CMD INSTALL "rhbase_1.2.1.tar.gz"
In file included from Hbase.cpp:7:0:
Hbase.h:10:24: fatal error: TProcessor.h: 
#include <TProcessor.h>
^
compilation terminated.
/usr/lib/R/etc/Makeconf:143: recipe for target 'Hbase.o' failed
make: *** [Hbase.o] Error 1
ERROR: compilation failed for package ‘rhbase’
* removing ‘/home/user/R/x86_64-pc-linux-gnu-library/3.2/rhbase’

会发现报了一个错。
检测下thrift是否安装正确:

# pkg-config --cflags thrift

发现为空,此时则需修改/usr/lib64/pkgconfig/目录下的thrift.pc文件:

将:includedir=/usr/include
修改成:includedir=/usr/include/thrift

再次检测:

# pkg-config --cflags thrift
-I/usr/include/thrift

如上所示为正常;再次安装rhbase:

# R CMD INSTALL "rhbase_1.2.1.tar.gz"

至此,安装应当完成!

连接hbase出现的问题

应数据部门需要,R要调用hbase。因已安装了thrift框架并启动了服务,所以便直接安装了rhbase包,安装完毕后,调用rhbase:

# R
>library(rhbase)
>hb.init()
    <pointer: 0x16494a0>
    attr(,"class")
    [1] "hb.client.connection"
>hb.list.tables()
    未定义方法名:"getTableNames"

如上当调用hb.list.tables()时显示未定义方法名:“getTableNames“,调试了半天,没能成功,便询问数据部门同事,如何查看rhbase调用了thrift,也因我们之前没有接触过thrift,也不知道如何调用,便只能百度。
结果是从这篇文章找到答案:Thrift介绍与应用(三)—hbase的thrift接口
原因就是之前thrift启动的是thrift2。故对此服务进行重启:

# hbase-1.x/bin/hbase-daemon.sh stop thrift2
# hbase-1.x/bin/hbase-daemon.sh start thrift
# jps

通过jps可查看thrift服务是否有启动。启动后,在R中重新输入代码,可以发现能正常运行。

版权声明:本文为博主原创文章,未经博主允许不得转载。

HBase基本数据操作详解

HBase基本数据操作详解【完整版,绝对精品】 存储,xue'x 原文:  http://blog.csdn.net/u010967382/article/details/37878701...

R连接hbase错误(Can't get the location)

最近R通过thrift连接hbase经常报出如下错误,该问题一般是连接超时引起的,可通过修改配置文件解决。2016-10-09 14:33:58,573 WARN [thrift-worker-13...

浅谈R语言

在大数据时代下,随之引起了数据挖掘,数据分析,机器学习等的迅速发展。于此同时,也让人们越来越注意到R语言功能的强大。在此之前,R语言几乎只是一些统计学家们再用。R是统计领域广泛使用的诞生于1980年左...

Hbase在连接api时遇到的问题

一,首先请先看图,是不是遇到了这样的问题: 二,解决方法: 这是因为连接不上你的虚拟机,或是你在运行时没有将hadoop,zookeeper,hbase,其中的一个启动好。 如果是第一种情况: ...

HBase--HTable连接池HConnections用法

HTable连接池HConnections用法 实例代码,代码转载:http://blog.csdn.net/u010967382/article/details/38046821package f...

R语言连接数据库中文问题

前段时间,我问一个写了好些年代码的资深高手,我说你平时如果要做数据分析以及可视化专题图表的时候,一般用啥来做?他告诉我,做项目的时候,都是写JAVA拼啊…… 我说,那你为什么不考虑用R语言或者Pyt...

hbase和R之thirft探究

MR去调用R的时候导致R卡住,最终超时退出。分布式的测试比较痛苦。 free检查内容,top检查cpu,iostat检查硬盘,发现都未达到瓶颈,那么问题出在哪里?细细检查代码,一行一行定位,发现根本问...

RHadoop安装

*实验环境: ********************************************************************************* hadoop集群(vi...

Hadoop之RHbase的rhbase<hbScannerGetList>:: (IOError) Default TException.

接上篇http://blog.csdn.net/yibei8811/article/details/46842079 MapReduce调用R的时候会抛出一些异常,我们需要重现它。 Rhbase获取的...

Mapr与Hbase工作(三)——启用HBase的访问控制

开始在3.0版本中MAPR分布的Hadoop,HBase的支持访问控制列表(ACL)来限制用户权限在系统上。在群集上启用HBase的访问控制列表,请执行下列步骤: 对HBase的区域服务器,编辑...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:R语言连接hbase问题疑解
举报原因:
原因补充:

(最多只允许输入30个字)