2016-12-29 9 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

あなたが単一のデータセンターを持っている場合は、以下のクエリで鍵空間を作成する必要があります。クラスがSimpleStrategyある場合は必須

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

「replication_factorに」;それ以外の場合は使用されません。複数のノード上のデータのレプリカ数。

たり、複数のデータセンターを持っている場合は、使用します。

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

関連する問題