Azure Data Explorer는 애플리케이션, 웹 사이트, IoT 디바이스 등으로부터 대량의 데이터 스트리밍에 대한 실시간 분석을 제공하는 빠른 속도의 완전 관리형 데이터 분석 서비스입니다. Azure Data Explorer를 사용하려면 먼저 클러스터를 만들고 이 클러스터에 데이터베이스를 하나 이상 만듭니다. 그런 다음 데이터베이스에 데이터를 수집(로드)하고 이에 대해 쿼리를 실행할 수 있습니다.
이 문서에서는 C#, Python, Go, Azure CLI, PowerShell, Bicep 또는 ARM(Azure Resource Manager) 템플릿을 사용하여 클러스터 및 데이터베이스를 만드는 방법을 알아봅니다. Azure Portal을 사용하여 클러스터 및 데이터베이스를 만드는 방법을 알아보려면 빠른 시작: Azure Data Explorer 클러스터 및 데이터베이스 만들기를 참조하세요.
이전 SDK 버전을 기반으로 하는 코드 샘플은 보관된 문서를 참조하세요.
필수 조건
클러스터 및 데이터베이스 생성 방법별 필수 구성 요소:
- Azure PowerShell에서 Kusto cmdlet 사용의 지침을 사용하여 환경을 설정합니다.
Important
Azure CLI Kusto 확장은 오래되었으며 유지 관리되지 않습니다. 클러스터 및 데이터베이스를 만들기 위해 PowerShell 또는 ARM/Bicep 템플릿을 사용하는 것이 좋습니다. Azure CLI 사용하도록 선택한 경우 Kusto 확장을 설치하여 Azure Data Explorer 대한 최신 CLI 명령이 있는지 확인합니다.
- Azure 구독
무료 Azure 계정을 만듭니다.
- Azure Cloud Shell을 사용하여 로컬 환경에 아무것도 설치하지 않고도 이 문서의 코드를 실행할 수 있습니다.
- Azure CLI를 로컬로 설치하고 사용하도록 선택하는 경우 매개 변수 구성의 단계를 따릅니다. 이 문서에는 Azure CLI 버전 2.0.4 이상이 필요합니다.
az --version을 실행하여 버전을 확인합니다. 설치 또는 업그레이드가 필요한 경우, Azure CLI 설치를 참조하세요.
Azure Cloud Shell에서 명령을 실행하는 경우에는 다음 단계가 필요하지 않습니다. CLI를 로컬로 실행하는 경우 다음 단계에 따라 환경을 설정합니다.
최신 Kusto CLI 버전을 사용하기 위한 확장 설치:
az extension add -n kusto
다음 명령을 실행하여 Azure에 로그인합니다.
az login
클러스터를 만들려는 구독을 설정합니다.
MyAzureSub를 사용할 Azure 구독의 이름으로 바꿉니다.
az account set --subscription MyAzureSub
클러스터를 만들 리소스 그룹을 설정합니다.
testrg를 사용하려는 리소스 그룹의 이름으로 바꿉니다.
az group create --name testrg --location westus
Azure Data Explorer 클러스터 만들기
이 섹션에서는 Azure Data Explorer 클러스터를 만드는 과정을 안내합니다. 원하는 방법에 대한 관련 탭을 선택하여 클러스터를 만듭니다.
ARM 템플릿
다음은 최소 구성으로 해당 클러스터 내에 Azure Data Explorer 클러스터 및 데이터베이스를 만드는 ARM 템플릿의 예입니다. 전체 세부 정보 및 지원되는 속성은 ARM 템플릿 클러스터 참조 및 ARM 템플릿 데이터베이스 참조를 참조하세요.
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"clusters_kustocluster_name": {
"type": "string",
"defaultValue": "[concat('kusto', uniqueString(resourceGroup().id))]",
"metadata": {
"description": "Name of the cluster to create"
}
},
"databases_kustodb_name": {
"type": "string",
"defaultValue": "kustodb",
"metadata": {
"description": "Name of the database to create"
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Location for all resources."
}
}
},
"variables": {},
"resources": [
{
"name": "[parameters('clusters_kustocluster_name')]",
"type": "Microsoft.Kusto/clusters",
"apiVersion": "2025-02-14",
"location": "[parameters('location')]",
"sku": {
"name": "Standard_E8ads_v5",
"tier": "Standard",
"capacity": 2
}
},
{
"name": "[concat(parameters('clusters_kustocluster_name'), '/', parameters('databases_kustodb_name'))]",
"type": "Microsoft.Kusto/clusters/databases",
"apiVersion": "2025-02-14",
"location": "[parameters('location')]",
"dependsOn": [
"[resourceId('Microsoft.Kusto/clusters', parameters('clusters_kustocluster_name'))]"
],
"kind": "ReadWrite",
"properties": {
"softDeletePeriod": "P365D",
"hotCachePeriod": "P31D"
}
}
]
}
다음은 최소 구성을 사용하여 해당 클러스터 내에 Azure Data Explorer 클러스터 및 데이터베이스를 만드는 Bicep 템플릿의 예입니다. 전체 세부 정보 및 지원되는 속성은 Bicep 클러스터 참조 및 Bicep 데이터베이스 참조 참조하세요.
@description('Name of the cluster to create')
param clusterName string = 'kusto${uniqueString(resourceGroup().id)}'
@description('Name of the database to create')
param databaseName string = 'kustodb'
@description('Location for all resources.')
param location string = resourceGroup().location
resource cluster 'Microsoft.Kusto/clusters@2025-02-14' = {
name: clusterName
location: location
sku: {
name: 'Standard_E8ads_v5'
tier: 'Standard'
capacity: 2
}
}
resource database 'Microsoft.Kusto/clusters/databases@2025-02-14' = {
parent: cluster
name: databaseName
location: location
kind: 'ReadWrite'
properties: {
softDeletePeriod: 'P365D'
hotCachePeriod: 'P31D'
}
}
다음 명령을 사용하여 클러스터를 만듭니다.
New-AzKustoCluster -ResourceGroupName testrg -Name mykustocluster -Location westus2 -SkuTier Standard -SkuCapacity 2 -SkuName 'Standard_E8ads_v5'
|
설정 |
제안 값 |
필드 설명 |
| Name |
mykustocluster |
원하는 클러스터 이름입니다. |
| SKU |
Standard_E8ads_v5 |
클러스터에 사용될 SKU입니다. |
| ResourceGroupName |
testrg |
클러스터가 만들어질 리소스 그룹 이름입니다. |
기타 선택적 매개 변수(예: 클러스터 용량)가 추가로 있습니다.
다음 명령을 실행하여 클러스터가 성공적으로 만들어졌는지 확인합니다.
Get-AzKustoCluster -Name mykustocluster -ResourceGroupName testrg
결과에 provisioningState이(가) Succeeded(으)로 포함되어 있는지 확인하여 클러스터가 성공적으로 생성되었는지 확인합니다.
다음 코드를 사용하여 클러스터를 만듭니다.
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);
|
설정 |
제안 값 |
필드 설명 |
| clusterName |
mykustocluster |
원하는 클러스터 이름입니다. |
| skuName |
Standard_E8ads_v5 |
클러스터에 사용될 SKU입니다. |
| 계층 |
Standard |
SKU 계층. |
| 용량 |
숫자 |
클러스터의 인스턴스 수입니다. |
| resourceGroupName |
testrg |
클러스터가 만들어질 리소스 그룹 이름입니다. |
참고
클러스터 만들기는 장기 실행 작업이므로 CreateOrUpdate 대신 CreateOrUpdateAsync를 사용하는 것이 좋습니다.
다음 명령을 실행하여 클러스터가 성공적으로 만들어졌는지 확인합니다.
clusterData = (await clusters.GetAsync(clusterName)).Value.Data;
결과에 provisioningState이(가) Succeeded(으)로 포함되어 있는지 확인하여 클러스터가 성공적으로 생성되었는지 확인합니다.
다음 명령을 사용하여 클러스터를 만듭니다.
from azure.mgmt.kusto import KustoManagementClient
from azure.mgmt.kusto.models import Cluster, AzureSku
from azure.common.credentials import ServicePrincipalCredentials
#Directory (tenant) ID
tenant_id = "xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx"
#Application ID
client_id = "xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx"
#Client Secret
client_secret = "xxxxxxxxxxxxxx"
subscription_id = "xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx"
credentials = ServicePrincipalCredentials(
client_id=client_id,
secret=client_secret,
tenant=tenant_id
)
location = 'Central US'
sku_name = 'Standard_E8ads_v5'
capacity = 5
tier = "Standard"
resource_group_name = 'testrg'
cluster_name = 'mykustocluster'
cluster = Cluster(location=location, sku=AzureSku(name=sku_name, capacity=capacity, tier=tier))
kusto_management_client = KustoManagementClient(credentials, subscription_id)
cluster_operations = kusto_management_client.clusters
poller = cluster_operations.begin_create_or_update(resource_group_name, cluster_name, cluster)
poller.wait()
|
설정 |
제안 값 |
필드 설명 |
| cluster_name |
mykustocluster |
원하는 클러스터 이름입니다. |
| sku_name |
Standard_E8ads_v5 |
클러스터에 사용될 SKU입니다. |
| 계층 |
Standard |
SKU 계층. |
| 용량 |
숫자 |
클러스터의 인스턴스 수입니다. |
| resource_group_name |
testrg |
클러스터가 만들어질 리소스 그룹 이름입니다. |
참고
클러스터 만들기는 장기 실행 작업입니다.
begin_create_or_update 메서드는 LROPoller의 인스턴스를 반환합니다. 자세한 내용은 LROPoller 클래스를 참조하세요.
다음 명령을 실행하여 클러스터가 성공적으로 만들어졌는지 확인합니다.
cluster_operations.get(resource_group_name = resource_group_name, cluster_name= cluster_name, custom_headers=None, raw=False)
결과에 provisioningState가 Succeeded로 포함되어 있는지 확인하여 클러스터가 성공적으로 생성되었는지 확인합니다.
다음 코드는 클러스터를 만드는 방법을 보여줍니다.
필수 구성 요소의 서비스 주체 정보를 포함하여 필요한 환경 변수를 설정합니다. 클러스터를 만들려는 구독 ID, 리소스 그룹 및 지역을 입력합니다.
export AZURE_CLIENT_ID="<enter service principal client ID>"
export AZURE_CLIENT_SECRET="<enter service principal client secret>"
export AZURE_TENANT_ID="<enter tenant ID>"
export SUBSCRIPTION="<enter subscription ID>"
export RESOURCE_GROUP="<enter resource group name>"
export LOCATION="<enter azure location e.g. Southeast Asia>"
export CLUSTER_NAME_PREFIX="<enter prefix (cluster name will be [prefix]-ADXTestCluster)>"
export DATABASE_NAME_PREFIX="<enter prefix (database name will be [prefix]-ADXTestDB)>"
다음 코드를 실행하여 클러스터를 만듭니다.
import (
"context"
"log"
"os"
"strconv"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/kusto/armkusto"
"github.com/olekukonko/tablewriter"
)
const (
subscriptionEnvVar = "AZURE_SUBSCRIPTION_ID"
resourceGroupEnvVar = "AZURE_RESOURCE_GROUP"
locationEnvVar = "AZURE_LOCATION"
clusterNamePrefixEnvVar = "CLUSTER_NAME_PREFIX"
dbNamePrefixEnvVar = "DATABASE_NAME_PREFIX"
clusterName = "ADXTestCluster"
databaseName = "ADXTestDB"
)
func init() {
subscription = os.Getenv(subscriptionEnvVar)
if subscription == "" {
log.Fatalf("missing environment variable %s", subscriptionEnvVar)
}
rgName = os.Getenv(resourceGroupEnvVar)
if rgName == "" {
log.Fatalf("missing environment variable %s", resourceGroupEnvVar)
}
location = os.Getenv(locationEnvVar)
if location == "" {
log.Fatalf("missing environment variable %s", locationEnvVar)
}
clusterNamePrefix = os.Getenv(clusterNamePrefixEnvVar)
if clusterNamePrefix == "" {
log.Fatalf("missing environment variable %s", clusterNamePrefixEnvVar)
}
dbNamePrefix = os.Getenv(dbNamePrefixEnvVar)
if dbNamePrefix == "" {
log.Fatalf("missing environment variable %s", dbNamePrefixEnvVar)
}
}
func getClustersClient(subscription string) *armkusto.ClustersClient {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatal(err)
}
client, err := armkusto.NewClustersClient(subscription, cred, nil)
if err != nil {
log.Fatal(err)
}
return client
}
// 1 instance, Basic tier with compute type Dev(No SLA)_Standard_D11_v2
func createCluster(sub, name, location, rgName string) {
ctx := context.Background()
numInstances := int32(1)
client := getClustersClient(sub)
result, err := client.BeginCreateOrUpdate(
ctx,
rgName,
name,
armkusto.Cluster{
Location: &location,
SKU: &armkusto.AzureSKU{
Name: to.Ptr(armkusto.AzureSKUNameDevNoSLAStandardD11V2),
Capacity: &numInstances,
Tier: to.Ptr(armkusto.AzureSKUTierBasic),
},
},
nil,
)
if err != nil {
log.Fatal("failed to start cluster creation ", err)
}
log.Printf("waiting for cluster creation to complete - %s\n", name)
r, err := result.PollUntilDone(ctx, nil)
if err != nil {
log.Fatal(err)
}
log.Printf("created cluster %s\n", *r.Name)
}
createCluster(subscription, clusterNamePrefix+clusterName, location, rgName)
클러스터를 나열하여 성공적으로 만들려면 다음을 수행합니다.
func listClusters(sub, rgName string) {
log.Printf("listing clusters in resource group %s\n", rgName)
ctx := context.Background()
result := getClustersClient(sub).NewListByResourceGroupPager(rgName, nil)
data := [][]string{}
for result.More() {
temp, err := result.NextPage(ctx)
if err != nil {
log.Fatal(err)
}
for _, c := range temp.Value {
data = append(data, []string{*c.Name, string(*c.Properties.State), *c.Location, strconv.Itoa(int(*c.SKU.Capacity)), *c.Properties.URI})
}
}
table := tablewriter.NewWriter(os.Stdout)
table.SetHeader([]string{"Name", "State", "Location", "Instances", "URI"})
for _, v := range data {
table.Append(v)
}
table.Render()
}
listClusters(subscription, rgName)
Important
Azure CLI Kusto 확장은 오래되었으며 유지 관리되지 않습니다. 클러스터 및 데이터베이스를 만들기 위해 PowerShell 또는 ARM/Bicep 템플릿을 사용하는 것이 좋습니다. Azure CLI 사용하도록 선택한 경우 Kusto 확장을 설치하여 Azure Data Explorer 대한 최신 CLI 명령이 있는지 확인합니다.
다음 명령을 사용하여 클러스터를 만듭니다.
az kusto cluster create --cluster-name azureclitest --sku name="Standard_E8ads_v5" tier="Standard" --resource-group testrg --location westus
|
설정 |
제안 값 |
필드 설명 |
| 이름 |
azureclitest |
원하는 클러스터 이름입니다. |
| sku |
Standard_E8ads_v5 |
클러스터에 사용될 SKU입니다. 매개 변수: name - SKU 이름입니다.
tier - SKU 계층입니다. |
| 리소스 그룹 |
testrg |
클러스터가 만들어질 리소스 그룹 이름입니다. |
| 위치 |
westus |
클러스터가 만들어지는 위치입니다. |
기타 선택적 매개 변수(예: 클러스터 용량)가 추가로 있습니다.
다음 명령을 실행하여 클러스터가 성공적으로 만들어졌는지 확인합니다.
az kusto cluster show --cluster-name azureclitest --resource-group testrg
결과에 provisioningState이(가) Succeeded로 포함되어 있는지 확인하여 클러스터가 성공적으로 생성되었는지 확인합니다.
Azure Data Explorer 데이터베이스 만들기
이 섹션에서는 이전 섹션에서 만든 클러스터 내에 데이터베이스를 만듭니다.
클러스터와 데이터베이스는 이전 섹션의 ARM 템플릿과 함께 만들어집니다.
클러스터와 데이터베이스는 이전 섹션의 Bicep 템플릿과 함께 만들어집니다.
다음 명령을 사용하여 데이터베이스를 만듭니다.
New-AzKustoDatabase -ResourceGroupName testrg -ClusterName mykustocluster -Name mykustodatabase -SoftDeletePeriod 3650:00:00:00 -HotCachePeriod 3650:00:00:00
|
설정 |
제안 값 |
필드 설명 |
| ClusterName |
mykustocluster |
데이터베이스가 만들어지는 클러스터의 이름입니다. |
| Name |
mykustodatabase |
데이터베이스의 이름입니다. |
| ResourceGroupName |
testrg |
클러스터가 만들어질 리소스 그룹 이름입니다. |
| 소프트 삭제 기간 |
3650:00:00:00 |
데이터를 쿼리할 수 있도록 유지되는 시간입니다. |
| 핫 캐시 기간 |
3650:00:00:00 |
데이터가 캐시에 유지되는 시간입니다. |
다음 명령을 실행하여 직접 만든 데이터베이스를 살펴봅니다.
Get-AzKustoDatabase -ClusterName mykustocluster -ResourceGroupName testrg -Name mykustodatabase
다음 코드를 사용하여 데이터베이스를 만듭니다.
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 이하를 사용하는 경우 ReadWriteDatabase 대신 Database를 사용합니다.
|
설정 |
제안 값 |
필드 설명 |
| clusterName |
mykustocluster |
데이터베이스가 만들어지는 클러스터의 이름입니다. |
| databaseName |
mykustodatabase |
데이터베이스의 이름입니다. |
| resourceGroupName |
testrg |
클러스터가 만들어질 리소스 그룹 이름입니다. |
| 소프트 삭제 기간 |
3650:00:00:00 |
데이터를 쿼리할 수 있도록 유지되는 시간입니다. |
| hotCachePeriod |
3650:00:00:00 |
데이터가 캐시에 유지되는 시간입니다. |
다음 명령을 실행하여 직접 만든 데이터베이스를 살펴봅니다.
databaseData = (await databases.GetAsync(databaseName)).Value.Data as KustoReadWriteDatabase;
다음 명령을 사용하여 데이터베이스를 만듭니다.
from azure.mgmt.kusto import KustoManagementClient
from azure.common.credentials import ServicePrincipalCredentials
from azure.mgmt.kusto.models import ReadWriteDatabase
from datetime import timedelta
#Directory (tenant) ID
tenant_id = "xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx"
#Application ID
client_id = "xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx"
#Client Secret
client_secret = "xxxxxxxxxxxxxx"
subscription_id = "xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx"
credentials = ServicePrincipalCredentials(
client_id=client_id,
secret=client_secret,
tenant=tenant_id
)
location = 'Central US'
resource_group_name = 'testrg'
cluster_name = 'mykustocluster'
soft_delete_period = timedelta(days=3650)
hot_cache_period = timedelta(days=3650)
database_name = "mykustodatabase"
kusto_management_client = KustoManagementClient(credentials, subscription_id)
database_operations = kusto_management_client.databases
database = ReadWriteDatabase(location=location,
soft_delete_period=soft_delete_period,
hot_cache_period=hot_cache_period)
poller = database_operations.begin_create_or_update(resource_group_name = resource_group_name, cluster_name = cluster_name, database_name = database_name, parameters = database)
poller.wait()
참고
Python 버전 0.4.0 이하를 사용하는 경우 ReadWriteDatabase 대신 Database를 사용합니다.
|
설정 |
제안 값 |
필드 설명 |
| cluster_name |
mykustocluster |
데이터베이스가 만들어지는 클러스터의 이름입니다. |
| database_name |
mykustodatabase |
데이터베이스의 이름입니다. |
| resource_group_name |
testrg |
클러스터가 만들어질 리소스 그룹 이름입니다. |
| 소프트_삭제_기간 |
3650일, 0:00:00 |
데이터를 쿼리할 수 있도록 유지되는 시간입니다. |
| hot_cache_period |
3650일, 0:00:00 |
데이터가 캐시에 유지되는 시간입니다. |
다음 명령을 실행하여 직접 만든 데이터베이스를 살펴봅니다.
database_operations.get(resource_group_name = resource_group_name, cluster_name = cluster_name, database_name = database_name)
다음 코드는 데이터베이스를 만드는 방법을 보여줍니다. 패키지 가져오기 및 환경 변수 시작은 이전 섹션과 동일합니다.
다음 코드를 실행하여 데이터베이스를 만듭니다.
func createDatabase(sub, rgName, clusterName, location, dbName string) {
ctx := context.Background()
client := getDBClient(sub)
future, err := client.BeginCreateOrUpdate(ctx, rgName, clusterName, dbName, &armkusto.ReadWriteDatabase{Kind: to.Ptr(armkusto.KindReadWrite), Location: &location}, nil)
if err != nil {
log.Fatal("failed to start database creation ", err)
}
log.Printf("waiting for database creation to complete - %s\n", dbName)
resp, err := future.PollUntilDone(ctx, nil)
if err != nil {
log.Fatal(err)
}
kdb := resp.GetDatabase()
log.Printf("created DB %s with ID %s and type %s\n", *kdb.Name, *kdb.ID, *kdb.Type)
}
createDatabase(subscription, rgName, clusterNamePrefix+clusterName, location, dbNamePrefix+databaseName)
데이터베이스를 나열하여 성공적으로 만들 수 있도록 합니다.
func listDatabases(sub, rgName, clusterName string) {
log.Printf("listing databases in cluster %s\n", clusterName)
ctx := context.Background()
result := getDBClient(sub).NewListByClusterPager(rgName, clusterName, nil)
data := [][]string{}
for result.More() {
temp, err := result.NextPage(ctx)
if err != nil {
log.Fatal(err)
}
for _, db := range temp.Value {
if *db.GetDatabase().Kind == armkusto.KindReadWrite {
data = append(data, []string{*db.GetDatabase().Name, string(*db.GetDatabase().Kind), *db.GetDatabase().Location, *db.GetDatabase().Type})
}
}
}
table := tablewriter.NewWriter(os.Stdout)
table.SetHeader([]string{"Name", "State", "Location", "Type"})
for _, v := range data {
table.Append(v)
}
table.Render()
}
listDatabases(subscription, rgName, clusterNamePrefix+clusterName)
Important
Azure CLI Kusto 확장은 오래되었으며 유지 관리되지 않습니다. 클러스터 및 데이터베이스를 만들기 위해 PowerShell 또는 ARM/Bicep 템플릿을 사용하는 것이 좋습니다. Azure CLI 사용하도록 선택한 경우 Kusto 확장을 설치하여 Azure Data Explorer 대한 최신 CLI 명령이 있는지 확인합니다.
다음 명령을 사용하여 데이터베이스를 만듭니다.
az kusto database create --cluster-name azureclitest --database-name clidatabase --resource-group testrg --read-write-database soft-delete-period=P365D hot-cache-period=P31D location=westus
|
설정 |
제안 값 |
필드 설명 |
| 클러스터 이름 |
azureclitest |
데이터베이스가 만들어지는 클러스터의 이름입니다. |
| database-name |
clidatabase |
데이터베이스의 이름입니다. |
| 리소스 그룹 |
testrg |
클러스터가 만들어질 리소스 그룹 이름입니다. |
| 읽기-쓰기 데이터베이스 |
P365DP31Dwestus |
데이터베이스 유형입니다. 매개 변수: soft-delete-period - 데이터를 쿼리에 사용할 수 있는 상태로 유지하는 시간을 나타냅니다. 자세한 내용은 보존 정책을 참조하세요.
hot-cache-period - 데이터가 캐시에 보관되는 시간을 나타냅니다. 자세한 내용은 캐시 정책을 참조하세요.
location - 데이터베이스가 만들어지는 위치입니다. |
다음 명령을 실행하여 직접 만든 데이터베이스를 살펴봅니다.
az kusto database show --database-name clidatabase --resource-group testrg --cluster-name azureclitest
다음 단계