什么是向量化执行引擎?
指令级并行计算 · 性能提升 10 ~ 100 倍
向量化技术是近年来出现的的针对数据库分析型场景性能优化的先进技术。
YMatrix 研发团队对数据库中的各类算子进行了全面的向量化改造,使得数据库能够在 CPU 层面实现数据的“按批计算”,从而大幅提升 YMatrix 在大数据量分析场景中的查询性能表现;在部分查询中,性能提升可达 10 ~ 100 倍。
YMatrix 研发团队对数据库中的各类算子进行了全面的向量化改造,使得数据库能够在 CPU 层面实现数据的“按批计算”,从而大幅提升 YMatrix 在大数据量分析场景中的查询性能表现;在部分查询中,性能提升可达 10 ~ 100 倍。
核心能力
高效批量计算
向量化引擎使数据库能够发挥先进硬件架构优势,充分利用现代 CPU 的 SIMD 指令集,支持一次性读取多个元组(tuple)并批量处理,尤其对于密集型的计算任务(SUM、AVG 等聚合操作)可大幅提升整体效率。
联合性能优化
配合 MARS3 存储引擎特定的列式存储,实现批量读取和批量计算,同时批量处理能减少了查询时缓存命中失败的问题,对于大数据量查询情况可获得高达数倍的性能提升。
为什么选择向量化计算引擎?
与面向行的传统执行引擎一次处理一组数据的执行模式相比,向量化执行引擎一次处理一批数据的并行处理能力,可使 SQL 执行性能提升一到两个数量级。此外,向量化引擎采用了特定的数据访问方式,可使得数据的读取和写入延迟较低,实现实时的数据处理。广泛适用于大规模数据查询和分析等业务场景。
向量化计算引擎原理和效果