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 等对象存储中,可以实现“存算分离”。即使集群所有节点宕机,也能从远程存储快速恢复,且本地磁盘可以只保留最近的热数据。
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)以实现高可用。