Spark.table("TABLE A") 和 Spark.read.("TABLE A") 之间有什么区别

Sea*_*ean 7 apache-spark apache-spark-sql pyspark

问题如标题,我正在学习sparkSQL,但我无法很好地理解它们之间的区别。谢谢。

Sri*_*vas 7

spark.table&功能没有区别spark.read.table

里面spark.read.table又是调用spark.table函数。

检查下面的代码。

spark.table里面可以找到package org.apache.spark.sql.SparkSession

Spark会话

package org.apache.spark.sql.SparkSession

def table(tableName: String): DataFrame = {
  table(sessionState.sqlParser.parseTableIdentifier(tableName))
}

Run Code Online (Sandbox Code Playgroud)

spark.read.table函数在 & 中可用,package org.apache.spark.sql.DataFrameReader它再次调用spark.table函数。

数据帧读取器

package org.apache.spark.sql.DataFrameReader

def table(tableName: String): DataFrame = {
   assertNoSpecifiedSchema("table")
   sparkSession.table(tableName)
}
Run Code Online (Sandbox Code Playgroud)