---
title: ClickHouse使能OmniMV性能调优实践-官方技术文章-鲲鹏社区
description: 基于鲲鹏920处理器在CentOS 7.6/openEuler22.03-LTS-SP1系统下对ClickHouse使能OmniMV的SSB性能瓶颈分析并调优。
keywords: ClickHouse,OmniMV,使能,性能调优实践,官方技术文章,鲲鹏社区,实践背景概述,测试环境信息
url: https://www.hikunpeng.com/developer/techArticles/20250911-1?envFlag=1
section: (其他)
---

# ClickHouse使能OmniMV性能调优实践-官方技术文章-鲲鹏社区

URL: https://www.hikunpeng.com/developer/techArticles/20250911-1?envFlag=1
描述: 基于鲲鹏920处理器在CentOS 7.6/openEuler22.03-LTS-SP1系统下对ClickHouse使能OmniMV的SSB性能瓶颈分析并调优。
关键词: ClickHouse,OmniMV,使能,性能调优实践,官方技术文章,鲲鹏社区,实践背景概述,测试环境信息

官方技术文章 [了解详情](https://www.hikunpeng.com/zh/developer/techArticles)

ClickHouse使能OmniMV性能调优实践

ClickHouse使能OmniMV性能调优实践

大数据ClickHouseOmniMV

发表于 2025/09/11


作者 | 朱勇

## 1 实践背景概述

基于鲲鹏920处理器在CentOS 7.6/openEuler22.03-LTS-SP1系统下对ClickHouse使能OmniMV的SSB性能瓶颈分析并调优，本文提供BIOS调优、透明大页、优化应用配置参数max_threads三种调优方式，调优后通过使用OmniMV前后对比性能提升效果。

#### 测试环境信息

| 类别 | 子项 |
| --- | ---|
| CPU | 鲲鹏920 5220/5250处理器 |
| 内存 | 8*32G |
| 磁盘 | SSD系统盘RAID1：480G*2HDD数据盘RAID10：16T*28 |
| OS | CentOS 7.6/openEuler 22.03 LTS SP1 |
| 软件 | ClickHouse 22.8.13.20/23.3.4.17 |

#### 测试方法

请参见《大数据OmniMV ClickHouse 性能测试指南》中的“SSB-单机性能提升测试”章节内容。

测试数据为6亿，需要将文档中测试数据准备章节生成数据的命令./dbgen -s 500 -T c中500改成100即可。

#### 调优前测试结果

| 测试语句 | 鲲鹏920 5220处理器耗时（s） | 鲲鹏920 5250处理器耗时（s） |
| --- | --- | ---|
| q1 | 2.1557 | 2.5612 |
| q2 | 1.5928 | 2.0223 |
| q3 | 1.4754 | 2.0104 |
| q4 | 6.2337 | 5.254 |
| q5 | 5.5339 | 4.131 |
| q6 | 5.5202 | 4.066 |
| q7 | 6.52 | 5.4652 |
| q8 | 6.363 | 5.1905 |
| q9 | 5.1281 | 4.0733 |
| q10 | 1.5927 | 2.0105 |
| q11 | 7.659 | 6.5417 |
| q12 | 3.8267 | 3.4684 |
| q13 | 3.6181 | 3.3631 |
| 总计 | 57.2193 | 50.1576 |

## 2 性能瓶颈分析

#### Top分析

在Linux命令行下输入top命令。回显内容如下所示，观察到CPU未压满，CPU端应该不存在瓶颈。

#### Topdown分析

对13条SQL语句进行topdown分析，均为后端瓶颈，优化空间不大，使用PGO反馈优化验证后没有性能提升效果。

#### 透明大页

通过查看Linux官方指导文档，建议使用低版本内核时透明大页。

如果您使用旧版的Linux内核，请禁用透明大页面。它会干扰内存分配器，从而导致性能显著下降。在新版Linux内核上，开启透明大页面是可以的。

```
echo 'madvise' | sudo tee /sys/kernel/mm/transparent_hugepage/enabled
```

如果需要永久修改透明大页设置，请编辑“/etc/default/grub”文件，并将“transparent_hugepage=madvise”添加到“GRUB_CMDLINE_LINUX_DEFAULT”选项中：

```
GRUB_CMDLINE_LINUX_DEFAULT="transparent_hugepage=madvise ..."
```

## 3 性能调优实践

#### BIOS调优

开启预取、性能模式、64ms内存刷新频率、SMMU。其中开启预取对性能的影响是最大的。

如何进入BIOS界面的具体操作请参见《TaiShan 服务器 BIOS 参数参考（鲲鹏920处理器） [了解详情](https://support.huawei.com/enterprise/zh/doc/EDOC1100088653/a77cbc34)》中“进入BIOS界面”的相关内容。

| 配置项 | 配置路径 | 配置值 |
| --- | --- | ---|
| 开启CPU预取 | Advanced > MISC Config > CPU Prefetching Configuration | Enabled |
| 开启性能模式 | Advanced > Performance Config > Power Policy | Performance |
| 内存刷新频率（缺省值是32ms） | Advanced > Memory Config > Custom Refresh Rate | 64 |
| SMMU | Advanced > MISC Config > Support Smmu | Disabled |

#### 透明大页

在openEuler 20.03上透明大页是默认开启的，后可以获得不错的性能提升。

```
echo never > /sys/kernel/mm/transparent_hugepage/enabled #默认值是neverecho never > /sys/kernel/mm/transparent_hugepage/defrag #默认值是madvise
```

#### 应用参数优化

修改配置参数“max_threads”，设置为不同的值可能获得优化效果。经验证，在鲲鹏920 5220处理器上将“max_threads”设置为“50”比较合适。

## 4 调优效果实践

#### 不使用BoostKit物化视图特性

| 测试语句 | 鲲鹏920 5220处理器耗时（s） | 鲲鹏920 5250处理器耗时（s） |
| --- | --- | ---|
| q1 | 1.1699 | 1.2875 |
| q2 | 0.4584 | 0.6525 |
| q3 | 0.5237 | 0.5514 |
| q4 | 4.799 | 3.939 |
| q5 | 3.7771 | 3.048 |
| q6 | 4.0137 | 2.8095 |
| q7 | 5.0074 | 4.1511 |
| q8 | 4.8016 | 3.9626 |
| q9 | 3.4401 | 3.1358 |
| q10 | 0.5077 | 0.6784 |
| q11 | 6.4966 | 5.1848 |
| q12 | 2.485 | 2.268 |
| q13 | 2.3313 | 2.126 |
| sum | 39.8115 | 33.7946 |

#### 使用BoosKit物化视图特性

| 测试语句 | 鲲鹏920 5220处理器耗时（s） | 鲲鹏920 5250处理器耗时（s） |
| --- | --- | ---|
| q1 | 1.2334 | 1.4212 |
| q2 | 0.5182 | 0.6455 |
| q3 | 0.504 | 0.5866 |
| q4 | 0.9062 | 0.9333 |
| q5 | 0.4626 | 0.5799 |
| q6 | 0.4364 | 0.5328 |
| q7 | 0.6603 | 0.727 |
| q8 | 2.8927 | 2.8692 |
| q9 | 0.4459 | 0.5431 |
| q10 | 0.4016 | 0.5286 |
| q11 | 0.6854 | 0.6989 |
| q12 | 0.8773 | 0.917 |
| q13 | 4.8947 | 5.3368 |
| sum | 14.9187 | 16.3199 |

物化视图安装步骤请参见《OmniRuntime特性指南》中的“OmniMV物化视图 [了解详情](https://www.hikunpeng.com/document/detail/zh/kunpengbds/appAccelFeatures/sqlqueryaccelf/kunpengbds_omniruntime_20_0401.html)”章节。

使用物化视图特性后，通过应用参数“--allow_experimental_projection_optimization”设置禁用物化视图功能，可能会导致测得的性能比使能物化视图特性之前差。
