Teilen über


Benutzerdefinierte Plug-Ins

Wichtig

Diese Funktion steht derzeit als Vorschau zur Verfügung. Die ergänzenden Nutzungsbedingungen für Microsoft Azure-Vorschauversionen enthalten weitere rechtliche Bedingungen, die für Azure-Funktionen in Betaversionen, Vorschauversionen oder anderen Versionen gelten, die noch nicht allgemein verfügbar gemacht wurden. Informationen zu dieser spezifischen Vorschau finden Sie unter Informationen zur Vorschauversion von Azure HDInsight on AKS. Bei Fragen oder Funktionsvorschlägen senden Sie eine Anfrage an AskHDInsight mit den entsprechenden Details, und folgen Sie uns für weitere Updates in der Azure HDInsight-Community.

In diesem Artikel wird beschrieben, wie Sie benutzerdefinierte Plug-Ins für Ihr Trino-Cluster in HDInsight on AKS bereitstellen.

Trino bietet eine umfassende Schnittstelle, mit der Benutzer*innen eigene Plug-Ins wie Ereignislistener und benutzerdefinierte SQL-Funktionen programmieren können. Sie können die in diesem Artikel beschriebene Konfiguration hinzufügen, um benutzerdefinierte Plug-Ins mithilfe der ARM-Vorlage in Ihrem Trino-Cluster verfügbar zu machen.

Voraussetzungen

Hinzufügen benutzerdefinierter Plug-Ins

Eine userPluginsSpec.plugins-Konfiguration, die im Ressourcenabschnitt [*].properties.clusterProfile.trinoProfile in der ARM-Vorlage erstellt wurde, ermöglicht es Ihnen, die Plug-Ins anzugeben, die während einer Clusterbereitstellung heruntergeladen werden müssen.
userPluginsSpec.plugins definiert eine Liste, die beschreibt, welche Plug-Ins von welchem Speicherort installiert werden müssen. Das wird in den folgenden Feldern beschrieben.

Eigenschaft Beschreibung
name Dieses Feld wird dem Unterverzeichnis im Trino-Plug-In-Verzeichnis zugeordnet, das alle Plug-Ins unter dem Pfadfeld wie hier beschrieben enthält.
path Dieses Feld steht für den absoluten Pfad zu einem Verzeichnis, das alle JAR-Dateien enthält, die für das Plug-In erforderlich sind. Als Speicher dieser JAR-Dateien wird Azure Data Lake Storage Gen2 unterstützt.
enabled Dieses Feld enthält eine boolesche Eigenschaft, die das Herunterladen dieses Plug-Ins in den Cluster aktiviert oder deaktiviert.

Hinweis

Die Bereitstellung benutzerdefinierter Plug-Ins verwendet eine benutzerseitig zugewiesene verwaltete Identität (MSI), die an den Cluster gebunden ist, um sich bei dem Speicherkonto zu authentifizieren. Stellen Sie sicher, dass das Speicherkonto, das die Plug-Ins enthält, über den entsprechenden Zugriff für die verwaltete Identität verfügt, die an den Cluster gebunden ist.

Das folgende Beispiel veranschaulicht, wie ein Beispiel-Plug-In in einem Trino-Cluster bereitgestellt wird. Fügen Sie diese JSON-Beispieldatei unter [*].properties.clusterProfile in der ARM-Vorlage hinzu.

"trinoProfile": { 
  "userPluginsSpec": { 
    "plugins": [ 
      { 
        "name": "exampleplugin", 
        "path": "https://examplestorageaccount.blob.core.windows.net/plugins/myplugins/", 
        "enabled": true 
      }
    ] 
  } 
}

Stellen Sie die aktualisierte ARM-Vorlage bereit, um die Änderungen in Ihrem Cluster widerzuspiegeln. Weitere Informationen finden Sie unter Bereitstellen einer ARM-Vorlage.

Hinweis

Um die Plug-Ins in einem vorhandenen Cluster zu aktualisieren, ist eine Bereitstellung erforderlich, damit die neuen Änderungen übernommen werden.