软硬件环境检查
部署 Doris 时,需要对软硬件环境进行以下检查:
-
硬件环境检查
-
服务器建议配置
-
硬盘空间计算
-
Java 环境检查
硬件环境检查
在硬件环境检查中,要对以下硬件条件进行检查:
检查项 | 建议配置 |
---|---|
CPU | 支持 AVX2 指令集。 |
内存 | 建议至少 CPU 4 倍。 |
存储 | 推荐 SSD 硬盘。 |
文件系统 | ext4 或 xfs 文件系统。 |
网卡 | 10GbE 网卡。 |
CPU 检查
当安装 Doris 时,建议选择支持 AVX2 指令集的机器,以利用 AVX2 的向量化能力实现查询向量化加速。
运行以下命令,有输出结果,及表示机器支持 AVX2 指令集。
cat /proc/cpuinfo | grep avx2
如果机器不支持 AVX2 指令集,可以使用 no AVX2 的 Doris 安装包进行部署。
内存检查
Doris 没有强制的内存限制。一般在生产环境中,可以根据以下建议选择内存大小:
组件 | 推荐内存配置 |
---|---|
FE | 建议至少 16GB 以上。 |
BE | 建议内存至少是 CPU 核数的 4 倍(例如,16 核机器至少配置 64G 内存)。在内存是 CPU 核数 8 倍时,会得到更好的性能。 |
存储检查
Doris 支持将数据存储在 SSD、HDD 或对象存储中。
在以下几种场景中建议使用 SSD 作为数据存储:
-
大规模数据量下的高并发点查场景
-
大规模数据量下的高频数据更新场景
文件系统检查
Doris 推荐使用 EXT4 或 XFS 文件系统:
-
EXT4 文件系统:具有良好的稳定性、性能和较低的碎片化问题。
-
XFS 文件系统:在处理大规模数据和高并发写操作时表现优越,适合高吞吐量应用。
网卡检查
Doris 的计算过程涉及数据分片和并行处理,可能产生网络资源开销。为了最大程度优化 Doris 性能并降低网络资源开销,强烈建议在部署时选用万兆网卡(10 Gigabit Ethernet,即 10GbE)或者更快网络。如果有多块网卡,建议使用链路聚合方式将多块网卡绑定成一块网卡,提高网络带宽、冗余性和复杂均衡的能力。
服务器建议配置
Doris 支持运行和部署在 x86-64 架构的服务器平台或 ARM64 架构的服务器上。
-
开发及测试环境
开发与测试环境中可以混合部署 FE 与 BE 实例,遵循以下规则:
-
验证测试环境中可以在一台服务器上混合部署一个 FE 与 BE,但不建议部署多个 FE 与 BE 实例;
-
如果需要 3 副本数据,至少需要 3 台服各部署一个 BE 实例。
服务器规格建议如下:
模块 CPU 内存 磁盘 网络 实例数量(最低要求) Frontend 8 核 + 8 GB+ SSD 或 SATA,10 GB+ 1GbE/10GbE 网卡 1 Backend 8 核 + 16 GB+ SSD 或 SATA,50 GB+ 1GbE/10GbE 网卡 1 -
-
生产环境
生产环境中建议 FE 与 BE 实例独立部署,遵循以下规则:
-
如果环境资源紧张,将 FE 与 BE 混部在一台服务器上,建议 FE 与 BE 数据放在不同的硬盘;
-
BE 节点可以配置多块硬盘存储,在一个 BE 实例上绑定多块 HDD 或 SSD 盘。
服务器规格建议如下:
模块 CPU 内存 磁盘 网络 实例数量(最低要求) Frontend 16 核 + 64 GB+ SSD,100GB+ 10GbE 网卡 1 Backend 16 核 + 64 GB+ SSD 或 SATA,100GB+ 10GbE 网卡 3 -
硬盘空间计算
在 Doris 集群中,FE 主要用于元数据存储,包括元数据 edit log 和 image。BE 的磁盘空间主要用于存放数据,需要根据业务需求计算。
组件 | 磁盘空间说明 |
---|---|
FE | 建议预留 100GB 以上的存储空间,使用 SSD 硬盘。 |
BE | Doris 默认 LZ4 压缩方式进行存储,压缩比在 0.3 - 0.5 左右磁盘空间需要按照总数据量 * 3(3 副本)计算需要预留出 40% 空间用作后台 compaction 以及临时数据的存储 |
Java 环境检查
Doris 的所有进程都依赖 Java。
-
在 2.1(含)版本之前,请使用 Java 8,推荐版本:
jdk-8u352
之后版本。 -
从 3.0(含)版本之后,请使用 Java 17,推荐版本:
jdk-17.0.10
之后版本。