Cassandra数据库未通过Rcassandra与R连接

时间:2018-12-17 08:27:27

标签: r cassandra

当我使用RCassandra软件包连接到Cassandra数据库时,正在建立连接。但是当尝试使用任何键空间时,R没有响应。我使用了以下语句。

  

图书馆(RCassandra)

     

rc <-RC.connect(host =“ localhost”,端口= 9042)

     

RC.use(rc,“ db1”,cache.def = TRUE)

请随时提意见

1 个答案:

答案 0 :(得分:0)

您的问题是您直接指定端口,并且使用的是本机协议的端口,而RCassandra使用的是Thrift协议(使用端口9160),因此当它与9042端口通信时,它只是不明白它在说什么。因此,您需要完全删除port参数,或将其指定为9160,并确保在start_rpc中将true参数设置为cassandra.yaml

我研究了RCassandra的源代码,发现它没有更新超过5年。而且由于它使用Thrift而不是本机协议,因此与使用本机协议相比,您有很多限制。在下一个主要版本的Cassandra-4.0中将删除对Thrift的支持。更好的选择是围绕DataStax C / C ++驱动程序编写包装,并将基础功能公开给R。