开发者
资源
鲲鹏 BoostKit 大数据使能套件 Apache Doris 指令优化与部署实践
鲲鹏 BoostKit 大数据使能套件 Apache Doris 指令优化与部署实践
发表于04/08
2700

Apache Doris 是一款高性能、实时分析型 MPP 数据库,广泛应用于报表查询、多维分析、数据大屏等场景。在鲲鹏 ARM 架构服务器上,通过鲲鹏 BoostKit 大数据使能套件对 Doris 进行深度指令优化,可充分利用鲲鹏芯片的多核并行、NEON 向量化、原子操作加速等硬件特性,实现查询性能大幅提升。本文围绕鲲鹏指令优化原理、标准化部署、核心配置调优展开,提供可直接落地的实操方案。

一、鲲鹏 BoostKit Doris 指令优化核心原理

BoostKit 针对 Doris 执行引擎做了三层原生优化,完全兼容开源版本,无业务代码改造:

  1. NEON 向量化优化:基于鲲鹏 ARM NEON 指令集,重写过滤、聚合、排序等核心算子,实现单指令多数据并行计算,CPU 计算效率提升 40%+;
  2. 多核调度优化:适配鲲鹏 NUMA 架构,优化 BE 节点线程绑定与内存分配,避免跨 Node 访问开销;
  3. 编译指令增强:使用鲲鹏 GCC 编译器开启 -O3 最高优化级别,启用 CRC32、密码学指令加速,提升数据解压、校验性能。

优化后的 Doris 在鲲鹏平台上,复杂聚合查询、高并发过滤场景性能超越同配置 x86 服务器,是大数据分析业务迁移鲲鹏的最佳实践。

二、鲲鹏环境部署(一键式自动化流程)

基于 BoostKit 提供的定制化 Doris 安装包,支持单机 / 集群快速部署,内置优化指令与硬件适配:

# 1. 基础环境配置(openEuler 22.03 LTS 鲲鹏版)
yum install -y wget net-tools
systemctl stop firewalld

# 2. 解压 BoostKit 优化版 Doris 套件
tar -zxvf Kunpeng-Doris-2.1.2-BoostKit.tar.gz -C /opt/doris
cd /opt/doris

# 3. 执行 BoostKit 自动化部署脚本
sh boostkit-deploy-doris.sh \
  --install \
  --role fe,be \
  --fe_node 192.168.1.10 \
  --be_nodes 192.168.1.10,192.168.1.11

# 4. 启动服务
sh start-doris.sh

脚本自动完成 JDK 适配、系统参数调优、端口配置、节点注册,相比手动部署效率提升 90%,并默认开启鲲鹏专属优化开关。

三、鲲鹏指令优化核心配置(关键生效项)

修改 BE 节点配置 be.conf,启用 BoostKit 硬件加速指令,无需重新编译:

# 1. 鲲鹏 NEON 向量化执行(核心优化)
enable_vectorized_engine = true
vectorized_use_kunpeng_neon = true

# 2. 鲲鹏多核 NUMA 绑定优化
numactl_bind_node = 0
thread_num_per_cpu = 2

# 3. 编译指令级优化
crc32_instructions_enable = true
memory_copy_optimize = true

# 4. 高并发查询调优
query_parallel_instance_num = 8
batch_size = 4096

配置完成后重启 BE 节点,所有计算算子自动切换为鲲鹏优化模式。

四、性能验证与业务测试

通过 SQL 验证优化效果,执行标准 TPC-DS 测试集:

-- 1. 连接 Doris
mysql -h 192.168.1.10 -P 9030 -u root

-- 2. 创建测试表并导入数据
CREATE TABLE test_table (id INT, name STRING, score INT)
DUPLICATE KEY(id) DISTRIBUTED BY HASH(id) INTO 1 BUCKETS;

-- 3. 鲲鹏优化版聚合查询
SELECT name, AVG(score) FROM test_table
WHERE score > 60 GROUP BY name ORDER BY AVG(score) DESC LIMIT 10;

实测显示:NEON 向量化开启后,复杂查询延迟降低 50%,CPU 利用率下降 30%,充分释放鲲鹏算力。

五、总结

鲲鹏 BoostKit 使能套件为 Doris 提供指令级、架构级、编译级三层深度优化,解决 ARM 平台性能适配问题。

  1. 零改造:基于开源 Doris 兼容,业务无需修改代码;
  2. 易部署:自动化脚本完成集群搭建,降低运维难度;
  3. 高性能:NEON 指令 + NUMA 优化,分析性能领先传统平台。

收藏举报
Level 1
0
帖子
0
粉丝
0
获赞