Создание кластера и базы данных Azure Data Explorer
Azure Data Explorer — это быстрая и полностью управляемая служба для аналитики большого объема потоковых данных в реальном времени, поступающих из приложений, а также с веб-сайтов, устройств Интернета вещей и т. д. Чтобы использовать обозреватель данных Azure, сначала нужно создать кластер и одну или несколько баз данных в этом кластере. Затем можно принимать (загружать) данные в базу данных и выполнять к ней запросы.
Из этой статьи вы узнаете, как создать кластер и базу данных с помощью C#, Python, Go, Azure CLI, PowerShell или шаблона Azure Resource Manager (ARM). Сведения о создании кластера и базы данных с помощью портал Azure см. в статье Краткое руководство. Создание кластера и базы данных Data Explorer Azure.
Предварительные требования
Предварительные требования по методу создания кластера и базы данных:
- Подписка Azure. Создайте бесплатную учетную запись Azure.
- Visual Studio 2022 Community Edition. Включите разработку в Azure во время установки Visual Studio.
- Установите пакет NuGet Microsoft.Azure.Management.Kusto.
- Azure AD приложение и субъект-служба, которые могут получать доступ к ресурсам. Сохраните идентификатор каталога (клиента),идентификатор приложения и секрет клиента.
Создание кластера Azure Data Explorer
В этом разделе описывается процесс создания кластера azure Data Explorer. Выберите соответствующую вкладку для предпочтительного метода создания кластера.
Создайте кластер, используя приведенный ниже код:
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);
Параметр Рекомендуемое значение Описание поля clusterName mykustocluster Необходимое имя кластера. skuName Standard_E8ads_v5 Номер SKU, который будет использоваться для кластера. Уровень Standard Edition Уровень SKU. Емкость number Количество экземпляров кластера. имя_группы_ресурсов testrg Имя группы ресурсов, в которой будет создан кластер. Примечание
Создание кластера — это длительная операция, поэтому настоятельно рекомендуется использовать CreateOrUpdateAsync вместо CreateOrUpdate.
Чтобы проверить, успешно ли создан кластер, можно выполнить следующую команду:
clusterData = await kustoManagementClient.Clusters.GetAsync(resourceGroupName, clusterName);
Подтвердите успешное создание кластера, убедившись, что результат содержит
provisioningState
значениеSucceeded
.
Создание базы данных Data Explorer Azure
В этом разделе вы создадите базу данных в кластере, созданном в предыдущем разделе.
Создайте базу данных, используя приведенный ниже код:
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);
Примечание
Если вы используете C# версии 2.0.0 или ниже, используйте базу данных вместо ReadWriteDatabase.
Параметр Рекомендуемое значение Описание поля clusterName mykustocluster Имя кластера, в котором необходимо создать базу данных. databaseName mykustodatabase Имя базы данных. имя_группы_ресурсов testrg Имя группы ресурсов, в которой будет создан кластер. softDeletePeriod 3650:00:00:00 Время, на протяжении которого данные будут храниться таким образом, чтобы они были доступны для запроса. hotCachePeriod 3650:00:00:00 Время, на протяжении которого данные будут храниться в кэше. Выполните следующую команду, чтобы просмотреть созданную базу данных:
databaseData = await kustoManagementClient.Databases.GetAsync(resourceGroupName, clusterName, databaseName) as ReadWriteDatabase;