Citus简介
citus 是一个 PostgreSQL 插件。通过它,可以实现分布式 PostgreSQL安装和部署
本章我们将讨论 citus 的部署。分布式表
本章将通过一个讨论话题的示例来演示 citus 分布式表的设置coordinator节点的灾难处理
本章讨论 coordinator 的灾难处理。
Citus简介
- 71423
- 2022-09-19 13:14:59
citus 是一个 PostgreSQL 插件。通过它,可以实现分布式 PostgreSQL,从其官方口号可见一斑:
Distributed Postgres. At any scale.
术语
每个集群都有一个称为 coordinator(协调器) 的特殊节点(其他节点称为 worker 节点)。 应用程序将它们的查询发送到 coordinator 节点,coordinator 节点将其转发给相关的 worker 并累积结果。
对于每个查询,coordinator 要么将其 路由(routes) 到单个 worker 节点,要么将其 并行化(parallelizes) 到多个节点, 具体取决于所需数据是位于单个节点上还是多个节点上。 coordinator 通过查阅其元数据表知道如何做到这一点。 这些 Citus 特定表跟踪 worker 节点的 DNS 名称和运行状况,以及跨节点数据的分布情况。
安装
官方提供了多种安装方式:
- docker
- 二进制包
部署方式
- 单机单节点部署
- 单机多节点部署
- 多机多节点部署
- Azure 云平台集群部署
axum 操作 citus
由于 citus 只是一个 PostgreSQL 插件,所以在 axum 中,使用将其视为普通 PostgreSQL 进行操作即可。
需要注意的是,对于多节点 citus 集群来说,axum 应该只连接 coordinator 节点而不要连接任何 worker 节点。