2
我使用python Cassandra驅動程序將多個項插入並更新到Cassandra中的表中。目前我的代碼看起來像:使用python cassandra驅動程序插入cassandra的最快方法
cluster = Cluster()
session = cluster.connect('db')
for a in list:
if bool:
# calculate b
session.execute("UPDATE table SET col2 = %s WHERE col1 = %s", (b, a))
else:
# calculate b
session.execute("INSERT INTO table(col1, col2) VALUES(%s, %s)", (a, b))
插入和更新的這種方法是(都是唯一的)在列表中的條目數將被插入是非常大的很慢。有沒有更快的方法來做到這一點?
使用'。 Session.execute_async'方法與準備d語句 –
哪裏'bool'從哪裏來?它是一個內置的類名,不要將它用於你的對象 –
@AzatIbrakov執行execute_async()按順序執行查詢?如果是這樣,那麼我可以使用execute_async()來執行很多查詢,並且只需要調用最後一次調用session.execute_async()所返回的ResponseFuture對象上的result(),對吧?如果不是,那麼我應該怎麼做以確保所有查詢都已執行(即所有插入已完成)? –