Gui*_*abs 6 partitioning apache-spark pyspark azure-databricks delta-lake
我想知道加载增量表特定分区的最佳方法是什么?选项 2 是否在过滤之前加载所有表?
df = spark.read.format("delta").option('basePath','/mnt/raw/mytable/')\
.load('/mnt/raw/mytable/ingestdate=20210703')
Run Code Online (Sandbox Code Playgroud)
(这里需要basePath选项吗?)
df = spark.read.format("delta").load('/mnt/raw/mytable/')
df = df.filter(col('ingestdate')=='20210703')
Run Code Online (Sandbox Code Playgroud)
提前谢谢了 !
在第二个选项中,spark 仅加载过滤条件中提到的相关分区,spark 内部会执行partition pruning并仅加载源表中的相关数据。
而在第一个选项中,您直接指示 Spark 仅加载定义的相应分区。
因此,在这两种情况下,您最终都将仅加载相应的分区数据。
| 归档时间: |
|
| 查看次数: |
9306 次 |
| 最近记录: |