开发者社区> 问答> 正文

spark sql运行流程是什么?

spark sql运行流程是什么?

展开
收起
芯在这 2021-12-08 11:47:53 375 0
1 条回答
写回答
取消 提交回答
  • 1)对读入的sql语句进行解析

    分辨出sql语句中有哪些是关键词(如:select,from,where),哪些是表达式,哪些是Projection,哪些是Data Source等 判断sql语句是否规范

    2)将sql语句和数据库的数据字典进行绑定

    数据字典:列,表,视图等 若相关的Projection DataSource 等都是存在的话,就表示该sql语句是可以执行的

    3)数据库选择最优执行计划

    数据库会提供几个执行计划,这些计划都会运行统计数据 数据库会从上述各种执行计划中选择一个最优计划

    4)执行计划

    按照Operation(操作)–>DataSource(数据源)–>Result的次序来执行 在执行的过程中有时候甚至不需要读取物理表就可以返回结果,比如重新运行刚运行的sql语句,可直接从数据库的缓冲池中返回结果

    2021-12-08 11:48:17
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Hybrid Cloud and Apache Spark 立即下载
Scalable Deep Learning on Spark 立即下载
Comparison of Spark SQL with Hive 立即下载