cql 中的批处理究竟是如何工作的

How exactly batch work in cql

我正在查看 datastax CQL Java Driver 2.1 驱动程序文档以及 CQL 2.X 参考 pdf:

在 CQL 参考 pdf 中:

Batches are atomic by default. In the context of a Cassandra batch operation, 
atomic means that if any of the batch succeeds, all of it will. 

在 CQL java 驱动程序 pdf 中:

Batch operations
The BATCH statement combines multiple data modification statements (INSERT, UPDATE, DELETE) into
a single logical operation which is sent to the server in a single request. Also batching together multiple
operations ensures these are executed in an atomic way: either all succeed or none.

所以我从一开始就明白,即使批次内的单个查询成功,批次也是成功的。

从第二个开始,我了解到即使批处理中的单个查询失败,批处理也会失败

那么具体是什么?

logged 批次的目的是原子性。如果批次中的任何一个查询失败,则整个批次都将失败,如果批次成功,则意味着批次中的每个查询都成功。

either all succeed or none 准确。