Skapa ett Azure Data Explorer-kluster och en databas
Azure Data Explorer är en snabb, fullständigt hanterad dataanalystjänst för realtidsanalys av stora mängder data som strömmar från program, webbplatser, IoT-enheter med mera. För att använda Azure Data Explorer skapar du först ett kluster och skapar en eller flera databaser i klustret. Sedan kan du mata in (läsa in) data i en databas och köra frågor mot den.
I den här artikeln får du lära dig hur du skapar ett kluster och en databas med hjälp av antingen C#, Python, Go, Azure CLI, PowerShell eller en ARM-mall (Azure Resource Manager). Information om hur du skapar ett kluster och en databas med hjälp av Azure Portal finns i Snabbstart: Skapa ett Azure-Data Explorer kluster och databas.
Kodexempel som baseras på tidigare SDK-versioner finns i den arkiverade artikeln.
Förutsättningar
Förutsättningar efter metod för att skapa kluster och databaser:
- En Azure-prenumeration. Skapa ett kostnadsfritt Azure-konto.
- Visual Studio 2022 Community Edition. Aktivera Azure-utveckling under Visual Studio-installationen.
- Installera NuGet-paketet Microsoft.Azure.Management.Kusto.
- Ett Microsoft Entra program och tjänstens huvudnamn som kan komma åt resurser. Spara katalog-ID:t (klientorganisation),program-ID och klienthemlighet.
Skapa ett Azure Data Explorer-kluster
Det här avsnittet vägleder dig genom processen att skapa ett Azure Data Explorer-kluster. Välj relevant flik för önskad metod för att skapa klustret.
Skapa klustret med hjälp av följande kod:
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.CentralUS, sku: new KustoSku(skuName, skuTier) { Capacity = capacity } ); await clusters.CreateOrUpdateAsync(WaitUntil.Completed, clusterName, clusterData);
Inställning Föreslaget värde Fältbeskrivning clusterName mykustocluster Önskat namn på klustret. skuName Standard_E8ads_v5 Den SKU som ska användas för klustret. nivå Standard SKU-nivån. capacity Nummer Antalet instanser av klustret. resourceGroupName testrg Namnet på resursgruppen där klustret kommer att skapas. Anteckning
Att skapa ett kluster är en tidskrävande åtgärd, så vi rekommenderar starkt att du använder CreateOrUpdateAsync i stället för CreateOrUpdate.
Kör följande kommando för att kontrollera om klustret har skapats:
clusterData = (await clusters.GetAsync(clusterName)).Value.Data;
Bekräfta att klustret har skapats genom att verifiera att resultatet innehåller
provisioningState
somSucceeded
.
Skapa en Azure Data Explorer-databas
I det här avsnittet skapar du en databas i klustret som skapades i föregående avsnitt.
Skapa databasen med hjälp av följande kod:
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);
Anteckning
Om du använder C# version 2.0.0 eller senare använder du Database i stället för ReadWriteDatabase.
Inställning Föreslaget värde Fältbeskrivning clusterName mykustocluster Namnet på det kluster där databasen ska skapas. databaseName mykustodatabase Namn på databasen. resourceGroupName testrg Namnet på resursgruppen där klustret kommer att skapas. softDeletePeriod 3650:00:00:00 Hur lång tid data ska behållas för att vara tillgängliga för frågor. hotCachePeriod 3650:00:00:00 Hur lång tid data ska behållas i cache. Kör följande kommando för att se den databas som du skapade:
databaseData = (await databases.GetAsync(databaseName)).Value.Data as KustoReadWriteDatabase;