0

我试图理解为什么我会将数据框注册为 pyspark 中的临时视图。

这是一个虚拟示例

# Create spark dataframe
spark_df = spark.createDataFrame([(1, 'foo'),(2, 'bar'),],['id', 'txt'])

# Pull data using the dataframe
spark_df.selectExpr("id + 1")

# Register spark_df as a temporary view to the catalog
spark_df.createOrReplaceTempView("temp")

# Pull data using the view
spark.sql("select id + 1 from temp")

我是否将数据框注册为临时视图:

  1. 只能在此实时 Spark 会话中访问数据
  2. 两种情况下我都可以使用sql语句查询数据
  3. 提取数据几乎需要相同的时间(10K 模拟,但我还没有 spark 集群,只有我的本地机器)。

我没有看到将数据框存储为临时视图的好处,但我在 pyspark 的每个介绍性课程中都看到了它。我错过了什么?谢!!

4

1 回答 1

2

SQL 是一种非常强大的语言,许多人认为它在某些情况下是有益的。

于 2020-08-31T17:15:58.600 回答