2016-10-30 17 views
0

PostgreSQLでは、以下のクエリを使用します。カッサンドラでどうすればいいですか?CQLを使用して何百万ものランダムな行をCassandraに挿入するには?

INSERT INTO public.core_post(id, created, title, message, latitude, longitude, owner_id) 
SELECT uuid_generate_v4(), now(), 'Hello!', 'What?', null, null, 1 FROM generate_series(1,1000000); 
+0

なぜそれが必要ですか? – Ivan

+2

はcassandra-stressツールを見ましたか? –

答えて

0

いいえ、純粋なCQLではできません。

しかし、presto DBのapacheドリルや手作りのソフトウェアのような外部ツールを使用することができます。

0

ここには、あなたのクラスタに接続するPythonスクリプトがあります。次に、列にランダムなデータを含むバッチステートメントを作成して、その処理を実行できるループを作成します。

from cassandra.query import BatchStatement, SimpleStatement 
from cassandra.cluster import Cluster 
import random 

# Connect to the cluster 
cluster = Cluster(['ip', 'ip']) 
session = cluster.connect() 


for i in range(10) 
    # Create your random data 
    my_first_data = random.choice(range(15)) 
    my_second_data = random.choice(range(50)) 

    # instanciate a batch statement 
    batch = BatchStatement() 

    # create a new query with your random data 
    batch.add(SimpleStatement("INSERT INTO my_table (data1, data2) VALUES (%s, %s)"), (my_first_data, my_second_data)) 

# Execute all the queries 
session.execute(batch) 
関連する問題