假设我将一条记录写入cassandra集群,并立即读取它。卡桑德拉怎么能保证我读到的是我刚刚写的最新结果?

假设我将一条记录写入cassandra集群,并立即读取它。卡桑德拉怎么能保证我读到的是我刚刚写的最新结果?,cassandra,cassandra-3.0,Cassandra,Cassandra 3.0,假设我将一条记录写入cassandra集群,并立即读取它。可能是写的过程还没有结束。卡桑德拉如何保证我读到的是我刚写的最新结果?卡桑德拉具有可调整的一致性。由您决定需要多少一致性—始终取决于可用性成本 如果你写的东西根本没有被确认,你就没有任何保证,但是你可以把数据拿回来 您可以使用consistentylevel.ALL强制Cassandra,以强制持有该分区密钥的所有节点确认您的写入,并强制所有节点在读取时发送数据。这会很慢,使用RDBMS可能会更好 一个好的中间道路是一致性 这是你的决定,

假设我将一条记录写入cassandra集群,并立即读取它。可能是写的过程还没有结束。卡桑德拉如何保证我读到的是我刚写的最新结果?

卡桑德拉具有可调整的一致性。由您决定需要多少一致性—始终取决于可用性成本

如果你写的东西根本没有被确认,你就没有任何保证,但是你可以把数据拿回来

您可以使用consistentylevel.ALL强制Cassandra,以强制持有该分区密钥的所有节点确认您的写入,并强制所有节点在读取时发送数据。这会很慢,使用RDBMS可能会更好

一个好的中间道路是一致性

这是你的决定,不是卡桑德拉的决定。如果您想保证它,请确保您的写入和读取在适当的一致性级别上进行。