我在 blob 存储中获取连续的 blob 文件。我必须加载 Databricks 并放入 Azure SQL 数据库。用于编排此管道的数据工厂
I'm getting continuous blob files in blob storage. I have to load in Databricks and put in Azure SQL DB. Data factory for orchestrating this pipeline
我在 blob 存储中连续接收数据。我最初在 blob 存储中有 5 个 blob 文件我可以使用 Databricks 从 blob 加载到 Azure SQL DB 并使用数据工厂对其进行自动化,但问题是当更新的文件进入 blob 存储时,databricks 加载这些文件以及旧文件并将其发送到 Azure SQL 数据库中。我不想要这些旧文件,每次我只想要较新的文件,这样相同的数据就不会在 Azure SQL 数据库中一次又一次地加载。
最简单的方法是将您刚刚读取的文件存档到一个新文件夹中,命名为 archiveFolder
。比如说,您的数据块正在从以下目录读取:
mnt
sourceFolder
file1.txt
file2.txt
file3.txt
你 运行 你的代码,你提取了文件并将它们加载到 SQL 服务器中。然后你可以简单地做的是归档这些文件(将它们从 sourceFolder
移动到 archiveFolder
。这可以简单地使用以下命令在数据块中完成
dbutils.fs.mv(sourcefilePath, archiveFilePath, True)
因此,下次您的代码 运行 时,您的 sourceFolder
中将只有新文件。
我在 blob 存储中连续接收数据。我最初在 blob 存储中有 5 个 blob 文件我可以使用 Databricks 从 blob 加载到 Azure SQL DB 并使用数据工厂对其进行自动化,但问题是当更新的文件进入 blob 存储时,databricks 加载这些文件以及旧文件并将其发送到 Azure SQL 数据库中。我不想要这些旧文件,每次我只想要较新的文件,这样相同的数据就不会在 Azure SQL 数据库中一次又一次地加载。
最简单的方法是将您刚刚读取的文件存档到一个新文件夹中,命名为 archiveFolder
。比如说,您的数据块正在从以下目录读取:
mnt
sourceFolder
file1.txt
file2.txt
file3.txt
你 运行 你的代码,你提取了文件并将它们加载到 SQL 服务器中。然后你可以简单地做的是归档这些文件(将它们从 sourceFolder
移动到 archiveFolder
。这可以简单地使用以下命令在数据块中完成
dbutils.fs.mv(sourcefilePath, archiveFilePath, True)
因此,下次您的代码 运行 时,您的 sourceFolder
中将只有新文件。