2016-12-29 88 views
-4

如何在Cassandra中使用Python创建密钥空间?Python Cassandra不会创建密钥空间

from cassandra.cluster import Cluster 
cluster = Cluster(['cassandra.sucks.com']) 
session = cluster.connect() 

session.execute('CREATE KEYSPACE IF NOT EXISTS kong') 



File "cassandra/cluster.py", line 1998, in cassandra.cluster.Session.execute (cassandra/cluster.c:34869) 
    File "cassandra/cluster.py", line 3781, in cassandra.cluster.ResponseFuture.result (cassandra/cluster.c:73073) 
cassandra.protocol.SyntaxException: <Error from server: code=2000 [Syntax error in CQL query] message="line 0:-1 mismatched input '<EOF>' expecting K_WITH"> 
+2

我建议尝试的东西'cqlsh'并使用自动完成第一找出语法,如果你不打算尝试读取任何文件。 –

回答

3

如果你有一个数据中心应该与下面的查询创建密钥空间:

CREATE KEYSPACE IF NOT EXISTS kong WITH REPLICATION = { 'class' : 'SimpleStrategy', 'replication_factor' : 3 }; 

'replication_factor' 如果需要的类是SimpleStrategy;否则,不使用。多个节点上数据的复制数量。

或者如果你有多个数据中心,然后使用:

CREATE KEYSPACE IF NOT EXISTS kong WITH REPLICATION = {'class' : 'NetworkTopologyStrategy', 'dc1' : 3, 'dc2' : 2} 

DC1和DC2是数据中心的名称。如果class是NetworkTopologyStrategy并且您提供数据中心的名称,则为必需。该值是该数据中心中每个节点上数据的副本数量。

来源:http://docs.datastax.com/en/cql/3.1/cql/cql_reference/create_keyspace_r.html

相关问题