2015-11-30 148 views
3

我是Cassandra和R的新手。当我使用RCassandra包连接到Cassandra数据库时,连接正在建立。但是当试图使用任何密钥空间时,R没有响应。我用了下面的陈述。RCassandra未连接到Cassandra数据库

c <- RC.connect('192.168.1.20', 9042) 
RC.use(c, 'effesensors') 

请给我有关如何使用RCassandra避免这个问题的简单说明。

+0

当你说“尝试使用任何密钥空间”时,你的意思是什么?你是否试图从中选择?或者执行插入/删除?另外,您能否使用Cassandra的命令行界面(CLI)连接到Cassandra群集? – Nathan

+0

调用** RC.use(c,'effesensors')**语句将RStudio设置为“Not Responding”状态。 –

+0

在Cassandra CLI中运行查询怎么样? – Nathan

回答

1

使用RODBC而不是使用RCassandra。我们需要安装Cassandra ODBC驱动程序。

1

您是否知道您可能正在使用Cassandra的非默认端口?如果您可以提供Cassandra版本和RStudio版本,我可以更新我的答案。通过tarkalabs,我发现this tutorial可用作任何连接尝试之前要执行的步骤的清单。

从教程,

现在用connect.handle <- RC.connect(host="127.0.0.1", port=9160)

卡桑德拉连接到数据库的默认监听端口9160,但你可以根据你的配置更改 。要显示集群式进入你 提示RC.cluster.name(connect.handle)

只是为了验证您已连接和您的卡桑德拉实例运行尝试使用以下命令: RC.describe.keyspaces(connect.handle)

这应该带回的设置列表中你的密钥空间。如果没有返回,您要么未连接,要么Cassandra实例未正确安装。

示例输出

$system_traces$strategy_options 
replication_factor 
       "2" 

$system_traces$cf_defs 
named list() 

$system_traces$durable_writes 
[1] TRUE 

让我知道你的结果是什么,如果我的回答不工作,我会更新我的答案。祝你好运!

+0

谢谢Nathan先生。我早些时候做过同样的事情,但我正面临着这个问题。我正在使用RStudio版本0.99.489。 R版本3.2.2(32位)。 RCassandra版本0.1-3。 Datastax Cassandra Server 2.2.3(64位)。 Cassandra服务器安装在另一个系统中。 –

+0

你或其他系统位于代理服务器后面吗? – Nathan

+0

编号RC.connect('192.168.1.20',9042)给出 <指针:0x10f5dd80> attr(,“class”) [1]“CassandraConnection” –