簡體   English   中英

如何通過 PowerShell 或 ARM 模板在 Azure 數據資源管理器中創建表和攝取映射

[英]How to create Table and Ingestion Mapping in Azure Data Explorer via PowerShell or ARM Template

我們希望自動創建和設置 Azure 數據瀏覽器集群。

通過 ARM 模板配置集群和創建數據庫沒有問題。

也可以通過 New-AzKustoDataConnection PowerShell 命令創建數據連接以通過事件中心攝取數據流。

但是,此命令要求數據庫中存在表和攝取映射。

  • 作為環境設置腳本的一部分,我如何創建一個表以及攝取映射?
  • 這是否可以通過 PowerShell 或 ARM 模板實現?

最近,在數據庫上下文中運行包含 KQL 命令的自定義腳本的功能被添加到Kusto 管理 PowerShell API以及其他語言 SDK (如 C#) 您可以使用它來創建表和表的映射。

您可以在 ARM 模板部署期間運行 Kusto 查詢語言腳本來配置數據庫。 Kusto 查詢語言腳本是一個或多個控制命令的列表,每個控制命令由一個換行符分隔,並創建為將使用 ARM 模板訪問的資源。 該腳本只能運行以下列動詞開頭的控制命令:

  • 。創造
  • .create-or-alter
  • .create-merge
  • 。改變
  • .alter-merge

整體流程如下所示:

  1. 創建包含控制命令的腳本。 例如,下面的代碼是創建兩個表的 Kusto 查詢語言腳本: MyTableMyTable2
.create table MyTable (Level:string, Timestamp:datetime, UserId:string, TraceId:string, Message:string, ProcessId:int32)
.create table MyTable2 (Level:string, Timestamp:datetime, UserId:string, TraceId:string, Message:string, ProcessId:int32)
  1. 將您的 Kusto 查詢語言腳本上傳到 Azure 存儲帳戶。

  2. 使用共享訪問簽名 (SaS) 提供對此文件的訪問。 您可以使用 PowerShell、CLI 或 .NET 執行此操作。

{
    "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": { ... },
    "variables": { },
    "resources": [
        {
            "type": "Microsoft.Kusto/Clusters/Databases/Scripts",
            "apiVersion": "2021-01-01",
            "name": "[concat(concat(parameters('clusterName'), '/'), concat(parameters('databaseName'), '/'), parameters('scriptName'))]",
            "properties": {
                "scriptUrl": "[parameters('scriptUrl')]",
                "scriptUrlSasToken": "[parameters('scriptUrlSasToken')]",
                "continueOnErrors": "[parameters('continueOnErrors')]",
                "forceUpdateTag": "[parameters('forceUpdateTag')]"
            }
        }
    ]
}

更多信息可以在文檔中找到: https://docs.microsoft.com/en-us/azure/data-explorer/database-script

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM