PHP-CASSANDRA-LUCENE 带排序的分页

PHP-CASSANDRA-LUCENE Paging with sorting

我正在尝试在 cassandra 中使用分页获取排序的记录,它使用 lucene 索引进行搜索和排序

注意:用户 table

共有 26 行

案例一:升序分页排序

cqlsh > paging 10;
cqlsh > SELECT user_id FROM user WHERE category_id = 'e4da3b7f-bbce-2345-d777-2b0674a318d5' AND expr(user_index, '{filter:[{type:"match", field:"is_primary", value:true}], sort:[{field: "user_id",reverse:false}]}');

这将按 user_id 前 10 行、第二个 10 行然后最后 6 行的升序给出所有 26 行,这很好,但在情况 2

中出现

案例二:分页降序排列

cqlsh > paging 10;
cqlsh > SELECT user_id FROM user WHERE category_id = 'e4da3b7f-bbce-2345-d777-2b0674a318d5' AND expr(user_index, '{filter:[{type:"match", field:"is_primary", value:true}], sort:[{field: "user_id",reverse:true}]}');

这将只给出 19 行,按 user_id 前 10 行,然后是第一页相同的 9 行

这是不是说明cassandra分页和lucene排序不能同时使用?如果是,那么还有其他方法可以使用 cassandra 分页对 lucen 索引进行排序吗?回答时请考虑基于时间轴的排序和分页不能在这里应用,因为我在排序时必须考虑太多的列。

分页和排序应该一起工作。您使用的是 Apache Cassandra 和 Lucene 索引插件的哪个版本?

您能否提供 table 和索引创建语句以及每个查询返回的行? user_idmac_address 的值足以重现该问题。