couchbase是否持久化数据?

couchbase是否持久化数据?,couchbase,spring-data-couchbase,couchbase-java-api,Couchbase,Spring Data Couchbase,Couchbase Java Api,我计划将数据存储到coach base集群中 我想知道如果我的沙发底座在以下情况下损坏,会发生什么情况: [考虑到没有发生活跃的交易] 一个节点从集群中向下移动(我的假设是,在该节点固定并向上移动后,它将与其他节点同步,数据将在那里)。另外,同步后请告诉我是否仍有数据丢失 群集发生故障,已修复并重新启动 请告诉我上述场景的数据持久性类比。是的,Couchbase将数据持久化到磁盘。它写入更改操作以仅在数据服务节点上追加文件 这两种情况下不太可能发生数据丢失,因为没有活动事务 如果节点发生故障,可

我计划将数据存储到coach base集群中

我想知道如果我的沙发底座在以下情况下损坏,会发生什么情况: [考虑到没有发生活跃的交易]

  • 一个节点从集群中向下移动(我的假设是,在该节点固定并向上移动后,它将与其他节点同步,数据将在那里)。另外,同步后请告诉我是否仍有数据丢失
  • 群集发生故障,已修复并重新启动

  • 请告诉我上述场景的数据持久性类比。

    是的,Couchbase将数据持久化到磁盘。它写入更改操作以仅在数据服务节点上追加文件

    这两种情况下不太可能发生数据丢失,因为没有活动事务

    如果节点发生故障,可能会发生数据丢失

    • 将更改持久化到磁盘或

    • 在完成到另一个节点的复制之前,如果bucket支持副本

    示例:具有复制功能的三节点群集

    考虑一个三节点Couchbase集群和一个bucket,每个文档有一个副本。这意味着单个文档将在两个单独的节点上存储一个副本,称之为活动副本和副本副本。Couchbase将在节点之间公平地共享文档

  • 当节点停机时,大约三分之一的活动副本和副本副本将不可用

    A.如果添加了一个全新的节点并重新平衡了集群,那么新节点将拥有与旧节点相同的活动副本和副本。如果节点失败时复制未完成,则会发生数据丢失

    B.如果节点故障转移,则故障节点上活动文档的副本将变为活动副本。如果节点失败时复制未完成,则会发生数据丢失

    C.如果发生故障的节点重新加入集群,它可以重用其现有数据,因此唯一的数据丢失将是由于未能将更改写入磁盘

  • 当集群停机时,如果磁盘出现故障,可能会发生数据丢失


  • 我不确定如果数据库不保存数据会有什么好处…@Flimzy,Couchbase 5.0 Beta版不使用磁盘存储:“这些是Couchbase存储桶的替代品,可在不需要持久性时使用:例如,当重复访问磁盘涉及太多开销时。这使得内存性能高度一致,没有基于磁盘的波动。它还允许更快的节点重新平衡和重新启动。“谢谢你,杰夫。除了磁盘故障之外,使用它也很好。我的用例是使用couchbase作为缓存,因此我想知道持久性机制。谢谢你的回答。@Flimzy,我一定会查看有关临时存储桶的文档。