Criar um cluster do Azure Data Explorer e o banco de dados
O Azure Data Explorer é um serviço de análise de dados rápido e totalmente gerenciado para análise em tempo real de grandes volumes de streaming de dados de aplicativos, sites, dispositivos IoT e muito mais. Para usar o Azure Data Explorer, primeiro crie um cluster e um ou mais bancos de dados nesse cluster. Em seguida, você pode ingerir (carregar) dados em um banco de dados e executar consultas nele.
Neste artigo, você aprenderá a criar um cluster e um banco de dados usando C#, Python, Go, a CLI do Azure, o PowerShell ou um modelo do Azure Resource Manager (ARM). Para saber como criar um cluster e um banco de dados usando o portal do Azure, consulte Início Rápido: Criar um cluster e um banco de dados do Azure Data Explorer.
Pré-requisitos
Pré-requisitos por método de criação de cluster e banco de dados:
- Uma assinatura do Azure. Criar uma conta gratuita do Azure.
- Visual Studio 2022 Community Edition. Ativar o Desenvolvimento do Azure durante a configuração do Visual Studio.
- Instale o pacote NuGet Microsoft.Azure.Management.Kusto.
- Um aplicativo do Azure AD e uma entidade de serviço que pode acessar recursos. Salve o ID do Diretório (locatário), o ID do Aplicativo e o Segredo do Cliente.
Criar um cluster do Azure Data Explorer
Esta seção orienta você no processo de criação de um cluster do Azure Data Explorer. Escolha a guia relevante para seu método preferido de criar o cluster.
Crie o cluster usando o código a seguir:
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 authClient = ConfidentialClientApplicationBuilder.Create(clientId) .WithAuthority($"https://login.microsoftonline.com/{tenantId}") .WithClientSecret(clientSecret) .Build(); var result = authClient.AcquireTokenForClient(new[] { "https://management.core.windows.net/" }).ExecuteAsync().Result; var credentials = new TokenCredentials(result.AccessToken, result.TokenType); var kustoManagementClient = new KustoManagementClient(credentials) { SubscriptionId = subscriptionId }; var resourceGroupName = "testrg"; var clusterName = "mykustocluster"; var skuName = KustoSkuName.StandardE8adsV5; var skuTier = KustoSkuTier.Standard; var capacity = 5; var clusterData = new Cluster( location: "Central US", sku: new AzureSku(skuName, skuTier, capacity) ); await kustoManagementClient.Clusters.CreateOrUpdateAsync(resourceGroupName, clusterName, clusterData);
Configuração Valor sugerido Descrição do campo clusterName mykustocluster O nome desejado do cluster. skuName Standard_E8ads_v5 O SKU que será usado para o cluster. nível Standard A camada da SKU. capacidade number O número de instâncias do cluster. resourceGroupName testrg O nome do grupo de recursos em que o cluster será criado. Observação
Criar um cluster é uma operação de execução prolongada, portanto, é altamente recomendável usar CreateOrUpdateAsync, em vez de CreateOrUpdate.
Execute o comando a seguir para verificar se o cluster foi criado com êxito:
clusterData = await kustoManagementClient.Clusters.GetAsync(resourceGroupName, clusterName);
Confirme a criação bem-sucedida do cluster verificando se o resultado contém
provisioningState
comoSucceeded
.
Criar um banco de dados do Azure Data Explorer
Nesta seção, você criará um banco de dados dentro do cluster criado na seção anterior.
Crie o banco de dados usando o código a seguir:
var databaseName = "mykustodatabase"; var softDeletePeriod = TimeSpan.FromDays(3650); var hotCachePeriod = TimeSpan.FromDays(3650); var databaseData = new ReadWriteDatabase( location: clusterData.Location, softDeletePeriod: softDeletePeriod, hotCachePeriod: hotCachePeriod ); await kustoManagementClient.Databases.CreateOrUpdateAsync(resourceGroupName, clusterName, databaseName, databaseData);
Observação
Caso você esteja usando o C# versão 2.0.0 ou inferior, use o banco de dados em vez de ReadWriteDatabase.
Configuração Valor sugerido Descrição do campo clusterName mykustocluster O nome do cluster em que o banco de dados será criado. databaseName mykustodatabase O nome do banco de dados. resourceGroupName testrg O nome do grupo de recursos em que o cluster será criado. softDeletePeriod 3650:00:00:00 O tempo durante o qual os dados serão mantidos disponíveis para consulta. hotCachePeriod 3650:00:00:00 O tempo durante o qual os dados serão mantidos no cache. Execute o seguinte comando para ver o banco de dados criado:
databaseData = await kustoManagementClient.Databases.GetAsync(resourceGroupName, clusterName, databaseName) as ReadWriteDatabase;