簡體   English   中英

SPARK TempView性能

[英]SPARK TempView Performance

我在SO 44011846上找到了這句話:

與傳統的臨時表不同,臨時視圖根本不會實現,甚至無法實現。 它對於訪問SQL中的數據很有用,但要理解,每次訪問時都必須對它的語句進行評估–

這是否意味着如果Hive是TempView的源,它將一直回到Hive?

我是這樣認為的,因此就性能而言,大量重復訪問是一個問題。

火花1.6

臨時表/視圖不存儲在內存中。 它們僅對從hive / rdbms訪問數據有用。

如果您使用的是Hive,

hiveContext.select("select * from tableA").registerTempTable("tableA")

上面的語句僅注冊臨時表。 這是轉型。 當執行任何操作時,它將在配置單元上執行sql並創建一個臨時表。 每當執行任何操作時,它將每次執行。

如果要在內存中緩存表,則必須使用以下語句-

 hiveContext.cacheTable("tableA")

這是懶惰的評價。 每當執行任何操作時,它將執行sql並將temp表保存在內存中。 下次,對內存表執行操作。 不會每次都進行評估。

星火2.0

將registerTempTable替換為createOrReplaceTempView

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM