Python kullanarak Azure Veri Gezgini kümesi ve veritabanı oluşturma

Bu makalede Python kullanarak bir Azure Veri Gezgini kümesi ve veritabanı oluşturuluyor. Azure Veri Gezgini uygulamalar, web siteleri, IoT cihazları ve daha fazlasından akışı yapılan büyük miktarda veri üzerinde gerçek zamanlı analiz yapmaya yönelik hızlı ve tam olarak yönetilen bir veri analizi hizmetidir. Bu Azure Veri Gezgini için önce bir küme oluşturun ve bu kümede bir veya daha fazla veritabanı oluşturun. Ardından, veritabanında sorgu çalıştırabilirsiniz.

Önkoşullar

Python paketini yükleme

Azure Veri Gezgini (Kusto) için Python paketini yüklemek için yolunda Python bulunan bir komut istemi açın. Şu komutu çalıştırın:

pip install azure-common
pip install azure-mgmt-kusto

Kimlik Doğrulaması

Bu makaledeki örnekleri çalıştırmamız için kaynaklara erişen bir Azure AD Uygulaması ve hizmet sorumlusuna ihtiyacımız vardır. Ücretsiz bir Azure AD Uygulaması oluşturmak ve abonelik kapsamında rol ataması eklemek için Azure AD uygulaması oluşturma'ya göz atabilirsiniz. Ayrıca , ve 'nin nasıl Directory (tenant) ID elde Application ID etmek için gerekenleri de Client Secret gösterir.

Azure Veri Gezgini oluşturma

  1. Aşağıdaki komutu kullanarak kümenizi oluşturun:

    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_D13_v2'
    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.create_or_update(resource_group_name, cluster_name, cluster)
    poller.wait()
    
    Ayar Önerilen değer Alan açıklaması
    cluster_name mykustocluster Kümenizin istenen adı.
    sku_name Standard_D13_v2 Kümeniz için kullanılacak SKU.
    tier Standart SKU katmanı.
    capacity Numarası Kümenin örnek sayısı.
    resource_group_name testrg Kümenin oluşturulacak kaynak grubu adı.

    Not

    Küme oluşturma işlemi uzun süre çalışan bir işlemdir. Yöntem create_or_update bir LROPoller örneği döndürür, daha fazla bilgi almak için bkz. LROPoller sınıfı.

  2. Kümenizin başarıyla oluşturulıp oluşturulmadı olmadığını kontrol etmek için aşağıdaki komutu çalıştırın:

    cluster_operations.get(resource_group_name = resource_group_name, cluster_name= cluster_name, custom_headers=None, raw=False)
    

Sonuç provisioningState değeriyle birlikte Succeeded içeriyorsa küme başarıyla oluşturulmuş olur.

Azure Veri Gezgini kümesinde veritabanı oluşturma

  1. Aşağıdaki komutu kullanarak veritabanınızı oluşturun:

    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.create_or_update(resource_group_name = resource_group_name, cluster_name = cluster_name, database_name = database_name, parameters = database)
    poller.wait()
    

    Not

    Python sürüm 0.4.0 veya altı kullanıyorsanız ReadWriteDatabase yerine Veritabanı'ı kullanın.

    Ayar Önerilen değer Alan açıklaması
    cluster_name mykustocluster Veritabanının oluşturulacak kümenizin adı.
    Veritabanı_adı mykustodatabase Veritabanınız adı.
    resource_group_name testrg Kümenin oluşturulacak kaynak grubu adı.
    soft_delete_period 3650 gün, 0:00:00 Verilerin sorgu için kullanılabilir tutulacak süre.
    hot_cache_period 3650 gün, 0:00:00 Verilerin önbellekte tutulacak süre.
  2. Oluşturduğunuz veritabanını görmek için aşağıdaki komutu çalıştırın:

    database_operations.get(resource_group_name = resource_group_name, cluster_name = cluster_name, database_name = database_name)
    

Artık bir kümeye ve veritabanına sahipsiniz.

Kaynakları temizleme

  • Diğer makalelerimizi takip etmek için oluşturduğunuz kaynakları kullanın.

  • Kaynakları temizlemek için kümeyi silin. Bir kümeyi silebilirsiniz. Bu küme, kümenin içinde yer alan tüm veritabanlarını da siler. Kümenizi silmek için aşağıdaki komutu kullanın:

    cluster_operations.delete(resource_group_name = resource_group_name, cluster_name = cluster_name)
    

Sonraki adımlar