前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站:https://www.captainai.net/dongkelun
前言
上一篇文章Hudi Spark SQL源码学习总结-Create Table总结了Create Table
的源码执行逻辑,这一篇继续总结CTAS
,之所以总结CTAS
,是之前在我提交的一个PR中发现,Spark2和Spark3.2.1版本的CTAS
的逻辑不一样,最终走的Hudi实现类也不一样,所以本文分Spark2和Spark3.2.1两个版本分析
不同点
先总结一下Spark2和Spark3.2.1的整体逻辑的不同点
Spark2: visitCreateTable
->CreateTable
->CreateHoodieTableAsSelectCommand.run
Spark3.2.1: 前提配置了:spark.sql.catalog.spark_catalog=org.apache.spark.sql.hudi.catalo