Best Practices für die Verwaltung von U-SQL-Assemblys in einer CI/CD-Pipeline

In diesem Artikel erfahren Sie, wie Sie den Quellcode einer U-SQL-Assembly mit dem neu eingeführten U-SQL-Datenbankprojekt verwalten können. Sie erfahren auch, wie Sie mit Azure DevOps eine CI/CD-Pipeline (Continuous Integration und Continuous Deployment) für die Registrierung von Assemblys einrichten.

Wichtig

Azure Data Lake Analytics am 29. Februar 2024 eingestellt. In dieser Ankündigung erhalten Sie weitere Informationen.

Für Datenanalysen kann Ihr organization Azure Synapse Analytics oder Microsoft Fabric verwenden.

Verwenden des U-SQL-Datenbankprojekts zum Verwalten von Assemblyquellcode

Das U-SQL-Datenbankprojekt ist ein Projekttyp in Visual Studio, mit dem Entwickler U-SQL-Datenbanken schnell und einfach entwickeln, verwalten und bereitstellen können. Sie können alle U-SQL-Datenbankobjekte (mit Ausnahme von Anmeldeinformationen) mit dem U-SQL-Datenbankprojekt verwalten.

Verwenden Sie Folgendes für die Verwaltung des Quellcodes der C#-Assembly und der U-SQL-Skripts für die Assemblyregistrierungs-DDL:

  • U-SQL Datenbankprojekt zum Verwalten der U-SQL-Skripts für die Assemblyregistrierung.
  • Klassenbibliothek (für U-SQL-Anwendungen) zum Verwalten des C#-Quellcodes und der Abhängigkeiten für benutzerdefinierte Operatoren, Funktionen und Aggregatoren (UDOs, UDFs und UDAGs).
  • U-SQL-Datenbankprojekt zum Verweisen auf das Klassenbibliothekprojekt.

Ein U-SQL-Datenbankprojekt kann auf ein Klassenbibliothekprojekt (für U-SQL-Anwendungen) verweisen. Sie können Assemblys erstellen, die in der U-SQL-Datenbank registriert sind, indem Sie referenzierten C#-Quellcode aus diesem Klassenbibliothekprojekt (für U-SQL-Anwendungen) verwenden.

Führen Sie diese Schritte aus, um Projekte zu erstellen und Verweise hinzuzufügen.

  1. Erstellen Sie ein Klassenbibliothekprojekt (für U-SQL-Anwendungen), indem Sie Datei>Neu>Projekt auswählen. Das Projekt befindet sich unter dem Knoten Azure Data Lake > U-SQL.

    Data Lake Tools für Visual Studio: Erstellen eines C#-Klassenbibliothekprojekts

  2. Fügen Sie Ihren benutzerdefinierten C#-Code in das Klassenbibliothekprojekt (für U-SQL-Anwendungen) ein.

  3. Erstellen Sie ein U-SQL-Projekt, indem Sie Datei>Neu>Projekt auswählen. Das Projekt befindet sich unter dem Knoten Azure Data Lake>U-SQL.

    Data Lake Tools für Visual Studio: Erstellen eines U-SQL-Datenbankprojekts

  4. Fügen Sie einen Verweis auf das C#-Klassenbibliothekprojekt für das U-SQL-Datenbankprojekt hinzu.

    Data Lake Tools für Visual Studio Code: Hinzufügen eines Verweises

    Data Lake Tools für Visual Studio: Hinzufügen eines Verweises des U-SQL-Datenbankprojekts

  5. Erstellen Sie ein Assemblyskript im U-SQL-Datenbankprojekt, indem Sie mit der rechten Maustaste auf das Projekt klicken und Neues Element hinzufügen auswählen.

    Data Lake Tools für Visual Studio: Hinzufügen eines Assemblyskripts

  6. Öffnen Sie das Assemblyskript in der Entwurfsansicht für die Assembly. Wählen Sie aus dem Dropdownmenü Assembly aus Verweis erstellen die referenzierte Assembly aus.

    Data Lake Tools für Visual Studio: Erstellen einer Assembly aus einem Verweis

  7. Fügen Sie verwaltete Abhängigkeiten und zusätzliche Dateien hinzu, sofern vorhanden. Beim Hinzufügen von Dateien verwendet das Tool den relativen Pfad, um sicherzustellen, dass die Assemblys später auf Ihrem lokalen Computer und dem Buildcomputer gefunden werden.

@_DeployTempDirectory unten im Editorfenster ist eine vordefinierte Variable, die das Tool auf den Buildausgabeordner verweist. Im Buildausgabeordner verfügt jede Assembly über einen Unterordner, der den gleichen Namen wie die Assembly besitzt. Alle DLLs und zusätzlichen Dateien befinden sich in diesem Unterordner.

Erstellen eines U-SQL-Datenbankprojekts

Die Buildausgabe für ein U-SQL-Datenbankprojekt ist ein U-SQL-Datenbankbereitstellungspaket. Dieses Paket erhält das Suffix .usqldbpack. Beim .usqldbpack-Paket handelt es sich um eine ZIP-Datei, die alle DDL-Anweisungen in einem einzigen U-SQL-Skript im DDL-Ordner enthält. Alle integrierten DLL-Dateien und zusätzlichen Dateien für Assemblys befinden sich im temp-Ordner.

Bereitstellen einer U-SQL-Datenbank

Das .usqldbpack-Paket kann in einem lokalen Konto oder in einem Azure Data Lake Analytics-Konto bereitgestellt werden. Verwenden Sie Visual Studio oder das Bereitstellungs-SDK.

Bereitstellen einer U-SQL-Datenbank in Visual Studio

Sie können eine U-SQL-Datenbank mithilfe eines U-SQL-Datenbankprojekts oder eines .usqldbpack-Pakets in Visual Studio bereitstellen.

Bereitstellen mithilfe eines U-SQL-Datenbankprojekts

  1. Klicken Sie mit der rechten Maustaste auf das U-SQL-Datenbankprojekt, und wählen Sie dann Bereitstellen aus.

  2. Wählen Sie im Assistenten U-SQL-Datenbank bereitstellen das ADLA-Konto aus, in dem Sie die Datenbank bereitstellen möchten. Sowohl lokale Konten als auch ADLA-Konten werden unterstützt.

  3. Die Datenbankquelle wird automatisch ausgefüllt. Sie verweist auf das USQLDBPACK-Paket im Buildausgabeordner des Projekts.

  4. Geben Sie unter Datenbankname einen Namen ein, um eine Datenbank zu erstellen. Wenn bereits eine Datenbank mit demselben Namen im Azure Data Lake Analytics-Zielkonto vorhanden ist, werden alle im Datenbankprojekt definierten Objekte erstellt, ohne dass die Datenbank neu erstellt wird.

  5. Klicken Sie auf Senden, um die U-SQL-Datenbank bereitzustellen. Alle Ressourcen wie z.B. Assemblys und zusätzliche Dateien werden hochgeladen. Ein U-SQL-Auftrag, der alle DDL-Anweisungen enthält, wird übermittelt.

    Data Lake Tools für Visual Studio: Bereitstellen eines U-SQL-Datenbankprojekts

    Data Lake Tools für Visual Studio: Assistent zum Bereitstellen eines U-SQL-Datenbankprojekts

Bereitstellen einer U-SQL-Datenbank in Azure DevOps

PackageDeploymentTool.exe enthält die Programmier- und Befehlszeilenschnittstellen, über die U-SQL-Datenbanken bereitgestellt werden können. Das SDK ist im NuGet-Paket U-SQL SDK enthalten, das sich unter build/runtime/PackageDeploymentTool.exebefindet.

In Azure DevOps können Sie einen Befehlszeilentask und dieses SDK verwenden, um eine Automatisierungspipeline für die Aktualisierung der U-SQL-Datenbank einzurichten. Erfahren Sie mehr über das SDK und das Einrichten einer CI/CD-Pipeline für die Bereitstellung von U-SQL-Datenbanken.

Nächste Schritte