原理描述
在配置KOVAE前,请先了解KOVAE系统的运行原理和内部执行过程。KOVAE通过优化SQL查询的执行计划,采用并行处理机制,并利用列存储结构的优势,实现了对SQL查询的高效处理。
MySQL连接器接收到Client发送的SQL语句,经过解析器和优化器,生成查询的执行计划,根据规则,执行计划会被默认执行器执行或者被卸载到KOVAE上执行,执行完成后再将结果集返回到Client。SQL和执行的结果集的数据流向如图1所示。
KOVAE内部执行过程概览如图2所示。
TableScan算子通过多个worker线程并行调用InnoDB读表的接口,将数据保存在TableScan算子的缓存队列中。
TableScan上层算子(Agg/Sort/HashJoin/NestedLoopJoin等)从下层算子的数据缓存队列中拿取数据进行处理,每个算子都可以含有多个worker线程,多个worker线程并行处理可以充分利用ARM服务器的多核优势。
图3 行存结构和列存结构

MySQL InnoDB为行存结构,KOVAE数据为列存结构,对于指定某列进行运算处理时,由于列存结构上同列的数据在内存上是相邻的,所以数据处理更加高效。
父主题: 特性描述