Contents
  1. 1. mr

df.write.mode(“overwrite”).format(“parquet”).save(path)

org.apache.spark.sql.DataFrameWriter#save

定位table 获得relation

1
2
runCommand(df.sparkSession, "save") {
AppendData.byName(relation, df.logicalPlan, extraOptions.toMap)

LoadDataCommand
catalog.loadTable

mr

作用InputFormat -> getSplit -> get Reader

parquet.task.side.metadata
true时使用父类FileInputFormat获得的split一对一任务 ;
false时,读取所有footer,涉及参数mapred.max.split.size mapred.min.split.size,在指定大小范围下,属于同一个HDFSBlock(中点)的rowgroup放在同一个split中