Quickstart: Interactieve gegevens Wrangling met Apache Spark in Azure Machine Learning
Azure Machine Learning-integratie met Azure Synapse Analytics biedt eenvoudige toegang tot het Apache Spark-framework om interactieve Azure Machine Learning-notebookgegevens te verwerken. Met deze toegang kunt u interactieve gegevens van Azure Machine Learning Notebook wrangling uitvoeren.
In deze snelstartgids leert u hoe u interactieve gegevens kunt uitvoeren met azure Machine Learning Serverless Spark Compute, Azure Data Lake Storage (ADLS) Gen 2-opslagaccount en passthrough voor gebruikersidentiteit.
Vereisten
- Een Azure-abonnement; Als u geen Azure-abonnement hebt, maakt u een gratis account voordat u begint.
- Een Azure Machine Learning-werkruimte. Ga naar Werkruimtebronnen maken.
- Een Azure Data Lake Storage -opslagaccount (ADLS) Gen 2. Ga naar Een Azure Data Lake Storage -opslagaccount (ADLS) Gen 2 maken.
Referenties voor Azure-opslagaccount opslaan als geheimen in Azure Key Vault
Als u azure-opslagaccountreferenties wilt opslaan als geheimen in Azure Key Vault, met de gebruikersinterface van Azure Portal:
Navigeer naar uw Azure Key Vault in Azure Portal
Geheimen selecteren in het linkerdeelvenster
Selecteren en genereren/importeren
Voer in het scherm Een geheim maken een naam in voor het geheim dat u wilt maken
Navigeer in Azure Portal naar het Azure Blob Storage-account, zoals wordt weergegeven in deze afbeelding:
Selecteer Toegangssleutels in het linkerdeelvenster van het Azure Blob Storage-account
Selecteer Weergeven naast sleutel 1 en kopieer naar klembord om de toegangssleutel van het opslagaccount op te halen
Notitie
Selecteer de juiste opties om te kopiëren
- Sas-tokens (Shared Access Signature) voor Azure Blob Storage-containers
- Referenties voor de service-principal van azure Data Lake Storage (ADLS) Gen 2-opslagaccount
- Tenant-id:
- client-id en
- geheim
op de respectieve gebruikersinterfaces terwijl u de Azure Key Vault-geheimen voor hen maakt
Ga terug naar het scherm Een geheim maken
Voer in het tekstvak Geheime waarde de referentie voor de toegangssleutel in voor het Azure-opslagaccount, dat in de vorige stap naar het klembord is gekopieerd
Selecteer Maken.
Tip
Azure CLI en Azure Key Vault-clientbibliotheek voor geheimen voor Python kunnen ook Azure Key Vault-geheimen maken.
Roltoewijzingen toevoegen in Azure-opslagaccounts
We moeten ervoor zorgen dat de invoer- en uitvoergegevenspaden toegankelijk zijn voordat we interactieve gegevens gaan wrangling starten. Eerst voor
de gebruikersidentiteit van de aangemelde gebruiker van de Notebooks-sessie
or
een service-principal
wijs de rollen Lezer en Opslagblobgegevenslezer toe aan de gebruikersidentiteit van de aangemelde gebruiker. In bepaalde scenario's willen we de wrangled gegevens echter terugschrijven naar het Azure-opslagaccount. De rollen Lezer en Opslagblobgegevenslezer bieden alleen-lezentoegang tot de gebruikersidentiteit of service-principal. Als u lees- en schrijftoegang wilt inschakelen, wijst u de rollen Inzender en Inzender voor opslagblobgegevens toe aan de gebruikersidentiteit of service-principal. De juiste rollen toewijzen aan de gebruikersidentiteit:
De opslagaccountservice zoeken en selecteren
Selecteer op de pagina Opslagaccounts het Azure Data Lake Storage Gen 2-opslagaccount (ADLS) Gen 2 in de lijst. Er wordt een pagina met het overzicht van het opslagaccount geopend
Selecteer Toegangsbeheer (IAM) in het linkerdeelvenster
Selecteer Roltoewijzing toevoegen
Inzender voor opslagblobgegevens zoeken en selecteren
Selecteer Volgende
Gebruiker , groep of service-principal selecteren
Selecteer + Leden selecteren
Zoek naar de gebruikersidentiteit hieronder Selecteren
Selecteer de gebruikersidentiteit in de lijst, zodat deze wordt weergegeven onder Geselecteerde leden
Selecteer de juiste gebruikersidentiteit
Selecteer Volgende
Selecteer Beoordelen en toewijzen
Herhaal stap 2-13 voor roltoewijzing inzender
Zodra de gebruikersidentiteit de juiste rollen heeft toegewezen, moeten gegevens in het Azure-opslagaccount toegankelijk worden.
Notitie
Als een gekoppelde Synapse Spark-pool verwijst naar een Synapse Spark-pool in een Azure Synapse-werkruimte waaraan een beheerd virtueel netwerk is gekoppeld, moet u een beheerd privé-eindpunt configureren voor een opslagaccount om toegang tot gegevens te garanderen.
Resourcetoegang voor Spark-taken garanderen
Voor toegang tot gegevens en andere resources kunnen Spark-taken een beheerde identiteit of passthrough voor gebruikersidentiteiten gebruiken. De volgende tabel bevat een overzicht van de verschillende mechanismen voor toegang tot resources terwijl u serverloze Spark-rekenkracht van Azure Machine Learning gebruikt en synapse Spark-pool hebt gekoppeld.
Spark-pool | Ondersteunde identiteiten | Standaardidentiteit |
---|---|---|
Serverloze Spark-rekenkracht | Gebruikersidentiteit, door de gebruiker toegewezen beheerde identiteit gekoppeld aan de werkruimte | Gebruikersidentiteit |
Gekoppelde Synapse Spark-pool | Gebruikersidentiteit, door de gebruiker toegewezen beheerde identiteit gekoppeld aan de gekoppelde Synapse Spark-pool, door het systeem toegewezen beheerde identiteit van de gekoppelde Synapse Spark-pool | Door het systeem toegewezen beheerde identiteit van de gekoppelde Synapse Spark-pool |
Als de CLI- of SDK-code een optie definieert voor het gebruik van een beheerde identiteit, is serverloze Spark-rekenkracht van Azure Machine Learning afhankelijk van een door de gebruiker toegewezen beheerde identiteit die is gekoppeld aan de werkruimte. U kunt een door de gebruiker toegewezen beheerde identiteit koppelen aan een bestaande Azure Machine Learning-werkruimte met Azure Machine Learning CLI v2 of met ARMClient
.
Volgende stappen
- Apache Spark in Azure Machine Learning
- Een Synapse Spark-pool koppelen en beheren in Azure Machine Learning
- Interactieve gegevens Wrangling met Apache Spark in Azure Machine Learning
- Spark-taken verzenden in Azure Machine Learning
- Codevoorbeelden voor Spark-taken met behulp van Azure Machine Learning CLI
- Codevoorbeelden voor Spark-taken met behulp van Azure Machine Learning Python SDK