Java Cassandra:如何在一个客户端请求中发送多个写/读请求?

Java Cassandra:如何在一个客户端请求中发送多个写/读请求?,java,cassandra,pipeline,Java,Cassandra,Pipeline,我正在开发一个应用程序,需要向cassandra服务器发送多个请求。单个请求是一种写/读请求,执行间隔很短。我观察到往返时间的一个主要瓶颈 我可以将请求通过管道传输到cassandra以避免RTT,就像Redis中的管道传输一样。如果您使用的是cassandra 1.2或更高版本,则可以使用批处理来包装多个插入/更新语句 例如: BEGIN BATCH INSERT INTO users (userid, password, name) VALUES ('user2', 'ch@

我正在开发一个应用程序,需要向cassandra服务器发送多个请求。单个请求是一种写/读请求,执行间隔很短。我观察到往返时间的一个主要瓶颈


我可以将请求通过管道传输到cassandra以避免RTT,就像Redis中的管道传输一样。

如果您使用的是cassandra 1.2或更高版本,则可以使用
批处理
来包装多个
插入
/
更新
语句

例如:

BEGIN BATCH
  INSERT INTO users (userid, password, name)
      VALUES ('user2', 'ch@ngem3b', 'second user');
  UPDATE users SET password = 'ps22dhds' WHERE userid = 'user3';
  INSERT INTO users (userid, password) VALUES ('user4', 'ch@ngem3c');
  DELETE name FROM users WHERE userid = 'user1';
APPLY BATCH;

.

我们是否可以像multi-get功能一样,对read执行类似的操作。我明白,批处理不能用于读取。但是,我可以使用SELECT IN,但我想我不能动态地使用变量绑定变量。