1

我正在阅读“Cassandra --- The Definitive Guide”一书。在一页上,这本书说

Dynamo Cassandra 选择始终可写,选择将协调的复杂性推迟到读取操作,并实现巨大的性能提升。

但我不完全理解为什么总是可读比总是可写更昂贵,谁能给我直觉或一些例子?例如,如果数据库选择“始终读取”,那么它可能会受到什么样的性能损失?

4

1 回答 1

3

@基拉尔

Cassandra 中的写入操作仅涉及将数据(带有时间戳)附加到文件(以简化)。因此,写作速度非常快。数据核对的负担被带到了读取时间。

在读取一些数据时,Cassandra 将从多个节点读取值并进行合并排序以获取最新版本的写入数据,使用写入时间戳作为比较的平均值。因此,由于您需要做一些工作,因此据说读取的性能略低于写入。

话虽如此,Datastax 的人已经做了很多工作,现在读取性能大致相当于写入性能。

这个解释非常简单。有关更多详细信息,您可以在此处此处阅读解释写入路径/读取路径的官方文档

于 2013-09-20T19:31:41.933 回答