首页 > 解决方案 > Cassandra 中的一个节点可靠吗?

问题描述

我是 Cassandra 的新手,在我阅读的所有教程中,都提到我们在 Cassandra 架构中有几个节点,因为如果一个有问题,其他人可以解决。

仅使用一个节点是否会使我们面临数据丢失的风险?

我主要使用关系数据库。在 RDBMS 中使用一个节点不是问题(除了由于某种原因服务可能不可用但数据仍然存储)

我的项目对高可用要求不高,只是我的数据非常大,写了很多数据,所以我选择了Cassandra,但我想只用一个节点

这对我来说是个问题吗?我的数据是否被泄露?

标签: databasecassandrareplication

解决方案


使用单个服务器可能会导致数据丢失 - 即使在关系数据库上也是如此,因为虽然您可能有定期备份,但提交日志/重做日志存储在服务器磁盘上,直到从服务器存档。因此,服务器上的服务器磁盘故障将导致该日志丢失,并且自上次备份以来的数据被服务器保留。

使用多个服务器(关系镜像或分布式 no-sql,如 Cassandra)提供了额外的弹性并减少了数据丢失的机会 - 因为有 2 个或更多副本。

在 Cassandra 上复制因子为 3 的 3 节点集群中,要获得与单服务器场景相同的数据丢失,需要所有 3 台服务器同时关闭并且所有这些服务器都丢失磁盘(如果使用本地磁盘,则假设为本地磁盘) SAN,您将失去好处。) - 这大大降低了数据丢失的百分比。


推荐阅读