我知道 Apache Cassandra 中的每一列都有一个附加的时间戳,并且通过查看时间戳或比较值来确定性地解决单个列的读取冲突。
假设我将一列添加到动态列集。我将此列写入单个节点。然后我将另一列添加到同一个列存储,但这次添加到另一个节点。Apache Cassandra 如何合并这两者?合并后两列都存在吗?
小智 5
将 cassandra 数据库视为不同节点上的一组数据库的最佳方式,而是作为一个单独的数据库。将列添加到第一个节点会将其添加到所有其他节点。数据的实际写入次数取决于您的复制策略和复制因子,但数据的每个副本都将相同。
因此,如果您告诉第一个节点有关新列的信息,第二个节点将自动理解它并能够访问该数据。如果您将同一列中的不同数据告诉第二个节点,它将覆盖旧数据或添加新数据,具体取决于您正在写入的行中是否已有数据。
如果您向第二个节点添加新列,则该列中的所有数据和第一列中的数据将同时存在,并且可以通过任一/任何节点进行查询。
归档时间: |
|
查看次数: |
1161 次 |
最近记录: |