Vytvoření clusteru Azure Data Explorer databáze pomocí Pythonu
V tomto článku vytvoříte cluster Azure Data Explorer databáze pomocí Pythonu. Azure Data Explorer je rychlá, plně spravovaná služba analýzy dat pro analýzy velkých objemů dat v reálném čase, která se streamují z aplikací, webů, zařízení IoT a dalších. Pokud chcete Azure Data Explorer, nejprve vytvořte cluster a v tomto clusteru vytvořte jednu nebo více databází. Pak ingestuje nebo načítá data do databáze, abyste na něj mohli spouštět dotazy.
Požadavky
- Předplatné Azure. Vytvořte si bezplatný účet Azure.
- Python 3.4+.
- Aplikace Azure AD a objekt služby, které mají přístup k prostředkům. Získání hodnot
Directory (tenant) IDpro , aApplication IDClient Secret.
Instalace balíčku Pythonu
Pokud chcete nainstalovat balíček Pythonu pro Azure Data Explorer (Kusto), otevřete příkazový řádek, který má v cestě Python. Spusťte tento příkaz:
pip install azure-common
pip install azure-mgmt-kusto
Authentication
Ke spouštění příkladů v tomto článku potřebujeme aplikaci Azure AD a instanční objekt, který má přístup k prostředkům. Pokud chcete vytvořit bezplatnou aplikaci Azure AD a přidat přiřazení role v oboru předplatného, podívejte se na vytvoření aplikace Azure AD. Ukazuje také, jak získat Directory (tenant) ID , Application ID a Client Secret .
Vytvoření Azure Data Explorer clusteru
Vytvořte cluster pomocí následujícího příkazu:
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()Nastavení Navrhovaná hodnota Popis pole cluster_name mykustocluster Požadovaný název clusteru. sku_name Standard_D13_v2 SKU, která se použije pro váš cluster. tier Standard Úroveň SKU. capacity Číslo Počet instancí clusteru resource_group_name testrg (testrg) Název skupiny prostředků, ve které se cluster vytvoří. Poznámka
Vytvoření clusteru je dlouhotr běžící operace. Metoda create_or_update vrací instanci LROPoller, další informace najdete v tématu Třída LROPoller.
Spuštěním následujícího příkazu zkontrolujte, jestli se cluster úspěšně vytvořil:
cluster_operations.get(resource_group_name = resource_group_name, cluster_name= cluster_name, custom_headers=None, raw=False)
Pokud výsledek obsahuje provisioningState hodnotu , cluster se úspěšně Succeeded vytvořil.
Vytvoření databáze v Azure Data Explorer clusteru
Vytvořte databázi pomocí následujícího příkazu:
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()Poznámka
Pokud používáte Python verze 0.4.0 nebo nižší, místo ReadWriteDatabase použijte Database.
Nastavení Navrhovaná hodnota Popis pole cluster_name mykustocluster Název clusteru, ve kterém se databáze vytvoří. Název_databáze mykustodatabase Název vaší databáze. resource_group_name testrg (testrg) Název skupiny prostředků, ve které se cluster vytvoří. soft_delete_period 3650 dní, 0:00:00 Doba, po kterou budou data k dispozici pro dotazování. hot_cache_period 3650 dní, 0:00:00 Doba, po kterou se budou data uchovávat v mezipaměti. Spuštěním následujícího příkazu zobrazte databázi, kterou jste vytvořili:
database_operations.get(resource_group_name = resource_group_name, cluster_name = cluster_name, database_name = database_name)
Teď máte cluster a databázi.
Vyčištění prostředků
Pokud máte v plánu postupovat podle našich dalších článků, pořiďte si prostředky, které jste vytvořili.
Pokud chcete vyčistit prostředky, odstraňte cluster. Když odstraníte cluster, odstraní se také všechny jeho databáze. K odstranění clusteru použijte následující příkaz:
cluster_operations.delete(resource_group_name = resource_group_name, cluster_name = cluster_name)