Spark:spark.sql 和 sqlCtx.sql 有什么区别
Spark: What's the difference between spark.sql and sqlCtx.sql
在使用 pyspark 的 Spark 2.1 中,如果您想查询 table(例如来自 HDP),您可以 运行 两个
df = sqlCtx.sql(''' select * from table ''')
和
df = spark.sql(''' select * from table ''')
你为什么要先做一个再做另一个?两者有什么区别。
sqlCtx
是在启动时创建的默认 SQLContext
。 spark
是在启动时创建的默认 SparkSession
。根据 SQLContext
的文档 SparkSession
是 SQLContext
的替代品:
As of Spark 2.0, this is replaced by SparkSession. However, we are keeping the class here for backward compatibility.
在使用 pyspark 的 Spark 2.1 中,如果您想查询 table(例如来自 HDP),您可以 运行 两个
df = sqlCtx.sql(''' select * from table ''')
和
df = spark.sql(''' select * from table ''')
你为什么要先做一个再做另一个?两者有什么区别。
sqlCtx
是在启动时创建的默认 SQLContext
。 spark
是在启动时创建的默认 SparkSession
。根据 SQLContext
的文档 SparkSession
是 SQLContext
的替代品:
As of Spark 2.0, this is replaced by SparkSession. However, we are keeping the class here for backward compatibility.