数据引擎- 主流SQL计算引擎

1.先了解一下SQL的执行过程

词法分析就是将SQL语句分解成一个个词和符号,语法分析就是识别SQL关键字和SQL成分结构,逻辑执行计划就是分析获取数据的逻辑步骤,优化执行计划就是优化和简化获取数据的步骤,物理执行计划就是分解可执行的任务,计划执行就是按照步骤执行分解后的任务获取数据结果。





2.了解一下数据引擎的工作流程

用户通过用户界面提交SQL查询,驱动接收到SQL查询请求后,向编译器请求SQL查询的执行计划,在获取到物理执行计划后,将物理查询计划提交给执行引擎。在Hive中物理执行计划是一系列的Map任务和Reduce任务,任务依次执行完成后将获取的HDFS中的数据,返回给用户。



3.现在主流的数据引擎的结构

HDFS提供了分布式文件系统,RDD提供了分布式的内存系统,这两个了个基本的数据访问抽象,极大了简化了计算编程模型。特别提一下Catalyst中基于规则的优化引擎,借助Scala的模式匹配等函数式语言特性,开发执行计划优化策略非常的简洁。



4.数据引擎的起源

最初的MapReduce使得处理大数据处理成为可能。后来又发现了MR的抽象过于简单,于是Tez和Spark提供了更加丰富单是也更复杂的分布式任务模型。但是SQL的处理依然不方便,效率不好,于是Pig和Hive出现了,让更多了数据分析和处理人员可以处理大数据任务。但是基于任务的SQL处理模式很难满足交互数据分析的场景,于是更轻量的,更专注SQL任务优化的Impala,Presto,Drill出现了。





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值