Gegevensassets importeren (preview)

VAN TOEPASSING OP:Azure CLI ml extension v2 (current)Python SDK azure-ai-ml v2 (current)

In dit artikel leert u hoe u gegevens importeert in het Azure Machine Learning-platform vanuit externe bronnen. Bij een geslaagde gegevensimport wordt automatisch een Azure Machine Learning-gegevensasset gemaakt en geregistreerd met de naam die tijdens die import is opgegeven. Een Azure Machine Learning-gegevensasset lijkt op een webbrowserbladwijzer (favorieten). U hoeft geen lange opslagpaden (URI's) te onthouden die verwijzen naar uw meest gebruikte gegevens. In plaats daarvan kunt u een gegevensasset maken en die asset vervolgens openen met een beschrijvende naam.

Een gegevensimport maakt een cache van de brongegevens, samen met metagegevens, voor snellere en betrouwbare gegevenstoegang in Azure Machine Learning-trainingstaken. De gegevenscache voorkomt netwerk- en verbindingsbeperkingen. De gegevens in de cache worden geversied ter ondersteuning van reproduceerbaarheid. Dit biedt versiebeheermogelijkheden voor gegevens die zijn geïmporteerd uit SQL Server-bronnen. Daarnaast bieden de gegevens in de cache gegevensherkomst voor controletaken. Een gegevensimport maakt achter de schermen gebruik van ADF (Azure Data Factory-pijplijnen), wat betekent dat gebruikers complexe interacties met ADF kunnen voorkomen. Achter de schermen verwerkt Azure Machine Learning ook het beheer van de grootte van de ADF-rekenresourcegroep, het inrichten van rekenresources en het afbreken van gegevens om de gegevensoverdracht te optimaliseren door de juiste parallellisatie te bepalen.

De overgedragen gegevens worden gepartitioneerd en veilig opgeslagen als parquet-bestanden in Azure Storage. Dit maakt snellere verwerking mogelijk tijdens de training. ADF-rekenkosten omvatten alleen de tijd die wordt gebruikt voor gegevensoverdracht. Opslagkosten omvatten alleen de tijd die nodig is om de gegevens in de cache op te slaan, omdat gegevens in de cache een kopie zijn van de gegevens die zijn geïmporteerd uit een externe bron. Azure Storage host die externe bron.

De cachefunctie omvat vooraf reken- en opslagkosten. Het betaalt echter voor zichzelf en kan geld besparen, omdat het terugkerende rekenkosten voor training vermindert, vergeleken met directe verbindingen met externe brongegevens tijdens de training. Hiermee worden gegevens in de cache opgeslagen als parquet-bestanden, waardoor taaktraining sneller en betrouwbaarder is ten opzichte van verbindingstime-outs voor grotere gegevenssets. Dit leidt tot minder nieuwe pogingen en minder trainingsfouten.

U kunt gegevens importeren uit Amazon S3, Azure SQL en Snowflake.

Belangrijk

Deze functie is momenteel beschikbaar als openbare preview-versie. Deze preview-versie wordt geleverd zonder een service level agreement en we raden deze niet aan voor productieworkloads. Misschien worden bepaalde functies niet ondersteund of zijn de mogelijkheden ervan beperkt.

Zie Aanvullende gebruiksvoorwaarden voor Microsoft Azure-previews voor meer informatie.

Vereisten

Als u gegevensassets wilt maken en ermee wilt werken, hebt u het volgende nodig:

Notitie

Controleer voor een geslaagde gegevensimport of u het nieuwste azure-ai-ml-pakket (versie 1.15.0 of hoger) voor SDK hebt geïnstalleerd en of u de ml-extensie (versie 2.15.1 of hoger) hebt geïnstalleerd.

Als u een ouder SDK-pakket of CLI-extensie hebt, verwijdert u het oude pakket en installeert u de nieuwe met de code die wordt weergegeven in de sectie tabblad. Volg de instructies voor SDK en CLI, zoals hier wordt weergegeven:

Codeversies

az extension remove -n ml
az extension add -n ml --yes
az extension show -n ml #(the version value needs to be 2.15.1 or later)

Importeren uit een externe database als mltable-gegevensasset

Notitie

De externe databases kunnen Snowflake-, Azure SQL-, enzovoortsindelingen hebben.

Met de volgende codevoorbeelden kunt u gegevens importeren uit externe databases. De connection importactie bepaalt de metagegevens van de externe databasegegevensbron. In dit voorbeeld importeert de code gegevens uit een Snowflake-resource. De verbinding verwijst naar een Snowflake-bron. Met een kleine wijziging kan de verbinding verwijzen naar een Azure SQL-databasebron en een Azure SQL-databasebron. De geïmporteerde asset type uit een externe databasebron is mltable.

YAML Een bestand maken<file-name>.yml:

$schema: http://azureml/sdk-2-0/DataImport.json
# Supported connections include:
# Connection: azureml:<workspace_connection_name>
# Supported paths include:
# Datastore: azureml://datastores/<data_store_name>/paths/<my_path>/${{name}}


type: mltable
name: <name>
source:
  type: database
  query: <query>
  connection: <connection>
path: <path>

Voer vervolgens de volgende opdracht uit in de CLI:

> az ml data import -f <file-name>.yml

Gegevens importeren uit een extern bestandssysteem als mapgegevensasset

Notitie

Een Amazon S3-gegevensresource kan fungeren als een externe bestandssysteemresource.

De connection actie voor het importeren van gegevens bepaalt de aspecten van de externe gegevensbron. De verbinding definieert een Amazon S3-bucket als doel. De verbinding verwacht een geldige path waarde. Een assetwaarde die is geïmporteerd uit een bron van een extern bestandssysteem heeft een type van uri_folder.

In het volgende codevoorbeeld worden gegevens geïmporteerd uit een Amazon S3-resource.

YAML Een bestand maken<file-name>.yml:

$schema: http://azureml/sdk-2-0/DataImport.json
# Supported connections include:
# Connection: azureml:<workspace_connection_name>
# Supported paths include:
# path: azureml://datastores/<data_store_name>/paths/<my_path>/${{name}}


type: uri_folder
name: <name>
source:
  type: file_system
  path: <path_on_source>
  connection: <connection>
path: <path>

Voer vervolgens deze opdracht uit in de CLI:

> az ml data import -f <file-name>.yml

De importstatus van externe gegevensbronnen controleren

De actie voor het importeren van gegevens is een asynchrone actie. Het kan lang duren. Na het verzenden van een importgegevensactie via de CLI of SDK, kan het zijn dat de Azure Machine Learning-service enkele minuten nodig heeft om verbinding te maken met de externe gegevensbron. Vervolgens start de service het importeren van gegevens en verwerkt de gegevenscache en -registratie. De benodigde tijd voor het importeren van gegevens is ook afhankelijk van de grootte van de brongegevensset.

In het volgende voorbeeld wordt de status van de verzonden gegevensimportactiviteit geretourneerd. De opdracht of methode gebruikt de naam van de gegevensasset als invoer om de status van de gegevens materialisatie te bepalen.

> az ml data list-materialization-status --name <name>

Volgende stappen