[英]Spark: reading tables and filtering by partition
我試圖了解 Spark 的評估。
有一個表 table_name 由 partition_column 分區。 它是以鑲木地板格式存儲的外部表。 現在,考慮以下行
val df = spark.read.table(table_name).filter(partition_column=partition_value)
由於 Spark 的惰性評估,它是否會應用謂詞下推並僅掃描 partition_column=partition_value 的文件夾? 還是要讀取整個表格並稍后過濾掉?
嘗試.explain自己查看結果。
但實木復合地板確實得到了應用。
轉換、過濾器、映射等都融合在一起。 懶惰的一面確實是真實的,盡管你在一個聲明中做到了這一切。
因此,答案是肯定的,Spark 將生成代碼以在源頭進行過濾。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.