1

目前我正在建立一个 Azure SQL 数据仓库。我将 Databricks 用于带有来自 Azure Blob 存储的 JSON 文件的 ETL 过程。

确保不将重复的维度或事实导入 Azure SQL 数据仓库的最佳做法是什么?

这可能发生在事实上,例如在加载过程中出现异常的情况。对于维度,如果我不检查哪些数据已经存在,这也可能发生。我正在使用以下代码将数据导入数据仓库,我发现没有“模式”只会导入不存在的数据:

spark.conf.set(
   "spark.sql.parquet.writeLegacyFormat",
   "true")

 renamedColumnsDf.write
     .format("com.databricks.spark.sqldw")
     .option("url", sqlDwUrlSmall)
     .option("dbtable", "SampleTable")
     .option( "forward_spark_azure_storage_credentials","True")
     .option("tempdir", tempDir)
     .mode("overwrite")
     .save()
4

1 回答 1

1

摄取到临时表,然后 CTAS 到您的事实表,并使用 NOT EXISTS 子句消除重复项。

于 2018-12-12T08:04:38.900 回答