草庐IT

java - 你能用 Apache Thrift 代替 JNI 吗?

我刚刚接触到Thrift,最近开始使用JNI。据我所知,Thrift为您提供了定义不同语言之间接口(interface)的工具(如果我错了请纠正我)。根据我的经验,JNI似乎在Java和C++之间做了类似的工作。我想知道是否可以使用Thrift来完成我目前在JNI中执行的任务。如果是,我应该为哪些任务使用Thrift,我应该在什么时候使用JNI?谢谢! 最佳答案 当您在不同进程之间进行通信时,您应该使用thrift或类似的RPC库。在同一进程中在Java和C之间传递方法调用时,可以使用JNI。使用thrift的成本大约比使用JNI高

python - 从 Python 和 happybase/Thrift 连接到 Hbase

我已经安装了ClouderaManagerExpress5.9.0安装了HBase,Thrift服务器在VirtualBox虚拟机中的CentOS7.3上的端口9090上运行。请帮助找出我无法通过happybase成功连接的原因,或者帮助确定下一步要执行的操作。我是一名经验丰富的Java程序员,正在学习Python。我有使用本地接口(interface)从Java使用Hbase的经验,尽管不是在这个特定环境中。我已验证我可以使用hbaseshell创建表、插入数据等。我已验证9090(thrift)正在监听并接受连接。我想我已经验证Thrift服务器正在使用与happybase连接参数

php - 无法启动 Hbase Thrift 服务器

我在运行Ubuntu12.04的ubuntu系统中以伪分布式模式安装了Hadoop1.2.1和Hbase0.94.8。一切正常,所有守护进程都在运行。为了使用php访问hbase,我下载并安装了thrift0.9.1。$thrift-versionThriftversion0.9.1但是当我尝试使用命令启动thrift服务器时$/usr/lib/hbase/hbase-0.94.8/bin/hbasethriftstartthrift服务器开始启动。但在某个时刻终端挂起。终端的最后几行是14/02/1915:30:48INFOmortbay.log:Loggingtoorg.slf4j

hadoop - 元数据错误 : org. apache.thrift.transport.TTransportException

这个错误是什么意思?“元数据错误:org.apache.thrift.transport.TTransportException?”在什么情况下会出现此错误?我在创建表和将数据加载到表中时遇到此错误。 最佳答案 org.apache.thrift.transport.TTransportException,这是一个非常普遍的错误,该消息描述了hiveserver有问题并建议您查看Hive日志。如果您能够访问完整的日志堆栈并共享确切的详细信息,则可能会找到此问题的真正原因。大多数时候,我遇到这个错误就像配置单元元数据问题、无法访问配置

hadoop - Jcascalog 查询 HDFS 上的 thrift 数据

我读了NathanMarz关于lambda架构的书。实际上,我正在对这个解决方案进行概念验证。我在构建Jcascalog查询时遇到困难。这是我们感兴趣的节俭模式的一部分:unionArticlePropertyValue{1:decimalquantity,2:stringname;}unionArticleID{1:intid;}structArticleProperty{1:requiredArticleIDid;2:requiredArticlePropertyValueproperty;}unionDataUnit{1:TicketPropertyticket_property

javascript - Hive - Thrift - readMessageBegin 中缺少版本,旧客户端?

你好,我正在尝试构建一个nodejs客户端来使用thrift查询我的hive数据库,但我遇到了一个奇怪的问题......我已经用thrift生成了我的nodejs客户端API(thrift-r--genjs:nodeTCLIService.thriftTCLIService是定义Hive服务的节俭文件)现在我尝试连接到Hive但我的OpenSession正在等待中......也许我没有做正确的调用但我不在网上找不到任何最新的东西(每个thrift/node/hive项目都有4或5年的历史)。你能看看我做错了吗?谢谢TCLIService.thrift://OpenSession()//

python - 通过 Thrift 在 HBase 中的 mutateRow() 需要未记录的第四个参数

当我尝试通过Thrift(特别是Python)对HBase进行插入/更新时,mutateRow()需要第四个参数“属性”。Thrift表示此列是字符串->字符串映射。所有示例和在线讨论都没有提到这第四个专栏,甚至提供了相同、确切版本的HBase的Thrift示例也没有。如果可以,请提供创建表、定义列族、插入行和转储数据的完整示例。 最佳答案 没问题。此外,我不只是转储创建列的值,而是转储修改后的列的最后三个版本,只是因为它很酷。为了完整起见,我粗略地做了以下事情来让Thrift工作:下载并构建了Thrift(使用SVN..2012-

.net - 在 .NET 中使用 Thrift 在 Hbase 上进行 MapReduce?

我可以使用HadoopStreaming在.NET中使用thrift在HBase上运行MapReduce作业吗?或者是否有任何其他方法可以从.NET在HBase上运行MapReduce作业? 最佳答案 您还可以使用RESTAPI(stargate)。然而,thrift或stargate服务器都不是运行MapReduce作业的好方法。两者都需要一个单独的守护进程,这将成为一个单一的争论点,并且不会提供数据局部性。Javamapreduceapi识别输入拆分的数据局部区域。所以关键是将javaapi与.Net一起使用。Thisquest

java - 组织.apache.thrift : Invalid method name: 'authenticate'

我正在运行出现此错误的用户手册中的一些基本Accumulo代码。简单的谷歌搜索没有提供任何有用的信息。错误org.apache.accumulo.core.client.AccumuloException:org.apache.thrift.TApplicationException:Invalidmethodname:'authenticate'atorg.apache.accumulo.core.client.impl.ServerClient.execute(ServerClient.java:77)atorg.apache.accumulo.core.client.impl.C

php - 在 PHP 中通过 Hive/Thrift 查询数据库不起作用

我正在尝试通过PHP中的Hive/Thrift查询数据库。但是,我不断收到错误消息:TSocket:timedoutreading4bytesfromXYZ我正在使用来自的代码https://cwiki.apache.org/Hive/hiveclient.html#HiveClient-PHP连同这个PHPThrift客户端https://github.com/garamon/php-thrift-hive-client我的代码:setSendTimeout(30*1000);$socket->setRecvTimeout(30*1000);$transport=newTBuffer