Azure Data Explorer 클러스터 및 데이터베이스 만들기
Azure Data Explorer는 애플리케이션, 웹 사이트, IoT 디바이스 등으로부터 대량의 데이터 스트리밍에 대한 실시간 분석을 제공하는 빠른 속도의 완전 관리형 데이터 분석 서비스입니다. Azure Data Explorer를 사용하려면 먼저 클러스터를 만들고 이 클러스터에 데이터베이스를 하나 이상 만듭니다. 그런 다음 데이터베이스에 데이터를 수집(로드)하고 이에 대해 쿼리를 실행할 수 있습니다.
이 문서에서는 C#, Python, Go, Azure CLI, PowerShell 또는 ARM(Azure Resource Manager) 템플릿을 사용하여 클러스터 및 데이터베이스를 만드는 방법을 알아봅니다. Azure Portal을 사용하여 클러스터 및 데이터베이스를 만드는 방법을 알아보려면 빠른 시작: Azure Data Explorer 클러스터 및 데이터베이스 만들기를 참조하세요.
필수 조건
클러스터 및 데이터베이스 생성 방법별 필수 구성 요소:
- Azure 구독 무료 Azure 계정을 만듭니다.
- Visual Studio 2022 Community Edition. Visual Studio를 설정하는 동안 Azure 개발을 켭니다.
- Microsoft.Azure.Management.Kusto NuGet 패키지를 설치합니다.
- 리소스에 액세스할 수 있는 Azure AD 애플리케이션 및 서비스 주체입니다. 디렉터리(테넌트) ID, 애플리케이션 ID 및 클라이언트 비밀을 저장합니다.
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 SKU 계층. 용량 number 클러스터의 인스턴스 수입니다. resourceGroupName testrg 클러스터가 만들어질 리소스 그룹 이름입니다. 참고
클러스터 만들기는 장기 실행 작업이므로 CreateOrUpdate 대신 CreateOrUpdateAsync를 사용하는 것이 좋습니다.
다음 명령을 실행하여 클러스터가 성공적으로 만들어졌는지 확인합니다.
clusterData = await kustoManagementClient.Clusters.GetAsync(resourceGroupName, clusterName);
결과에 가 포함되어 있는지 확인하여 클러스터를 성공적으로 만들 수 있는지 확인합니다.
provisioningState
Succeeded
Azure Data Explorer 데이터베이스 만들기
이 섹션에서는 이전 섹션에서 만든 클러스터 내에 데이터베이스를 만듭니다.
다음 코드를 사용하여 데이터베이스를 만듭니다.
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 대신 Database를 사용합니다.
설정 제안 값 필드 설명 clusterName mykustocluster 데이터베이스가 만들어지는 클러스터의 이름입니다. databaseName mykustodatabase 데이터베이스의 이름입니다. resourceGroupName testrg 클러스터가 만들어질 리소스 그룹 이름입니다. softDeletePeriod 3650:00:00:00 데이터를 쿼리할 수 있도록 유지되는 시간입니다. hotCachePeriod 3650:00:00:00 데이터가 캐시에 유지되는 시간입니다. 다음 명령을 실행하여 직접 만든 데이터베이스를 살펴봅니다.
databaseData = await kustoManagementClient.Databases.GetAsync(resourceGroupName, clusterName, databaseName) as ReadWriteDatabase;