在 CI/CD 管道中管理 U-SQL 程序集的最佳做法

本文介绍如何使用新引入的 U-SQL 数据库项目管理 U-SQL 程序集源代码。 你还将了解如何使用 Azure DevOps 为程序集注册设置持续集成和部署(CI/CD)管道。

重要

Azure Data Lake Analytics 于 2024 年 2 月 29 日停用。 通过此公告了解详细信息。

对于数据分析,组织可以使用 Azure Synapse AnalyticsMicrosoft Fabric

使用 U-SQL 数据库项目管理程序集源代码

U-SQL 数据库项目 是 Visual Studio 中的项目类型,可帮助开发人员快速轻松地开发、管理和部署其 U-SQL 数据库。 可以使用 U-SQL 数据库项目管理所有 U-SQL 数据库对象(凭据除外)。

若要管理 C# 程序集源代码和程序集注册 DDL U-SQL 脚本,请使用:

  • 用于管理程序集注册 U-SQL 脚本的 U-SQL 数据库项目。
  • 类库(对于 U-SQL 应用程序),用于管理用户定义的运算符、函数和聚合器的 C# 源代码和依赖项(UDO、UDF 和 UDAG)。
  • 用于引用类库项目的 U-SQL 数据库项目。

U-SQL 数据库项目可以引用类库(对于 U-SQL 应用程序)项目。 可以使用此类库项目(用于 U-SQL 应用程序)中的引用 C# 源代码,创建注册在 U-SQL 数据库中的程序集。

按照以下步骤创建项目并添加引用。

  1. 通过选择文件>新建>项目来创建类库项目(用于 U-SQL 应用程序)。 该项目位于 Azure Data Lake > U-SQL 节点下。

    用于 Visual Studio 的 Data Lake 工具--创建 C# 类库项目

  2. 在类库(对于 U-SQL 应用程序)项目中添加用户定义的 C# 代码。

  3. 通过选择“文件>新建>项目”创建 U-SQL项目。 该项目位于 Azure Data Lake>U-SQL 节点下。

    用于 Visual Studio 的 Data Lake 工具--创建 U-SQL 数据库项目

  4. 为 U-SQL 数据库项目添加对 C# 类库项目的引用。

    用于 Visual Studio 的 Data Lake 工具 - 添加引用

    用于 Visual Studio 的 Data Lake 工具 - 添加 U-SQL 数据库项目参考

  5. 右键单击项目并选择“ 添加新项”,在 U-SQL 数据库项目中创建程序集脚本。

    用于 Visual Studio 的 Data Lake 工具--添加程序集脚本

  6. 在程序集设计视图中打开程序集脚本。 从“创建程序集”下拉菜单中选择引用的程序集。

    用于 Visual Studio 的 Data Lake 工具 - 从引用创建程序集

  7. 添加 托管依赖项附加文件(如果有)。 添加其他文件时,该工具使用相对路径来确保它可以找到本地计算机和构建机器上的程序集。

底部编辑器窗口中的@_DeployTempDirectory是一个预定义的变量,该变量将该工具指向生成输出文件夹。 在生成输出文件夹下,每个程序集都有一个名为程序集名称的子文件夹。 所有 DLL 和其他文件都位于该子文件夹中。

生成 U-SQL 数据库项目

U-SQL 数据库项目的生成输出是 U-SQL 数据库部署包。 它用后缀 .usqldbpack命名。 包 .usqldbpack 是一个 .zip 文件,其中包含 DDL 文件夹中单个 U-SQL 脚本中的所有 DDL 语句。 所有生成的 .dll 文件和程序集的其他文件都位于 Temp 文件夹中。

部署 U-SQL 数据库

可将包 .usqldbpack 部署到本地帐户或 Azure Data Lake Analytics 帐户。 使用 Visual Studio 或部署 SDK。

在 Visual Studio 中部署 U-SQL 数据库

可以使用 U-SQL 数据库项目或 .usqldbpack Visual Studio 中的包部署 U-SQL 数据库。

使用 U-SQL 数据库项目进行部署

  1. 右键单击 U-SQL 数据库项目,然后选择“ 部署”。

  2. “部署 U-SQL 数据库 ”向导中,选择要将数据库部署到的 ADLA 帐户 。 支持本地帐户和 ADLA 帐户。

  3. 数据库源会被自动填充。 它指向项目的生成输出文件夹中的 .usqldbpack 包。

  4. 数据库名称 中输入名称以创建数据库。 如果目标 Azure Data Lake Analytics 帐户中已存在同名的数据库,则不会重新创建数据库项目中定义的所有对象。

  5. 若要部署 U-SQL 数据库,请选择“ 提交”。 所有资源(如程序集和附加文件)均已上传。 提交包含所有 DDL 语句的 U-SQL 作业。

    用于 Visual Studio 的 Data Lake 工具--部署 U-SQL 数据库项目

    用于 Visual Studio 的 Data Lake 工具--部署 U-SQL 数据库项目向导

在 Azure DevOps 中部署 U-SQL 数据库

PackageDeploymentTool.exe 提供有助于部署 U-SQL 数据库的编程和命令行接口。 SDK 包含在位于 build/runtime/PackageDeploymentTool.exeU-SQL SDK NuGet 包中。

在 Azure DevOps 中,可以使用命令行任务和此 SDK 为 U-SQL 数据库刷新设置自动化管道。 详细了解 SDK 以及如何为 U-SQL 数据库部署设置 CI/CD 管道

后续步骤