cockroachdb - 每个节点是否需要能够保存完整的数据库?

标签 cockroachdb

理论上,我可以拥有 10,000 个节点,全部配备 1 GB HD,并在它们之间存储 100 GB 数据库吗?

我需要为此设置某些选项吗?或者我需要的配置?

谢谢。

最佳答案

每个节点不需要保存整个数据库。

cockroach二进制检查它正在运行的机器并找到可用的磁盘空间;这些信息通过 Gossip 协议(protocol)与其他节点共享,Cockroach 通过算法决定如何最好地存储数据(由您的 Replication Zones 控制)。

但是,可用的总磁盘空间应大于数据库大小的 3 倍。例如,一个 100gig 的数据库需要集群中所有机器总共至少 300gigs。

回答您的后续问题:

  • 理论上,您可以拥有 10,000 个节点,每个节点都有 1gig 硬盘驱动器,在它们之间存储 100gg 数据库。但这是不现实的,因为 Cockroach 目前(从 1.0.1 开始)可能在 10,000 个节点通信时遇到一些问题。 Cockroach Labs 尚未测试过任何此类数据。
  • 无需特殊设置或配置。就像我提到的,一切都是通过算法处理的。

关于cockroachdb - 每个节点是否需要能够保存完整的数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44550180/

相关文章:

cqrs - CockroachDB 作为 Eventstore 是个好主意吗?

cockroachdb - CockroachDB 是否支持全文搜索?

sql - 联接如何在 Cloud Spanner 数据库中工作?

kubernetes - 将本地 CockroachDB 节点添加到 Kubernetes 中托管的集群

kubernetes - Kubernetes中的CockroachDB快照备份

jsonb - cockroachdb jsonb 选择查询

cockroachdb - 如何加快 CockroachDB 中的插入性能

sql - 使用 cloud-spanner 进行本地开发

database-backups - 在 Cockroach 上恢复数据库时,为什么恢复的索引条目/行数存在差异?

hibernate 和使用数据库索引会在 CockroachDB 上创建 SQL 语法错误