次の方法で共有


カタログを構成する

大事な

AKS 上の Azure HDInsight は、2025 年 1 月 31 日に廃止されました。 この発表 により、について詳しく学んでください。

ワークロードの突然の終了を回避するには、ワークロードを Microsoft Fabric または同等の Azure 製品 に移行する必要があります。

大事な

この機能は現在プレビュー段階です。 Microsoft Azure プレビューの 追加使用条件 には、ベータ版、プレビュー版、または一般公開されていない Azure 機能に適用される、より多くの法的条件が含まれています。 この特定のプレビューの詳細については、AKS プレビュー情報 Azure HDInsightを参照してください。 ご質問や機能のご提案については、AskHDInsight に詳細を記載してリクエストを送信してください。また、Azure HDInsight Community をフォローして、さらに多くの更新情報を入手してください。

すべてのTrinoクラスターには、システム、tpcds、tpchなど、いくつかのカタログが既定で付属しています。 OSS Trino の場合と同じ方法で、独自のカタログを追加できます。 さらに、AKS 上の HDInsight を使用した Trino では Key Vault にシークレットを格納できるため、ARM テンプレートで明示的に指定する必要はありません。

新しいカタログを追加するには、Hive カタログ以外のクラスター ARM テンプレートを更新します。これは、Azure portal で Trino クラスターの作成 中に追加できます。

この記事では、ARM テンプレートを使用してクラスターに新しいカタログを追加する方法について説明します。 この記事の例では、SQL Server カタログとメモリ カタログを追加する手順について説明します。

前提 条件

ARM テンプレートでカタログを追加する手順

  1. Key Vault をアタッチし、clusterProfile プロパティの下にある secretsProfile にシークレットを追加します。

    この手順では、Key Vault とシークレットが Trino クラスター用に構成されていることを確認する必要があります。 次の例では、SQL サーバーの資格情報は、trinotest-admin-user、trinotest-admin-pwd というシークレットに格納されます。

    "secretsProfile": {
        "keyVaultResourceId": "/subscriptions/{USER_SUBSCRIPTION_ID}/resourceGroups/{USER_RESOURCE_GROUP}/providers/Microsoft.KeyVault/vaults/{USER_KEYVAULT_NAME}",
        "secrets": [
            {
                "referenceName": "trinotest-admin-user",
                "keyVaultObjectName": "trinotest-admin-user",
                "type": "secret"
            },
            {
                "referenceName": "trinotest-admin-pwd",
                "keyVaultObjectName": "trinotest-admin-pwd",
                "type": "secret"
            }
        ]
    },
    
  2. プロパティ clusterProfile の下にある serviceConfigsProfiles にカタログを追加します。

    この手順では、Trino 固有のカタログ構成をクラスターに追加する必要があります。 次の例では、メモリ コネクタと SQL サーバー コネクタを使用して 2 つのカタログを構成します。 カタログ構成は、次の 2 つの異なる方法で指定できます。

    • 値のセクションにおけるキーと値のペア。
    • コンテンツ プロパティ内の単一の文字列。

    メモリ カタログはキーと値のペアを使用して定義され、SQL サーバー カタログは単一の文字列オプションを使用して定義されます。

     "serviceConfigsProfiles": [
         {
             "serviceName": "trino",
             "configs": [
                 {
                     "component": "catalogs",
                     "files": [
                             {
                             "fileName": "memory.properties",
                             "values": {
                                 "connector.name": "memory",
                                 "memory.max-data-per-node": "128MB"
                             }
                         },
                         {
                             "fileName": "trinotestdb1.properties",
                             "content":"connector.name=sqlserver\nconnection-url=jdbc:sqlserver://server-name.database.windows.net:1433;database=db1;encrypt=true;trustServerCertificate=false;hostNameInCertificate=*.database.windows.net;loginTimeout=30;\nconnection-user=${SECRET_REF:trinotest-admin-user}\nconnection-password=${SECRET_REF:trinotest-admin-pwd}\n"
                         },
                     ]
                 }
             ]
         }
     ],
    

    プロパティ

    財産 説明
    serviceName trino
    コンポーネント カタログを構成するセクションを識別します。"カタログ" である必要があります。
    ファイル クラスターに追加する Trino カタログ ファイルの一覧。
    ファイル名 クラスターに追加する Trino カタログ ファイルの一覧。
    コンテンツ json エスケープされた文字列は Trino カタログファイルに入れられます。 この文字列には、使用されるコネクタの種類に応じて、すべての trino 固有のカタログ プロパティが含まれている必要があります。 詳細については、OSS trino のドキュメントを参照してください。
    ${SECRET_REF:<referenceName>} secretsProfile からシークレットを参照するための特別なタグ。 実行時に Trino が Key Vault からシークレットをフェッチし、カタログ構成に置き換える。
    価値観 コンテンツ プロパティを 1 つの文字列として使用し、メモリ カタログに示すように、個々の Trino カタログ プロパティごとに個別のキーと値のペアを使用して、カタログ構成を指定できます。

更新された ARM テンプレートをデプロイして、クラスター内の変更を反映します。 ARM テンプレート デプロイする方法について説明します。