【发布时间】:2020-01-03 20:32:26
【问题描述】:
我正在使用 Azure Databricks,而且我是 Pyspark 和大数据的新手。
这是我的问题:
我在 azure databricks 上的目录中有几个 parquet 文件。 我想将这些文件读入 pyspark 数据框并使用 drop duplicates 方法删除重复的行 - 一个 QA 检查。 然后我想在删除重复项后覆盖同一目录中的这些文件。
目前,我正在使用 for 循环来遍历目录中的每个 parquet 文件。然而,这是一种低效的做事方式。我想知道是否有一种方法可以并行处理这些镶木地板文件以节省计算时间。如果是这样,我需要如何更改我的代码。
代码如下:
for parquet_file_name in dir:
df = spark.read.option("header", "true").option("inferschema", "false").parquet('{}/{}'.format(dir,parquet_file_name))
df.dropDuplicates().write.mode('overwrite').parquet('{}/{}'.format(dir,parquet_file_name)
我们将不胜感激。
非常感谢。
【问题讨论】:
标签: apache-spark pyspark parallel-processing databricks