AnalyticDB向量化引擎

本文涉及的产品
云原生数据仓库AnalyticDB MySQL版,8核32GB 100GB 1个月
简介: AnalyticDB向量化引擎

AnalyticDB是阿里云企业级云原生数据仓库,在GreenPlumPostgreSQL基础上开发的。语法上对两者保持兼容,功能层面上为GP超集。其架构:

 

这里重点关注他的向量化引擎。PG的执行引擎是Record-Oriented的火山模型,也就是面向行。ADB自研了Block-Oriented向量化执行引擎。

 

对于Record-Oriented通过getNext()接口每次获取一个记录,Block-Oriented模式下通过getNextBlock()接口一次获取一批记录,同时每个算子综合运用向量化和即时编译技术,对这一批记录执行相同处理逻辑,从下面的收益出发,获得更高效的资源利用,从而使执行更快:

1)每行读取和使用相同逻辑处理一批记录,能获得更高的CPU指令和数据缓存命中率

2)从一次函数调用处理一条记录到一次函数调用处理一批数据,同时即时编译则直接避免函数调用,总体函数调用次数和开销减少。

3)内存的分配和回收,也从每条记录的分配回收,到每批记录的分配和回收,整体减少内存分配回收次数和碎片管理的开销

4)在按批处理模型下,代码实现能更好地以向量化方式实现,一方面有利于CPU进行数据预取,另一方面尽可能减少程序的条件跳转,从CPU获得更好的指令流水线执行,同时也有利于编译器生成SIMD指令提高执行效率

其宣讲稿中展示了向量化分组聚合场景:

 

向量化按批读取和处理的行为在本批次中让需要处理的数据和指令都驻留在CPU的L1/L2 Cache中,在缓存命中情况下性能为从内存读取的10-30倍。同时对该批次数据进行相同指令的处理,也能让CPU更好地流水线执行,减少CPU Hazards。即时编译代码生成针对表达式处理场景,直接避免了解释执行模式下高频函数调用。


相关实践学习
AnalyticDB MySQL海量数据秒级分析体验
快速上手AnalyticDB MySQL,玩转SQL开发等功能!本教程介绍如何在AnalyticDB MySQL中,一键加载内置数据集,并基于自动生成的查询脚本,运行复杂查询语句,秒级生成查询结果。
阿里云云原生数据仓库AnalyticDB MySQL版 使用教程
云原生数据仓库AnalyticDB MySQL版是一种支持高并发低延时查询的新一代云原生数据仓库,高度兼容MySQL协议以及SQL:92、SQL:99、SQL:2003标准,可以对海量数据进行即时的多维分析透视和业务探索,快速构建企业云上数据仓库。 了解产品 https://www.aliyun.com/product/ApsaraDB/ads
目录
相关文章
|
9月前
|
存储 人工智能 OLAP
LangChain+通义千问+AnalyticDB向量引擎保姆级教程
本文以构建AIGC落地应用ChatBot和构建AI Agent为例,从代码级别详细分享AI框架LangChain、阿里云通义大模型和AnalyticDB向量引擎的开发经验和最佳实践,给大家快速落地AIGC应用提供参考。
127207 92
|
8月前
|
SQL 存储 OLAP
适用于即席查询(Ad-Hoc)的OLAP引擎
即席查询(Ad Hoc)是用户根据自己的需求,灵活的选择查询条件,OLAP系统根据用户输入的查询条件实时返回查询结果。OLAP的即席查询与普通查询的不同之处就是很难对前者进行预先的优化,因为即席查询所响应的大都是随机性很强的查询请求。一个OLAP系统的即席查询能力越强,其应对不同用户的随机性和探索性分析的能力就越强。
299 0
适用于即席查询(Ad-Hoc)的OLAP引擎
|
SQL 分布式计算 运维
开源大数据 OLAP 引擎最佳实践 | 学习笔记(二)
快速学习开源大数据 OLAP 引擎最佳实践
1497 0
开源大数据 OLAP 引擎最佳实践 | 学习笔记(二)
|
8月前
|
运维 关系型数据库 OLAP
阿里云百炼 x AnalyticDB向量引擎, 搭积木式轻松开发专属大模型应用
对大模型应用跃跃欲试,但奈何技术栈复杂难以下手?已经进行试水,但缺乏调优手段无法保障召回率和问答准确度?自行搭建大模型、向量检索引擎、服务API等基础组件难以运维?大模型种类繁多,但缺乏行业模型和应用模板?阿里云百炼 x AnalyticDB向量引擎推出一站式企业专属大模型开发和应用平台,像搭积木一样轻松完成企业专属大模型应用的开发,提供应用API,可一键接入企业自己的业务应用对外提供服务。
1044 0
|
12月前
|
人工智能 Cloud Native 关系型数据库
阿里云数据库国际峰会首度在印尼召开,AnalyticDB向量引擎支持定制AIGC应用
阿里云瑶池数据库面向海外市场正式升级云原生一站式数据管理与服务平台
|
SQL 运维 OLAP
二、【计算】流|批|OLAP一体 的Flink引擎(下) | 青训营笔记
二、【计算】流|批|OLAP一体 的Flink引擎(下) | 青训营笔记
二、【计算】流|批|OLAP一体 的Flink引擎(下) | 青训营笔记
|
存储 分布式计算 大数据
二、【计算】流|批|OLAP一体 的Fllink引擎 (上)| 青训营笔记
二、【计算】流|批|OLAP一体 的Fllink引擎 (上)| 青训营笔记
二、【计算】流|批|OLAP一体 的Fllink引擎 (上)| 青训营笔记
|
存储 SQL 分布式计算
流/批/OLAP 一体的 Flink 引擎介绍|青训营笔记
Apache Flink 是一个框架和分布式处理引擎,用于在无边界和有边界数据流上进行有状态的计算。Flink 能在所有常见集群环境中运行,并能以内存速度和任意规模进行计算。
222 0
流/批/OLAP 一体的 Flink 引擎介绍|青训营笔记
|
存储 SQL 运维
开源大数据OLAP引擎最佳实践
本篇内容分享了开源大数据OLAP引擎最佳实践。 分享人:范振 阿里云高级技术专家
开源大数据OLAP引擎最佳实践
|
SQL druid 搜索推荐
大数据分析-常见分布式OLAP查询引擎研究
通用大数据分析OLAP引擎的粗浅研究学习-更新中
701 0
大数据分析-常见分布式OLAP查询引擎研究

热门文章

最新文章