Cassandra NetworkTopologyStrategy复制

时间:2013-03-17 17:59:32

标签: cassandra

我在Amazon EC2的两台Linux机器上安装并启动了Cassandra。我还设置了cassandra.yaml来使用属性文件snitch并将cassandra-topology.properties文件配置如下:

  <external IP 1>=AWS1:R1
  <external IP 2>=AWS2:R1

然后创建一个密钥空间,如下所示:

 create keyspace myks with strategy_options = [{AWS1:1,AWS2:1}]  and placement_strategy='NetworkTopologyStrategy'; 

然后我创建了一个列系列,并尝试插入一行...但是,当我尝试插入时,我从CLI获得了空值。我错过了配置中的一些内容吗?

我怎样才能知道发生了什么?

另外 - Cassandra在启动时只读取了cassandra拓扑吗?

由于

1 个答案:

答案 0 :(得分:1)

看起来密钥空间创建没有正确完成。这是一个简单的事实,无论何时在填充时获取UnavailableException(),都要理所当然地认为创建密钥空间存在问题。在您的情况下,您没有提到所需placement_strategy的完整类路径

CREATE KEYSPACE myks WITH placement_strategy = 'org.apache.cassandra.locator.NetworkTopologyStrategy'
AND strategy_options=[{AWS1:1,AWS2:1}];

是Cassandra仅在创建密钥空间(启动)时读取拓扑