gpt4 book ai didi

apache-spark - registerTempTable是否导致表被缓存?

转载 作者:行者123 更新时间:2023-12-04 05:18:52 31 4
gpt4 key购买 nike

我有一个sql语句查询,它在许多字段上进行分组。它使用的表也很大(大小为4TB)。我正在将该表注册为临时表。但是,当我将其注册为临时表时,我不知道该表是否被缓存了?我也不知道是否将查询转换为Scala函数(例如df.groupby()。aggr()...)而不是将其作为sql语句来提高性能。有什么帮助吗?

最佳答案

SQL很可能是迄今为止最快的Databricks blog

您是否也尝试过对数据框进行分区/重新分区,以查看它是否可以提高性能?

关于registerTempTable:它仅在spark上下文内注册表。您可以使用用户界面进行检查。

val test = List((1,2,3),(4,5,6)).toDF("bla","blb","blc")
test.createOrReplaceTempView("test")
test.show()

储存空间为空


val test = List((1,2,3),(4,5,6)).toDF("bla","blb","blc")
test.createOrReplaceTempView("test").cache()
test.show()

enter image description here

顺便说一下,在Spark 2.0中已弃用registerTempTable,并已将其替换为

createOrReplaceTempView

关于apache-spark - registerTempTable是否导致表被缓存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40475433/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com