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

Bu makalede, Python kullanarak bir Azure Veri Gezgini kümesi ve veritabanı oluşturacaksınız. 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. Azure Veri Gezgini kullanmak 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ırabilmeniz için verileri veritabanına alın veya yükleyin.

Ö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ırmak için kaynaklara erişebilen bir Azure AD Uygulaması ve hizmet sorumlusu gerekir. Ücretsiz bir Azure AD Uygulaması oluşturmak ve abonelik kapsamında rol ataması eklemek için Azure AD uygulaması oluşturma'ya bakın. Ayrıca , Application IDve Client Secretöğesinin nasıl alınıp alınamaya da devam ederDirectory (tenant) ID.

Azure Veri Gezgini kümesini 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_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()
    
    Ayar Önerilen değer Alan açıklaması
    cluster_name mykustocluster Kümenizin istenen adı.
    sku_name Standard_E8ads_v5 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şturulacağı kaynak grubu adı.

    Not

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

  2. Kümenizin başarıyla oluşturulup oluşturulmadığını denetlemek 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ç değeriyle birlikte Succeeded içeriyorsaprovisioningState, küme başarıyla oluşturulmuştur.

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.begin_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 üzerini kullanıyorsanız ReadWriteDatabase yerine Veritabanı'nı kullanın.

    Ayar Önerilen değer Alan açıklaması
    cluster_name mykustocluster Veritabanının oluşturulacağı kümenizin adı.
    Veritabanı_adı mykustodatabase Veritabanınızın adı.
    resource_group_name testrg Kümenin oluşturulacağı kaynak grubu adı.
    soft_delete_period 3650 gün, 0:00:00 Verilerin sorgulanabilir durumda tutulacağı süre.
    hot_cache_period 3650 gün, 0:00:00 Verilerin önbellekte tutulacağı 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ümeniz ve veritabanınız var.

Kaynakları temizleme

  • Diğer makalelerimizi izlemeyi planlıyorsanız, oluşturduğunuz kaynakları koruyun.

  • Kaynakları temizlemek için kümeyi silin. Bir kümeyi sildiğinizde, içindeki tüm veritabanları da silinir. 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