spark.table(“ TABLE A”)和spark.read。(“ TABLE A”)之间有什么区别

时间:2020-07-14 03:01:27

标签: apache-spark pyspark apache-spark-sql

作为标题的问题,我正在学习sparkSQL,但是我对它们之间的区别没有很好的了解。谢谢。

1 个答案:

答案 0 :(得分:0)

spark.tablespark.read.table函数之间没有区别。

spark.read.table内部再次调用spark.table函数。

检查以下代码。

spark.tablepackage org.apache.spark.sql.SparkSession内部可用

SparkSession

package org.apache.spark.sql.SparkSession

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

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

DataFrameReader

package org.apache.spark.sql.DataFrameReader

def table(tableName: String): DataFrame = {
   assertNoSpecifiedSchema("table")
   sparkSession.table(tableName)
}