如何在cassandra中多次插入行

前端之家收集整理的这篇文章主要介绍了如何在cassandra中多次插入行前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在cassandra列族中插入多行的最有效方法是什么.是否可以在一次通话中完成此操作.

现在我的方法添加多列,然后执行.在一个电话中,我坚持一行.我正在寻找策略,以便我可以进行批量插入.

解决方法

@H_403_7@ CQL附带了一个BEGIN BATCH … APPLY BATCH语句,可以将多个插入组合在一起,以便开发人员可以构建一个这样的批处理请求的字符串并执行它.
[ http://www.datastax.com/dev/blog/client-side-improvements-in-cassandra-2-0]

以下对我有用:

PreparedStatement ps = session.prepare(
"BEGIN BATCH" +    
"INSERT INTO messages (user_id,msg_id,title,body) VALUES (?,?,?);" +    
"INSERT INTO messages (user_id,?);" +    
"APPLY BATCH" ); 

session.execute(ps.bind(uid,mid1,title1,body1,uid,mid2,title2,body2,mid3,title3,body3));

如果您事先不知道要执行的语句,可以使用以下语法(Scala):

var statement: PreparedStatement = session.prepare("INSERT INTO people (name,age) VALUES (?,?)")
var boundStatement = new BoundStatement(statement)
val batchStmt = new BatchStatement()
batchStmt.add(boundStatement.bind("User A","10"))
batchStmt.add(boundStatement.bind("User B","12"))
session.execute(batchStmt)

注意:BatchStatement最多可以保存65536语句.很难理解这一点. 原文链接:/mssql/79323.html

猜你在找的MsSQL相关文章