特性清单
特性 |
特性描述 |
约束 |
性能指标 |
软件包获取 |
是否支持在虚拟机使用 |
对虚拟机使用的支持情况说明 |
---|---|---|---|---|---|---|
通过SSD硬件原子写特性消除Doublewrite双写软件冗余提升数据库的性能。 |
|
密集写场景性能预计提升15%。 |
- |
否 |
该特性依赖SSD硬件特性,因此不适用于虚拟机场景。 |
|
引入影子FD机制以及跨线程异步通信机制,通过加速网络协议栈以提升数据库性能。 |
|
TPC-C综合性能预计提升10%。 |
- |
是 |
支持在虚拟机场景使用,本身为纯软件特性,与是否虚拟机或物理机无关,但当前性能指标与测试环境规格相关,在虚拟化场景性能提升效果需要以具体所使用虚拟机规格测试为准。 |
|
MySQL OLTP场景下DML语句(Insert,Update,Delete)大量并发操作trx_sys全局结构体中的关键数据结构,造成临界区的竞争和同步瓶颈。改造后使用无锁哈希表维护事务单元。减少锁冲突,提升并发度。 |
|
Sysbench写场景性能提升20%。 |
patch包: |
是 |
支持在虚拟机场景使用,本身为纯软件特性,与是否虚拟机或物理机无关,但该特性是针对OLTP场景DML语句大量并发操作下锁竞争做的优化,但虚拟机不一定会出现该场景,因此性能提升效果需要以具体所使用虚拟机规格测试为准。 |
|
MySQL OLTP场景下DML语句(Insert,Update,Delete)大量并发操作访问lock_sys->mutex全局锁保护的关键数据结构,造成锁竞争严重导致性能下降。替换成细粒度hash桶锁。减少锁冲突,提升并发度。 |
|
TPC-C综合性能预计提升10%。 |
patch包: |
是 |
支持在虚拟机场景使用,本身为纯软件特性,与是否虚拟机或物理机无关,但该特性是针对OLTP场景DML语句大量并发操作下锁竞争做的优化,但虚拟机不一定会出现该场景,因此性能提升效果需要以具体所使用虚拟机规格测试为准。 |
|
MySQL单SQL查询只能调度单线程,多核CPU无法使用,单查询性能查询差难于满足查询场景的性能要求,通过并行查询优化提升查询性能。 |
|
查询性能提升大于1倍(性能提升与并行度有关)。 |
patch包: |
是 |
支持在虚拟机场景使用,本身为纯软件特性,与是否虚拟机或物理机无关,但当前性能指标与测试环境规格相关,在虚拟化场景性能提升效果需要以具体所使用虚拟机规格测试为准。 |
|
MySQL OLTP场景下高并发下系统默认的线程调度使得线程频繁跨NUMA的访问,这种情况导致CPU开销增大,性能提升受限制,需要对用户处理线程做动态绑定固定NUMA CPU减少跨NUMA访问,同时需要保证CPU访问的负载必须均衡,后台线程静态绑定固定NUMA CPU减少跨NUMA访问,提升后台线程效率。 |
|
OLTP场景性能提升10%。 |
patch包: |
是 |
支持在虚拟机场景使用,本身为纯软件特性,与是否虚拟机或物理机无关,但当前性能指标与测试环境规格相关,在虚拟化场景性能提升效果需要以具体所使用虚拟机规格测试为准。 |
|
MySQL OLTP场景下高并发下线程数过多,CPU消耗在无效的资源竞争和频繁切换上,线程池方案通过队列方式管理任务,所有的任务先放入等待执行队列,按系统执行能力取出任务队列让CPU执行,每个CPU同时处理任务个数是有限的,一般2~5个最优,从而保持稳定的业务处理能力。 |
|
OLTP TPC-C场景性能10000并发性能下降到最优的10%左右,开启线程池功能,性能可维持在85%。 |
patch包: |
是 |
支持在虚拟机场景使用,本身为纯软件特性,与是否虚拟机或物理机无关,但当前性能指标与测试环境规格相关,在虚拟化场景性能提升效果需要以具体所使用虚拟机规格测试为准。 |
|
采用鲲鹏CRC32硬件指令来替换CRC32算法的软件实现,从而提高系统业务的性能。 |
|
Sysbench写场景性能预计提升5%。 |
patch包: |
是 |
支持在虚拟机场景使用。当前性能指标与测试环境规格相关,在虚拟化场景性能提升效果需要以具体所使用虚拟机规格测试为准。 |
|
采用多模态(源代码、汇编码、二进制)、全生命周期(编译、链接、后链接)的持续优化手段,获取性能更优的目标程序。 |
|
整机场景下,使数据库TPC-C综合性能提升10%;8U32G场景下,Sysbench综合性能(最优性能)提升30%。 |
- |
是 |
支持在虚拟机场景使用,本身为纯软件特性,与是否虚拟机或物理机无关,但当前性能指标与测试环境规格相关,在虚拟化场景性能提升效果需要以具体所使用虚拟机规格测试为准。 |
|
采用并行处理机制,每个算子含有多个worker线程,显著缩短SQL语句的执行时间;利用列存储结构,数据处理更加高效;通过插件形式提供第二执行引擎,支持可插拔动态加载。 |
|
OLAP查询性能提升到3倍以上。 |
是 |
支持在虚拟机场景使用,本身为纯软件特性,与是否虚拟机或物理机无关,但当前性能指标与测试环境规格相关,在虚拟化场景性能提升效果需要以具体所使用虚拟机规格测试为准。 |
||
使用鲲鹏硬加速模块实现压缩、解压缩算法,结合无损用户态驱动框架从而提升查询性能。 |
可以将同一时间只处理一个请求、IO占比多的OLAP查询性能提升10%。 |
源码包: |
是 |
支持在虚拟机场景使用。当前性能指标与测试环境规格相关,在虚拟化场景性能提升效果需要以具体所使用虚拟机规格测试为准。 |
||
使用鲲鹏硬加速模块加速zstd相关压缩解压缩算法,提升在使用透明页压缩时的性能。 |
|
减少大约一半的磁盘占用空间,8U32G场景下,Sysbench TPS劣化程度不超过15%。 |
patch包: KAE包: |
是 |
支持在虚拟机场景使用。当前性能指标与测试环境规格相关,在虚拟化场景性能提升效果需要以具体所使用虚拟机规格测试为准。 |
|
使用向量指令和预取操作,提升在相似度查询上的性能。 |
HNSW算法召回率达到0.99、ScaNN算法召回率达到0.95的前提下,在Gist数据集上的QPS能提升20%。 |
patch包: |
是 |
支持在虚拟机场景使用。当前性能指标与测试环境规格相关,在虚拟化场景性能提升效果需要以具体所使用虚拟机规格测试为准。 |
||
添加对于鲲鹏召回算法库中KBest算法的支持,提升图类算法的高效查询。 |
KBest算法的召回率在0.99以上的情况下,QPS相较于HNSW提升30%。 |
patch包: |
是 |
支持在虚拟机场景使用。本身为纯软件特性,与是否虚拟机或物理机无关,但当前性能指标与测试环境规格相关,在虚拟化场景性能提升效果需要以具体所使用虚拟机规格测试为准。 |
||
添加对于鲲鹏召回算法库中KScaNN算法的支持,提升向量检索算法的高效查询。 |
KScaNN算法的召回率在0.95以上的情况下,QPS相较于ScaNN提升30%。 |
patch包: |
是 |
支持在虚拟机场景使用。本身为纯软件特性,与是否虚拟机或物理机无关,但当前性能指标与测试环境规格相关,在虚拟化场景性能提升效果需要以具体所使用虚拟机规格测试为准。 |
||
识别特定业务进程的流量特征,实现业务进程网络请求与网络中断的亲和性。 |
|
MySQL 8U32G容器跑满半整机场景下,Sysbench综合性能(最优性能)提升10%;Redis 2U10G容器,在ipvlan+bond4组网下,redis-benchmark综合性能提升80%。 |
否 |
该特性依赖网卡驱动接口,虚拟网卡不具备该接口。 |
||
通过将Redis中网络I/O操作交由KBAIO异步批量执行,减少系统调用和上下文交换,实现Redis业务无阻塞执行。 |
|
在2U10G规格,docker+bond4+ipvlan组网场景下,redis-benchmark压测较于Redis开源版本有20%以上提升。 |
是 |
支持在虚拟机场景使用。当前性能指标与测试环境规格相关,在虚拟化场景性能提升效果需要以具体所使用虚拟机规格测试为准。 |