警告

多节点支持已停止.

TimescaleDB v2.13 是包含 PostgreSQL 13、14 和 15 版本多节点支持的最后一个发行版。

将分布式超表的复制因子设置为给定值。更改复制因子不会影响现有数据块的副本数量。在更改复制因子后创建的数据块将根据新的复制因子值进行复制。如果无法满足复制因子要求,因为已附加的数据节点数量少于新的复制因子,则命令将中止并报错。

如果现有数据块的副本数量少于新的复制因子值,该函数将打印警告。

名称类型描述
hypertableREGCLASS要更新复制因子的分布式超表。
replication_factorINTEGER复制因子的新值。必须大于 0,并且小于或等于已附加数据节点的数量。

在以下情况下会报错:

  • hypertable 不是分布式超表。
  • replication_factor 小于 1,这不能在分布式超表上设置。
  • replication_factor 大于已附加数据节点的数量。

如果需要更大的复制因子,则需要使用 attach_data_node 附加更多数据节点。

将分布式超表的复制因子更新为 2

SELECT set_replication_factor('conditions', 2);

如果分布式超表的任何现有数据块的副本数量少于 2,则会显示警告示例

WARNING: hypertable "conditions" is under-replicated
DETAIL: Some chunks have less than 2 replicas.

为具有 2 个已附加数据节点的超表提供过大复制因子的示例

SELECT set_replication_factor('conditions', 3);
ERROR: too big replication factor for hypertable "conditions"
DETAIL: The hypertable has 2 data nodes attached, while the replication factor is 3.
HINT: Decrease the replication factor or attach more data nodes to the hypertable.

关键词

在此页面上发现问题?报告问题 或 编辑此页面 在 GitHub 上。