创建 Azure 数据资源管理器群集和数据库

Azure 数据资源管理器是一项快速、完全托管的数据分析服务,用于实时分析从应用程序、网站和 IoT 设备等资源流式传输的海量数据。 若要使用 Azure 数据资源管理器,请先创建群集,再在该群集中创建一个或多个数据库。 然后,可将数据引入(加载)到数据库,并对其运行查询。

本文介绍如何使用 C#、Python、Go、Azure CLI、PowerShell 或 Azure 资源管理器 (ARM) 模板创建群集和数据库。 若要了解如何使用 Azure 门户创建群集和数据库,请参阅快速入门:创建 Azure 数据资源管理器群集和数据库

有关基于以前的 SDK 版本的代码示例,请参阅存档的文章

先决条件

群集和数据库创建方法的先决条件:

创建 Azure 数据资源管理器群集

本部分指导你完成创建 Azure 数据资源管理器群集的过程。 选择与你的首选方法相关的选项卡来创建群集。

  1. 使用以下代码创建群集:

    var tenantId = "xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx"; //Directory (tenant) ID
    var clientId = "xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx"; //Application ID
    var clientSecret = "PlaceholderClientSecret"; //Client Secret
    var subscriptionId = "xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx";
    var credentials = new ClientSecretCredential(tenantId, clientId, clientSecret);
    var resourceManagementClient = new ArmClient(credentials, subscriptionId);
    var resourceGroupName = "testrg";
    var subscription = await resourceManagementClient.GetDefaultSubscriptionAsync();
    var resourceGroup = (await subscription.GetResourceGroupAsync(resourceGroupName)).Value;
    var clusters = resourceGroup.GetKustoClusters();    
    var clusterName = "mykustocluster";
    var skuName = KustoSkuName.StandardE8adsV5;
    var skuTier = KustoSkuTier.Standard;
    var capacity = 5;
    var clusterData = new KustoClusterData(
        location: AzureLocation.chinaeast2,
        sku: new KustoSku(skuName, skuTier) { Capacity = capacity }
    );
    await clusters.CreateOrUpdateAsync(WaitUntil.Completed, clusterName, clusterData);
    
    设置 建议的值 字段说明
    clusterName mykustocluster 所需的群集名称。
    skuName Standard_D13_v2 将用于群集的 SKU。
    Standard SKU 层。
    容量 数字 群集实例的数目。
    resourceGroupName testrg 将在其中创建群集的资源组名称。

    注意

    创建群集是一个长时间运行的操作,因此强烈建议使用 CreateOrUpdateAsync,而不是 CreateOrUpdate。

  2. 运行以下命令,检查群集是否已成功创建:

    clusterData = (await clusters.GetAsync(clusterName)).Value.Data;
    
  3. 确认是否成功创建了群集,只需检查结果中的 provisioningState 是否为 Succeeded 即可。

创建 Azure 数据资源管理器数据库

在本部分,你将在上一部分中创建的群集内创建一个数据库。

  1. 使用以下代码创建数据库:

    var cluster = (await clusters.GetAsync(clusterName)).Value;
    var databases = cluster.GetKustoDatabases();
    var databaseName = "mykustodatabase";
    var softDeletePeriod = TimeSpan.FromDays(3650);
    var hotCachePeriod = TimeSpan.FromDays(3650);
    var databaseData = new KustoReadWriteDatabase
    {
        Location = clusterData.Location, SoftDeletePeriod = softDeletePeriod, HotCachePeriod = hotCachePeriod
    };
    await databases.CreateOrUpdateAsync(WaitUntil.Completed, databaseName, databaseData);
    

    注意

    如果使用的是 C# 版本 2.0.0 或更低版本,请使用 Database 而不是 ReadWriteDatabase。

    设置 建议的值 字段说明
    clusterName mykustocluster 将在其中创建数据库的群集的名称。
    databaseName mykustodatabase 数据库名称。
    resourceGroupName testrg 将在其中创建群集的资源组名称。
    softDeletePeriod 3650:00:00:00 供查询使用的数据的保留时间。
    hotCachePeriod 3650:00:00:00 数据将在缓存中保留的时间。
  2. 若要查看已创建的数据库,请运行以下命令:

    databaseData = (await databases.GetAsync(databaseName)).Value.Data as KustoReadWriteDatabase;
    

下一步