【发布时间】:2016-10-04 03:02:13
【问题描述】:
我对 cassandra 最终恒定性与查询排序感到困惑,我有以下问题
- 如果我按顺序发送 2 个查询(不打开 isIdempotent 属性)。第一个查询是删除记录,第二个查询是创建记录。查询 2 是否可能在查询 1 之前执行。
我的 java 代码将如下所示
public void foo(){
delete(entity);//First delete a record
create(entity); //Second create a record
}
另一件事我没有在我的查询中指定任何时间戳。
2) 我的第二个问题是,Cassandra 最终是一致的。如果我按顺序发送上述两个查询并且它没有被复制到所有节点,这些查询会在实际复制到所有节点时保持顺序吗?
我尝试查看 cassandra 文档,虽然它谈到了批处理操作中的查询排序,但没有谈到非批处理操作中的查询排序。
我正在使用 cassandra 2.1
【问题讨论】:
-
看看 LWT。请注意,对于大多数用例,您可能不需要它。
-
其实我想知道在没有 lwt 的情况下如何在 Cassandra 中进行排序
-
最后一次写入按时间戳获胜
-
如果我的评论正确,这意味着,如果客户删除了一条记录,并在一秒钟内创建了一条具有相同参数的记录,那么创建可能会在删除之前执行?
标签: datastax datastax-enterprise cassandra-2.1 cassandra-cli spring-data-cassandra