陶进:人人都会向量引擎.pdf

  1. 1、本文档共22页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

人人都会向量引擎

陶进

目1从CRUD到执行引擎

C

o

2向量化改造

ni

t录

e

n

t

s

01从CRUD到

执行引擎

01-同样写代码,不同成就感

拿到“奇葩”需求改进xx排序,性能提升

写“BUG”

使用xxIO,性能提升

被打断,修“BUG”

动态执行计划

加班

向量化

01-从CRUD到查询引擎

我们CRUDBoy的优点

熟练掌握至少一门语言

熟练使用面向对象思维分析缺什么?

需求查询引擎

心理承受能力强(能接受PUA)

吃苦耐劳(能加班)

SQL的执行过程

语法树--python

sql中字段的计算表达

SQL-关系运算

一站式SQL解决方案—ApacheCalcite

SQLParse

output

一站式SQL解决方案—ApacheCalcite

SQLValidate

output

一站式SQL解决方案—ApacheCalcite

LogicalPlanOptimize

output

开始干活--构造自己的PhysicalNode

简单的PhysicalNode

开始干活--简单的SortNode

简单的SortNode

表达式计算—一种基于lambda表达式的方法

表达式计算—Project的执行过程

PhysicalProject的执行逻辑

02向量化改造

基于ApacheArrow的性能测试

开始干活--PhysicalNode向量化改造

PhysicalNode数据向量化改造

Object[]原来表示一行数据,即Object[obj,obj,...obj]

在向量化中则表示多列数据,即Object[IntVector,obj...LongVector],每一列有

一个或多个值

表达式向量化改造

lambda表达式变成接口实现

基于每一行的计算形式改成在每个向量上的循环

自己实现向量化选择

JavaVectorApi

基于IntelSIMD(SSE,AVX)指令集的函数实现

您可能关注的文档

文档评论(0)

Gemini + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档