Vytvoření datového kanálu pomocí služby Azure Data Factory, DevOps a strojového učení

Služby Azure DevOps

Začněte vytvářet datový kanál s využitím příjmu dat, transformace dat a trénování modelů.

Zjistěte, jak získat data ze souboru CSV (hodnoty oddělené čárkami) a uložit je do služby Azure Blob Storage. Transformujte data a uložte je do pracovní oblasti. Pak pomocí transformovaných dat vytrénujte model strojového učení. Zapište model do úložiště objektů blob jako soubor pickle Pythonu.

Požadavky

Než začnete, potřebujete:

Zřízení prostředků Azure

  1. Přihlaste se k portálu Azure.

  2. V nabídce vyberte tlačítko Cloud Shell . Po zobrazení výzvy vyberte prostředí Bash .

    Screenshot showing where to select Cloud Shell from the menu.

    Poznámka:

    K uchování všech souborů, které vytvoříte v Azure Cloud Shellu, budete potřebovat prostředek azure Storage. Při prvním otevření Cloud Shellu se zobrazí výzva k vytvoření skupiny prostředků, účtu úložiště a sdílené složky Azure Files. Toto nastavení se automaticky použije pro všechny budoucí relace Cloud Shellu.

Výběr oblasti Azure

Oblast je jedno nebo více datacenter Azure v rámci geografického umístění. Příklady oblastí jsou Východní USA, Západní USA a Severní Evropa. Každému prostředku Azure, včetně instance služby App Service, je přiřazena oblast.

Pokud chcete usnadnit spouštění příkazů, začněte výběrem výchozí oblasti. Jakmile zadáte výchozí oblast, pozdější příkazy tuto oblast použijí, pokud nezadáte jinou oblast.

  1. Spuštěním následujícího az account list-locations příkazu v Cloud Shellu zobrazte seznam oblastí dostupných z vašeho předplatného Azure.

    az account list-locations \
      --query "[].{Name: name, DisplayName: displayName}" \
      --output table
    
  2. Name Ve sloupci ve výstupu zvolte oblast, která je blízko vás. Můžete například zvolit asiapacific nebo westus2.

  3. Spuštěním az config nastavíte výchozí oblast. V následujícím příkladu nahraďte <REGION> názvem oblasti, kterou jste zvolili.

    az config set defaults.location=<REGION>
    

    Následující příklad nastaví westus2 jako výchozí oblast.

    az config set defaults.location=westus2
    

Vytvoření proměnných Bash

  1. V Cloud Shellu vygenerujte náhodné číslo. Toto číslo použijete k vytvoření globálně jedinečných názvů pro určité služby v dalším kroku.

    resourceSuffix=$RANDOM
    
  2. Vytvořte globálně jedinečné názvy pro účet úložiště a trezor klíčů. Následující příkazy používají dvojité uvozovky, které Bash instruují interpolaci proměnných pomocí vložené syntaxe.

    storageName="datacicd${resourceSuffix}"
    keyVault="keyvault${resourceSuffix}"
    
  3. Vytvořte jednu další proměnnou Bash pro uložení názvů a oblasti vaší skupiny prostředků. V následujícím příkladu nahraďte <REGION> oblastí, kterou jste zvolili pro výchozí oblast.

    rgName='data-pipeline-cicd-rg'
    region='<REGION>'
    
  4. Vytvořte názvy proměnných pro instance Azure Data Factory a Azure Databricks.

    datafactorydev='data-factory-cicd-dev'
    datafactorytest='data-factory-cicd-test'
    databricksname='databricks-cicd-ws'
    

Vytvoření zdrojů Azure

  1. Spuštěním následujícího az group create příkazu vytvořte skupinu prostředků pomocí rgNamepříkazu .

    az group create --name $rgName
    
  2. Spuštěním následujícího az storage account create příkazu vytvořte nový účet úložiště.

    az storage account create \
        --name $storageName \
        --resource-group $rgName \
        --sku Standard_RAGRS \
        --kind StorageV2
    
  3. Spuštěním následujícího az storage container create příkazu vytvořte dva kontejnery rawdata a prepareddata.

    az storage container create -n rawdata --account-name $storageName 
    az storage container create -n prepareddata --account-name $storageName 
    
  4. Spuštěním následujícího az keyvault create příkazu vytvořte nový trezor klíčů.

    az keyvault create \
        --name $keyVault \
        --resource-group $rgName
    
  5. Vytvoření nové datové továrny pomocí uživatelského rozhraní portálu nebo Azure CLI:

    • Název: data-factory-cicd-dev
    • Verze: V2
    • Skupina prostředků: data-pipeline-cicd-rg
    • Umístění: Nejbližší umístění
    • Zrušte výběr pro povolení Gitu.
    1. Přidejte rozšíření Azure Data Factory.

      az extension add --name datafactory
      
    2. Spuštěním následujícího az datafactory create příkazu vytvořte novou datovou továrnu.

       az datafactory create \
           --name data-factory-cicd-dev \
           --resource-group $rgName
      
    3. ID předplatného zkopírujte. Vaše datová továrna použije toto ID později.

  6. Vytvořte druhou datovou továrnu pomocí uživatelského rozhraní portálu nebo Azure CLI. Tuto datová továrnu použijete k testování.

    • Název: data-factory-cicd-test
    • Verze: V2
    • Skupina prostředků: data-pipeline-cicd-rg
    • Umístění: Nejbližší umístění
    • Zrušte výběr pro povolení GITu.
    1. Spuštěním následujícího az datafactory create příkazu vytvořte novou datovou továrnu pro testování.

       az datafactory create \
           --name data-factory-cicd-test \
           --resource-group $rgName
      
    2. ID předplatného zkopírujte. Vaše datová továrna použije toto ID později.

  7. Přidejte novou službu Azure Databricks:

    • Skupina prostředků: data-pipeline-cicd-rg
    • Název pracovního prostoru: databricks-cicd-ws
    • Umístění: Nejbližší umístění
    1. Pokud ještě není nainstalované, přidejte rozšíření Azure Databricks.

       az extension add --name databricks
      
    2. Spuštěním následujícího az databricks workspace create příkazu vytvořte nový pracovní prostor.

      az databricks workspace create \
          --resource-group $rgName \
          --name databricks-cicd-ws  \
          --location eastus2  \
          --sku trial
      
    3. ID předplatného zkopírujte. Vaše služba Databricks použije toto ID později.

Nahrání dat do kontejneru úložiště

  1. Na webu Azure Portal otevřete účet úložiště ve skupině data-pipeline-cicd-rg prostředků.
  2. Přejděte do kontejnerů služby Blob Service>.
  3. prepareddata Otevřete kontejner.
  4. Nahrajte soubor sample.csv.

Nastavení úložiště Key Vault

Azure Key Vault použijete k uložení všech informací o připojení pro vaše služby Azure.

Vytvoření tokenu patu Databricks

  1. Na webu Azure Portal přejděte na Databricks a otevřete svůj pracovní prostor.
  2. V uživatelském rozhraní Azure Databricks vytvořte a zkopírujte osobní přístupový token.

Zkopírujte klíč účtu a připojovací řetězec pro účet úložiště.

  1. Přejděte k účtu úložiště.
  2. Otevřete přístupové klíče.
  3. Zkopírujte první klíč a připojovací řetězec.

Ukládání hodnot do služby Key Vault

  1. Vytvoření tří tajných kódů:

    • databricks-token: your-databricks-pat
    • Klíč úložiště: your-storage-key
    • Úložiště Připojení String:your-storage-connection
  2. Spuštěním následujícího az keyvault secret set příkazu přidejte tajné kódy do trezoru klíčů.

    az keyvault secret set --vault-name "$keyVault" --name "databricks-token" --value "your-databricks-pat"
    az keyvault secret set --vault-name "$keyVault" --name "StorageKey" --value "your-storage-key"
    az keyvault secret set --vault-name "$keyVault" --name "StorageConnectString" --value "your-storage-connection"
    

Import řešení datového kanálu

  1. Přihlaste se ke své organizaci Azure DevOps a přejděte do svého projektu.
  2. Přejděte do úložišť a pak naimportujte forkovanou verzi úložiště GitHub. Další informace najdete v tématu Import úložiště Git do projektu.

Přidání připojení služby Azure Resource Manager

  1. Vytvořte připojení služby Azure Resource Manager.
  2. Vyberte instanční objekt (automatický).
  3. Zvolte skupinu prostředků data-pipeline-cicd-rg.
  4. Pojmenujte připojení azure_rm_connectionslužby .
  5. Vyberte Udělit oprávnění pro přístup ke všem kanálům. Abyste mohli tuto možnost vybrat, budete muset mít Připojení iony služby Správa istrator.

Přidání proměnných kanálu

  1. Vytvořte novou skupinu proměnných s názvem datapipeline-vg.

  2. Pokud ještě není nainstalované, přidejte rozšíření Azure DevOps.

    az extension add --name azure-devops 
    
  3. Přihlaste se ke své organizaci Azure DevOps.

    az devops login --org https://dev.azure.com/<yourorganizationname>
    
    az pipelines variable-group create --name datapipeline-vg -p <yourazuredevopsprojectname> --variables \
                                        "LOCATION=$region" \
                                        "RESOURCE_GROUP=$rgName" \
                                        "DATA_FACTORY_NAME=$datafactorydev" \
                                        "DATA_FACTORY_DEV_NAME=$datafactorydev" \
                                        "DATA_FACTORY_TEST_NAME=$datafactorytest" \
                                        "ADF_PIPELINE_NAME=DataPipeline" \
                                        "DATABRICKS_NAME=$databricksname" \
                                        "AZURE_RM_CONNECTION=azure_rm_connection" \
                                        "DATABRICKS_URL=<URL copied from Databricks in Azure portal>" \
                                        "STORAGE_ACCOUNT_NAME=$storageName" \
                                        "STORAGE_CONTAINER_NAME=rawdata"
    
  4. Vytvořte druhou skupinu proměnných s názvem keys-vg. Tato skupina načítá datové proměnné ze služby Key Vault.

  5. Vyberte Propojit tajné kódy ze služby Azure Key Vault jako proměnné. Další informace najdete v tématu Propojení tajných kódů z trezoru klíčů Azure.

  6. Autorizace předplatného Azure

  7. Zvolte všechny dostupné tajné kódy, které chcete přidat jako proměnné (databricks-tokenStorageConnectString,).StorageKey

Konfigurace Azure Databricks a Azure Data Factory

Podle pokynů v dalších částech nastavte Azure Databricks a Azure Data Factory.

Vytvoření testscopeu v Azure Databricks

  1. Na webu Azure Portal přejděte do části Vlastnosti trezoru>klíčů.
  2. Zkopírujte název DNS a ID prostředku.
  3. V pracovním prostoru Azure Databricks vytvořte obor tajného kódu s názvem testscope.

Přidání nového clusteru v Azure Databricks

  1. V pracovním prostoru Azure Databricks přejděte do clusterů.
  2. Vyberte Vytvořit cluster.
  3. Pojmenujte nový cluster a uložte ho.
  4. Vyberte název nového clusteru.
  5. V řetězci adresy URL zkopírujte obsah mezi /clusters/ a /configuration. Například v řetězci clusters/0306-152107-daft561/configurationbyste zkopírovali 0306-152107-daft561.
  6. Uložte tento řetězec, abyste ho mohli použít později.

Nastavení úložiště kódu ve službě Azure Data Factory

  1. Ve službě Azure Data Factory přejděte na Vytváření a monitorování. Další informace najdete v tématu Vytvoření datové továrny.
  2. Vyberte Nastavit úložiště kódu a připojte úložiště.
    • Typ úložiště: Azure DevOps Git
    • Organizace Azure DevOps: Váš aktivní účet
    • Název projektu: Projekt datového kanálu Azure DevOps
    • Název úložiště Git: Použijte existující.
      • Vyberte hlavní větev pro spolupráci.
      • Jako kořenovou složku nastavte /azure-data-pipeline/factorydata .
    • Větev pro import prostředku do: Vyberte Použít existující a hlavní.
  1. V uživatelském rozhraní webu Azure Portal otevřete trezor klíčů.
  2. Vyberte Zásady přístupu.
  3. Vyberte Přidat zásady přístupu.
  4. Pro konfiguraci ze šablony vyberte Správa klíčů a tajných kódů.
  5. V části Vybrat objekt zabezpečení vyhledejte název vývojové datové továrny a přidejte ho.
  6. Vyberte Přidat a přidejte zásady přístupu.
  7. Opakováním těchto kroků přidejte zásadu přístupu pro testovací datovou továrnu.

Aktualizace propojené služby trezoru klíčů ve službě Azure Data Factory

  1. Přejděte na Spravovat>propojené služby.
  2. Aktualizujte trezor klíčů Azure, aby se připojil k vašemu předplatnému.

Aktualizace propojené služby úložiště ve službě Azure Data Factory

  1. Přejděte na Spravovat>propojené služby.
  2. Aktualizujte hodnotu služby Azure Blob Storage, aby se připojila k vašemu předplatnému.

Aktualizace propojené služby Azure Databricks ve službě Azure Data Factory

  1. Přejděte na Spravovat>propojené služby.
  2. Aktualizujte hodnotu Azure Databricks tak, aby se připojila k vašemu předplatnému.
  3. Jako ID existujícího clusteru zadejte hodnotu clusteru, kterou jste si uložili dříve.

Testování a publikování datové továrny

  1. Ve službě Azure Data Factory přejděte na Upravit.
  2. Otevře záznam typu DataPipeline.
  3. Vyberte Proměnné.
  4. Ověřte, že storage_account_name odkazuje na váš účet úložiště na webu Azure Portal. V případě potřeby aktualizujte výchozí hodnotu. Uloží vaše změny.
  5. Vyberte Ověřit a ověřte DataPipeline.
  6. Výběrem možnosti Publikovat publikujte prostředky datové továrny do adf_publish větve úložiště.

Spuštění kanálu CI/CD

Ke spuštění kanálu kontinuální integrace a průběžného doručování (CI/CD) postupujte takto:

  1. Přejděte na stránku Kanály . Pak zvolte akci, která vytvoří nový kanál.
  2. Jako umístění zdrojového kódu vyberte Git Azure Repos.
  3. Jakmile se zobrazí seznam úložišť, vyberte úložiště.
  4. Při nastavování kanálu vyberte Existující soubor YAML služby Azure Pipelines. Zvolte soubor YAML: /azure-data-pipeline/data_pipeline_ci_cd.yml.
  5. Spusťte kanál. Pokud se váš kanál ještě nespustí, možná budete muset udělit oprávnění pro přístup k prostředku během spuštění.

Vyčištění prostředků

Pokud nebudete tuto aplikaci dál používat, odstraňte datový kanál pomocí následujícího postupu:

  1. data-pipeline-cicd-rg Odstraňte skupinu prostředků.
  2. Odstraňte projekt Azure DevOps.

Další kroky