如何在cassandra中多次插入行
发布时间:2020-12-12 06:23:05 所属栏目:MsSql教程 来源:网络整理
导读:在cassandra列族中插入多行的最有效方法是什么.是否可以在一次通话中完成此操作. 现在我的方法是添加多列,然后执行.在一个电话中,我坚持一行.我正在寻找策略,以便我可以进行批量插入. 解决方法 CQL附带了一个BEGIN BATCH … APPLY BATCH语句,可以将多个插入组
在cassandra列族中插入多行的最有效方法是什么.是否可以在一次通话中完成此操作.
现在我的方法是添加多列,然后执行.在一个电话中,我坚持一行.我正在寻找策略,以便我可以进行批量插入. 解决方法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语句.很难理解这一点. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- sql – LISTAGG等效于windowing子句
- SQL Server 使用BULK INSERT大批量导入数据
- sql-server – 使用dbo Schema命名的SQL Server表
- mysql 查询当天、本周,本月,上一个月的数据
- sql-server – 为什么建议将BLOB存储在单独的SQL Server表中
- sql-server-2008 – vCenter数据库选择
- sql-server-2008 – 简单语法:Alter Table语句中的多个约束
- SQLServer中Case when的一个意外问题
- sqlserver2005 express版本的外网连接问题
- SQL Server数据库入门学习总结