UDB-SX资源规划

CPU

序列数 部署模式 CPU核心数要求 备注
1 单节点(开发/测试) 最低2核 推荐4核 建议4GB内存,对应2核以上处理器。最低处理器要求为4核2GHz。适用于功能验证、开发测试环境。
2 单节点(小规模生产) 推荐8核 适用于数据量较小、查询压力不高的业务场景。
3 集群(高可用生产) 数据节点:4核/节点起 集群总数:3节点起 适用于数据量中等、查询压力不高的业务场景。
4 集群(高可用生产) 数据节点:16核/节点起 适用于高并发搜索、复杂聚合查询、机器学习推理等场景。对于搜索密集型工作负载,官方建议使用高性能多核CPU

架构兼容性说明

UDB-SX对以下CPU架构提供官方支持:

CPU架构 支持情况
x86_64
ARM64

中国大陆CPU兼容性:基于x86架构的海光、兆芯CPU可直接运行x86版本;基于ARM架构的鲲鹏、飞腾CPU可运行ARM64版本

内存

序列数 部署模式 内存要求 备注
1 单节点(开发/测试) 最低:4 GB 推荐:8 GB RAM至少设置为4 GB。华为云CSS测试环境使用4核16GB规格作为基准配置。对于本地开发测试,8GB可获得更流畅体验。
2 单节点(小规模生产) 推荐16GB 运行UDB-SX的生产环境推荐32 GB内存。考虑到单机场景资源相对集中,建议16GB起步。
3 集群(高可用生产) 每节点:16 GB起 集群总内存:48 GB(3节点) 官方性能测试采用3节点集群,每节点规格为4核16GB,成功处理约1140万文档(2.75GB数据),平均写入吞吐达14.6万docs/s。这是经过实际验证的生产配置。
4 集群(高可用生产) 每节点:32 GB起 生产环境推荐配置:内存32 GB。对于搜索密集型或机器学习场景,32GB及以上配置可提供更优性能。

存储(磁盘)

维度 单机部署 (Single Node) 集群部署 (Cluster)
磁盘类型 建议SSD/NVMe SSD 必须SSD/NVMe(热数据节点)
I/O性能 至少3,000IOPS 建议10,000+IOPS(生产环境)
存储配比 实际数据量X1.2(缓冲空间) (实际数据X副本数)X1.3
磁盘水位线 默认85%(达到后停止分配分片) 85%(低)、90%(高)、95%(强制只读)
冗余机制 无(依赖底层磁盘 RAID 或云盘备份) 跨节点副本(Replica)容灾

详细要求说明

1、存储容量计算公式在UDB-SX中,磁盘并不是 100% 可用的。对于集群部署,您需要考虑副本带来的翻倍开销。

  • 单机所需容量 = 原始数据X索引膨胀率 (约1.1) / 压缩率

  • 集群所需容量 = 单机容量 X (1 + 副本数)X1.3(预留水位线安全空间) 2、单机部署的特殊要求

  • IO 瓶颈:单机模式下,所有的索引(Indexing)和查询(Search)负载都集中在同一组磁盘 I/O 上。如果使用普通的机械硬盘(HDD),在大规模写入(如 1Hz 高频采集)时会产生严重的 I/O Wait,导致 CPU 性能无法发挥。

  • 风险点: 一旦磁盘损坏,数据将彻底丢失。建议单机环境下至少配置 云盘快照 或底层 RAID 10。 3、集群部署的性能分层 集群模式下,您可以根据数据的新旧程度进行冷热分离:

  • 热节点 (Hot Nodes): 必须使用 NVMe SSD。UDB-SX对并发段合并(Concurrent Merging)进行了优化,高速磁盘能显著提升高并发下的写入稳定性。

  • 冷节点(Warm/Cold Nodes):可以使用性能较低但容量更大的磁盘(如大容量 HDD 或云端通用型 SSD)。

  • 远程存储 (Remote Store):这是我们UDB-SX推荐的架构。通过将数据同步备份到 MinIO 等对象存储中,可以实现“存算分离”。即使集群所有节点宕机,也能从远程存储快速恢复,且本地磁盘可以只保留最近的热数据。

  1. UDB-SX无论是单机还是集群,务必关注以下默认阈值:

  • 低水位 (85%):85%(触发分片迁移)。

  • 高水位 (90%):90%(停止分配新分片。

  • 洪水水位 (95%):95%(强制迁移分片)。

建议: 生产环境下,建议单节点磁盘容量不要超过 2TB,因为过大的磁盘在节点故障后的分片恢复(Recovery)时间会非常长,影响集群稳定性。

网络(网卡)

网络 (网卡) 要求表

维度 单机部署 (Single Node) 集群部署 (Cluster)
网卡速率 (最低) 1 Gbps (千兆) 10 Gbps (万兆)
网卡速率 (推荐) 10 Gbps 25 Gbps 或更高 (高并发环境)
网络延迟 (RTT) N/A < 1ms (数据节点间)
MTU 建议 1500 (标准) 9000 (Jumbo Frames)
流量类型 外部 REST API 访问 外部访问 + 内部数据同步 (Transport)

详细要求与实施建议

1.集群内部通信 (Internal Transport) 这是集群部署中最“吃”网络的地方。UDB-SX节点之间通过 10300 端口进行通信。

  • 分片复制: 当你写入数据时,主分片需要通过网络将数据同步到副本分片。如果网卡带宽不足,会导致写入阻塞(Backpressure)。

  • 节点检测: 如果网络拥塞导致心跳包(Ping)延迟过高,集群可能会误判节点宕机,触发不必要的分片重平衡(Rebalancing),这会进一步耗尽网络带宽,造成“雪崩效应”。

2.远程存储 (Remote Store) 的挑战 UDB-SX推荐使用远程存储。这意味着每次数据落盘的同时,都会有一份数据通过网络推送到 S3 或 MinIO。

  • 宽占用: 你的上行带宽需要能够同时支撑“副本同步”和“远程备份”。

  • 建议: 如果开启此功能,网卡务必升级至 10Gbps 以上。

3.单机部署的网络策略

  • 瓶颈点: 单机网卡的瓶颈通常不在内部,而在大批量数据导入(Bulk Indexing)或深度聚合查询。

  • 配置优化: 如果单机承担了大量的 Dashboards 可视化任务,建议将 REST API 端口(10200)与系统管理流量通过不同的虚拟网卡(VLAN)隔离,防止因查询过载导致无法登录服务器进行运维。

建议:
单机:千兆网卡是及格线,万兆是理想值。
集群:万兆(10Gbps)网卡是生产环境的强制要求。如果您的数据量级达到百万级且有双活需求,建议配置双万兆网卡绑定(Bonding)以实现高可用。