硬件要求
本文将介绍用于生产部署的硬件要求和建议,实际资源需求可能会根据具体工作负载而变化。
支持的架构
RisingWave 可以在以下硬件架构上运行:
- x86_64 (64 位 Intel/AMD CPUs)
- ARM64
- 搭载 Apple Silicon 的 Mac
Compute 节点
Compute 节点用于查询处理和状态管理,更高的配置可以提高查询吞吐量。由于 RisingWave 对内存有较高的需求,因此推荐使用内存与 CPU 比例较高(4:1 或更高)的机器以提高成本效率。
- 最低配置:
- 4 个 CPU 内核
- 4 GB 内存
- 推荐配置:
- ≥8 CPU 内核
- ≥8 GB 内存
Compactor 节点
Compactor 节点执行后台的压缩作业以优化状态存储。如果 Compactor 节点的资源不足,状态访问会变得缓慢并影响整体性能。
- 最低配置:
- 1 个 CPU 内核
- 1 GB 内存
- 推荐配置:
- ≥2 个 CPU 内核
- ≥2 GB 内存
Frontend 节点
Frontend 节点解析查询并创建执行计划,可以在资源配置较低的情况下运行。
- 最低配置:无特定要求,因为 Frontend 节点是无状态的。
- 推荐配置:
- ≥2 个 CPU 内核
- ≥1 GB 内存
Meta 节点
Meta 节点管理元数据并协调集群。建议部署 2 个 Meta 节点(主节点和备份节点)以确保更快的恢复并避免 single points of failure(单点故障,SPOF)。
- 最低配置:
- 1 个 CPU 内核
- 1 GB 内存
- 推荐配置:
- ≥2 个 CPU 内核
- ≥4 GB 内存
etcd
RisingWave 利用 etcd 将 Meta 节点的数据持久化存储。需要注意的是,etcd 对于磁盘写入延迟非常敏感,磁盘写入较慢时,可能会增加 etcd 请求的延迟,进而可能影响集群的稳定性。
为了优化性能和增强稳定性,请考虑以下建议:
- 为了获得最佳的磁盘性能,建议使用本地 SSD 或高性能虚拟化块设备。如果在 Amazon EBS 上部署 etcd,则推荐使用 gp3 或更快的 SSD 卷。
- 如果只有一个 Meta 节点,请增加
meta_leader_lease_secs
的值以优化性能。 - 如果使用 MinIO,请避免在相同的磁盘上部署 etcd 和 MinIO 以防止冲突或性能下降。
- 有关磁盘性能的详细要求和建议,请参阅 etcd 文档中的磁盘部分。