从 USQL 中的元数据动态生成提取脚本

Dynamically generate Extract scripts from metadata in USQL

我需要读取 json 格式的元数据信息并动态生成提取语句以进一步转换 table 的数据。

我目前已在 Azure SQL 数据库中加载元数据信息。因此,我需要读取这些数据并动态创建提取语句并将它们作为参数传递给 USQL。

需要一些帮助来了解如何进行此操作以及这是否是我遵循的正确方法。

提前致谢。

不要将执行 U-SQL 等同于 SQL 服务器中的存储过程:两者在本质上是完全不同的。例如,有点支持传递参数,但不像您想象的那样,并且 [据我所知] 不支持动态脚本元素。

不过,我认为您可以使用 Azure Data Factory (ADF) 和一些自定义代码来完成此操作。

  1. ADF 通过引用 Blob 存储中的 blob 来执行 U-SQL 脚本,因此您可以使用 ADF custom activity (Azure Batch) 读取您的元数据并动态生成 U-SQL Azure Blob 的脚本。
  2. 一旦可用,数据工厂就可以根据包含脚本名称的管道参数执行生成的脚本。

在 ADF 中执行此操作允许您动态执行此复杂操作。如果你走这条路,一定要使用 ADF V2。