Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/358.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Cassandra分页在并发插入上的行为_Java_Cassandra_Pagination_Acid_Nosql - Fatal编程技术网

Java Cassandra分页在并发插入上的行为

Java Cassandra分页在并发插入上的行为,java,cassandra,pagination,acid,nosql,Java,Cassandra,Pagination,Acid,Nosql,我使用Cassanda 2.2使用java客户端和PagingState对大型结果集进行分页,如下所述: 这很有效,但我找不到任何有关Cassandra在搜索结果时插入新记录(或更新现有记录)时的行为的信息。这些新的或更改的记录是否包含在结果中,或者结果集是不可变的 用例是一个无状态web服务,客户机可以在其中查询大型结果集 编辑: 一般来说,ResultSet分页也有同样的问题(Cassandra在这里进行自动延迟获取) EDIT2:据我所知,Cassandra不支持ACID,只支持AID事务

我使用Cassanda 2.2使用java客户端和PagingState对大型结果集进行分页,如下所述:

这很有效,但我找不到任何有关Cassandra在搜索结果时插入新记录(或更新现有记录)时的行为的信息。这些新的或更改的记录是否包含在结果中,或者结果集是不可变的

用例是一个无状态web服务,客户机可以在其中查询大型结果集

编辑: 一般来说,ResultSet分页也有同样的问题(Cassandra在这里进行自动延迟获取)


EDIT2:据我所知,Cassandra不支持ACID,只支持AID事务,因此我希望在处理resultset时这里会有一种隔离,因为实现这种隔离的成本太高。整个结果集不会保存在内存中,并且在将当前结果集发送到客户端时,下一页中要返回的行是未知的

这样做的一个有趣的结果是,它打破了批量更新保证,在文档中陈述如下:

@BATCH@中属于给定分区键的所有更新都是单独执行的

关于这件事有一个公开的说法


还有一些性能方面的影响,因为在获取页面
n
时需要再次完成大量工作才能获取页面
n+1
(例如打开和读取索引文件和数据文件)。“锡拉”(Scylla)是卡桑德拉(Cassandra)的替代品,我也参与了这项工作。

@salyh那么,您尝试了哪些分页方法?如果在两个连续的页面请求之间发生插入,页面将返回不正确的数据,是否有解决方法,还是应该是乐观分页?