Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Microsoft Fabric omgevingen bieden flexibele configuratie voor het uitvoeren van Spark-taken. Bibliotheken bieden herbruikbare code voor notebooks en Spark-taakdefinities. Naast ingebouwde bibliotheken die bij elke Spark-runtime worden geleverd, kunt u openbare en aangepaste bibliotheken installeren in Fabric omgevingen.
Notitie
Navigeer naar de werkruimte waar je omgeving zich bevindt en selecteer je omgeving. Bibliotheekbeheeropties bevinden zich in het linker navigatiepaneel. Als u geen omgeving hebt gemaakt, raadpleegt u Maak, configureer en gebruik een omgeving in Fabric.
Ingebouwde bibliotheken
In Fabric wordt elke runtimeversie vooraf geladen met een gecureerde set ingebouwde bibliotheken die zijn geoptimaliseerd voor prestaties, compatibiliteit en beveiliging in Python, R, Java en Scala. Op de pagina Ingebouwde bibliotheken in de omgeving kunt u door deze vooraf geïnstalleerde bibliotheken bladeren en zoeken op basis van de geselecteerde runtime.
Deze bibliotheken worden standaard geïnstalleerd in elke omgeving en kunnen niet worden gewijzigd. Ze zijn beschikbaar als je je notebook of Spark job definition in deze omgeving gebruikt.
Zie Apache Spark-runtimes in Fabric om de lijst met vooraf geïnstalleerde pakketten en hun versies voor elke runtime weer te geven.
Notitie
Per-notebook benaderingen zoals de notebook Resources-map en inline installatiecommando's (bijvoorbeeld %pip install of %conda install in een codecel) zijn handmatig, sessie-scoped of notebook-scoped, en worden niet beïnvloed door environment publishing. Gebruik ze voor snelle, eenmalige bibliotheektoevoegingen tijdens interactieve ontwikkeling.
Belangrijk
Fabric ondersteunt verschillende manieren om pakketten te beheren. Zie voor meer opties en best practicesBeheer van Apache Spark-bibliotheken in Fabric. Als uw werkruimte gebruikmaakt van netwerkfuncties zoals uitgaande toegangsbeveiliging voor werkruimten of beheerde VNets, wordt de toegang tot openbare opslagplaatsen zoals PyPI geblokkeerd. Zie Beheerbibliotheken met beperkte netwerktoegang in Fabric voor hulp. Als de ingebouwde bibliotheekversies niet aan uw behoeften voldoen, kunt u deze overschrijven door de gewenste versie op te geven in de sectie externe opslagplaats of door uw eigen aangepaste pakketten te uploaden.
Externe opslagplaatsen
Je kunt bibliotheken toevoegen uit publieke repositories zoals PyPI, Conda en Maven, of uit private repositories. De opties voor de bron- en publicatiemodus verschillen afhankelijk van het type opslagplaats. Wanneer u een bibliotheek toevoegt, selecteert u een publicatiemodus (volledig of snel). Zie De publicatiemodus voor bibliotheken selecteren voor meer informatie over de werking van elke modus.
Een bibliotheek toevoegen vanuit een openbare Python-opslagplaats
Met openbare opslagplaatsen kunt u pakketten installeren vanuit PyPI of Conda.
Selecteer Bibliotheek toevoegen op het tabblad Externe opslagplaatsen.
Selecteer Bibliotheek toevoegen uit openbare opslagplaats.
Selecteer de bron (PyPI of Conda).
Voer de naam van de bibliotheek in het zoekvak in. Terwijl u typt, worden populaire bibliotheken voorgesteld in het zoekvak, maar de lijst is beperkt. Als u de bibliotheek niet ziet, voert u de volledige naam in.
Als bij het zoeken de naam van de bibliotheek wordt gevonden, zie je de beschikbare versies.
Selecteer de versie en sla uw omgeving op en publiceer deze.
Bibliotheek toevoegen vanuit Maven
Fabric ondersteunt het rechtstreeks installeren van bibliotheken vanuit Maven-opslagplaatsen. Om deze functie te gebruiken, maak je een POM-bestand aan waarin de Maven-afhankelijkheden staan die je wilt installeren en upload je dit naar de omgeving.
Selecteer pom.xmlimporteren op het tabblad Externe opslagplaatsen.
Selecteer het pom.xml bestand in uw lokale map.
Notitie
- Importeren van pom.xml wordt alleen ondersteund in Spark 4.0 en hoger.
- Importeren van pom.xml wordt alleen ondersteund in de volledige modus. In deze modus voert Fabric afhankelijkheidsoplossing en conflictdetectie voor Maven-pakketten uit. Als een bibliotheek niet compatibel is met de runtime, zie je een foutmelding na publicatie.
- Het importeren van pom.xml wordt niet ondersteund in werkruimtes met Outbound Access Protection ingeschakeld. In deze werkruimten downloadt u de vereiste bibliotheken van Maven en uploadt u deze als aangepaste bibliotheken.
Een bibliotheek toevoegen vanuit een privéopslagplaats
Privérepositories laten je pakketten installeren met pip of conda.
Selecteer Bibliotheek toevoegen op het tabblad Externe opslagplaatsen.
Selecteer Bibliotheek toevoegen vanuit een privéopslagplaats.
Selecteer de bron (pip of conda).
Voer de naam en versie van de bibliotheek in. Zorg ervoor dat je de bibliotheeknaam en versie correct invoert, want het doorzoeken van bibliotheken in private repositories terwijl je typt wordt niet ondersteund. Onjuiste pakketinformatie zorgt ervoor dat publiceren mislukt.
Bibliotheken toevoegen vanuit een Azure Artefactfeed
Je kunt Azure Artifact Feeds scopen naar een project (privé) of een organisatie (publiek). Fabric ondersteunt beide toepassingsgebieden. Ongeacht de zichtbaarheid van de feed in Azure DevOps, maakt Fabric altijd verbinding via een geverifieerde Data Factory-verbinding, dus moet u een verbinding instellen, zelfs voor openbare feeds.
Notitie
Het installeren van bibliotheken vanuit Azure artefactfeed wordt ondersteund in Spark 3.5. Het wordt niet ondersteund in werkruimten waarvoor Private Link of uitgaande toegangsbeveiliging is ingeschakeld.
Een verbinding instellen voor uw Azure-artefactfeed
In de omgeving worden inloggegevens niet rechtstreeks opgeslagen. In plaats daarvan maakt u een verbinding via De Data Factory-connector en verwijst u ernaar via de verbindings-id in een YML-bestand. Meer informatie over Azure Artefactfeed.
Selecteer het tandwielpictogram Settings in de rechterbovenhoek van de Fabric-portal en selecteer vervolgens Beheerverbindingen en gateways.
Maak een nieuwe verbinding. Selecteer + Nieuw en selecteer vervolgens Cloud als type en kies Azure Artefactfeed (preview) als verbindingstype.
Voer de URL van de feed in een van deze formulieren in:
https://pkgs.dev.azure.com/{organization}/{project}/_packaging/{feed}/pypi/simple/ https://{organization}.pkgs.visualstudio.com/{project}/_packaging/{feed}/pypi/simple/Toegang verlenen aan de feed via een persoonlijk toegangstoken (PAT) of via werkruimte-identiteit
- Genereer voor de PAT-tokenmodus een PAT (in ADO → Gebruikersinstellingen → Persoonlijke toegangstokens) met het bereik Pakketten: Lezen. Voeg de gebruiker die eigenaar is van de PAT toe aan de feed met de rol Feed Reader bij Feed → Instellingen → Machtigingen.
- Voor de werkruimte-id-modus schakelt de werkruimtebeheerder werkruimte-id in in werkruimte-instellingen → werkruimte-id → + werkruimte-identiteit. Zoek in de ADO-feed de feedinstellingen → Machtigingen → Gebruikers/groepen toevoegen, voeg de werkruimte-id (met dezelfde naam als de werkruimte) toe met ten minste de rol Feedlezer .
Selecteer
Code-First Artefacten zoals Notebooks toestaan om toegang te krijgen tot deze verbinding (preview).> Selecteer Maken om de verbinding op te slaan. U ziet deze in de lijst met verbindingen.
Noteer de verbindings-id na het maken. U hebt deze nodig in de volgende stap.
Een YML-bestand voorbereiden en uploaden
Maak een YML-bestand met de pakketten die u wilt installeren en verwijst naar de verbindings-id in plaats van de feed-URL en referenties. Fabric gebruikt de verbindings-id om pakketten te verifiëren en op te halen uit uw feed tijdens de publicatie.
Een standaard pip-configuratie verwijst rechtstreeks naar de feed-URL en referenties:
dependencies:
- pip:
- fuzzywuzzy==0.18.0
- wordcloud==1.9.4
- --index-url <URL_TO_THE_AZURE_ARTIFACT_FEED_WITH_AUTH>
Vervang voor Fabric de URL door de verbindings-id die u eerder hebt vastgelegd:
dependencies:
- pip:
- fuzzywuzzy==0.18.0
- wordcloud==1.9.4
- --index-url <YOUR_CONNECTION_ID>
Upload het YML-bestand rechtstreeks naar de omgeving of schakel over naar de YML-editorweergave en plak de inhoud. Wanneer u de omgeving publiceert, Fabric de pakketten uit uw feed leest en persistent maakt. Als u pakketten in uw Azure Artefactfeed bijwerkt, de omgeving opnieuw publiceren om de nieuwste versies op te halen.
Notitie
- In de lijstweergave kunt u bibliotheken toevoegen, verwijderen of bewerken uit bestaande feedverbindingen. Als u een feedverbinding zelf wilt toevoegen, verwijderen of bewerken, schakelt u over naar de YML-editorweergave en werkt u het YML-bestand rechtstreeks bij.
- U kunt meerdere feeds opgeven in het YML-bestand. Fabric ze doorzoekt in de volgorde die wordt vermeld totdat het pakket is gevonden. Openbare opslagplaatsen, zoals PyPI en Conda, worden automatisch doorzocht, zelfs als ze niet zijn opgenomen in het YML-bestand.
- Als een pakket in het YML-bestand niet kan worden gevonden in een van de vermelde feeds, mislukt het publiceren. Controleer de pakketnaam en versie voordat u publiceert.
Voeg bibliotheken toe van JFrog Artifactory
Je kunt pakketten installeren vanuit een privé JFrog Artifactory-repository door een Data Factory-verbinding aan te maken en in een YML-bestand naar de verbindings-ID ervan te verwijzen.
Notitie
Het installeren van bibliotheken vanuit JFrog Artifactory vereist Runtime 2.0 (Spark 4.1) of later. Het wordt niet ondersteund in werkruimtes waarvoor Private Link of outbound access protection (OAP) is ingeschakeld. Voor alternatieven, zieBibliotheken beheren met beperkte netwerktoegang in Fabric. Alleen PyPI- en Conda-pakketten worden ondersteund, en je moet de publicatiemodus Full gebruiken. Maven-pakketten worden niet ondersteund via een JFrog Artifactory-verbinding.
Een verbinding opzetten voor JFrog Artifactory
Selecteer het tandwielpictogram Settings in de rechterbovenhoek van de Fabric-portal en selecteer vervolgens Beheerverbindingen en gateways.
Maak een nieuwe verbinding. Selecteer + Nieuw, selecteer Cloud als type en kies JFrog Artifactory (Preview) als verbindingstype.
Voer de URL van de JFrog Artifactory-repository in. Voorbeeld:
https://{organization}.jfrog.io/artifactory/{repository}Voor de authenticatiemethode selecteer je het verwachte mechanisme.
Voor een Conda-repository geef je zowel een gebruikersnaam als een token op in de verbindingsinstelling.
Selecteer
Code-First Artefacten zoals Notebooks toestaan om toegang te krijgen tot deze verbinding (preview).> Selecteer Maken om de verbinding op te slaan en noteer vervolgens de verbindings-ID.
Een YML-bestand voorbereiden en uploaden
Verwijs in je YML-bestand naar de verbindings-ID als de index-URL in plaats van de repository-URL en toegangstoken op te nemen:
dependencies:
- pip:
- fuzzywuzzy==0.18.0
- wordcloud==1.9.4
- --index-url <YOUR_CONNECTION_ID>
Alleen de blote verbindings-ID wordt ondersteund voor een JFrog Artifactory-index of kanaal.
Plaats geen gebruikersnaam of token vóór de host in een --index-url URL. Fabric wijst aangepaste index- of kanaal-URL's met ingesloten inloggegevens af met de foutmelding "Aangepaste index/kanaal-URL's mogen geen inloggegevens inbedden". Sla in plaats daarvan inloggegevens op in het verbindingselement.
Upload het YML-bestand rechtstreeks naar de omgeving of schakel over naar de YML-editorweergave en plak de inhoud. Wanneer je de omgeving publiceert, leest Fabric de pakketten uit je repository en bewaart ze. Publiceer de omgeving opnieuw om pakketupdates door te voeren.
Externe bibliotheken beheren
Nadat u externe bibliotheken hebt toegevoegd, kunt u deze beheren vanuit de sectie Externe opslagplaatsen .
- Filter : gebruik een pakketnaam als trefwoord om de lijst met externe bibliotheken te filteren.
- Bijwerken : selecteer een bibliotheek om de naam, versie of het brontype in de lijstweergave bij te werken. In de YML-editorweergave kun je ook de Azure Artifact Feed of JFrog Artifactory connection ID bijwerken.
- Verwijderen : beweeg de muisaanwijzer over een bibliotheekrij om de optie Verwijderen weer te geven of selecteer meerdere bibliotheken en selecteer vervolgens Verwijderen. U kunt bibliotheken ook verwijderen met behulp van de YML-editorweergave.
- Afhankelijkheden weergeven : beweeg de muisaanwijzer over een bibliotheek met openbare opslagplaatsen en selecteer Afhankelijkheden weergeven om de afhankelijkheidsstructuur op te halen. Afhankelijkheidsinformatie is niet beschikbaar voor privébibliotheken of bibliotheken van Azure Artifact Feed of JFrog Artifactory.
-
Exporteren naar .yml : exporteer de volledige lijst met externe bibliotheken naar een
.ymlbestand en download het naar uw lokale map.
Aangepaste bibliotheken
Aangepaste bibliotheken verwijzen naar code die door u of uw organisatie is gebouwd. Fabric ondersteunt aangepaste bibliotheekbestanden in indelingen .whl, .py, .jar en .tar.gz. Net als bij externe bibliotheken kiest u een publicatiemodus (volledig of snel) wanneer u aangepaste pakketten uploadt. Zie De publicatiemodus voor bibliotheken selecteren voor meer informatie.
Notitie
Fabric ondersteunt alleen .tar.gz-bestanden voor R-taal. Gebruik de bestandsindeling .whl en .py voor Python taal.
Gebruik de knoppen Uploaden en Downloaden op de pagina Aangepaste bibliotheken om bibliotheken toe te voegen vanuit uw lokale map of deze lokaal te downloaden.
Als u een bibliotheek wilt verwijderen, beweegt u de muisaanwijzer over de rij en selecteert u het prullenbakpictogram of selecteert u meerdere bibliotheken en selecteert u Vervolgens Verwijderen.
De publicatiemodus voor bibliotheken selecteren
Wanneer je externe of aangepaste bibliotheken toevoegt, kies dan een publiceermodus. De volledige modus is beschikbaar voor alle bibliotheekbronnen en workloadtypen. Snelle modus is beschikbaar voor openbare opslagplaatsen en de meeste aangepaste bibliotheekindelingen, maar alleen wanneer u notebooks uitvoert.
In de volgende tabel ziet u welke publicatiemodus elke bibliotheekbron ondersteunt.
| Bibliotheekbron | Volledige modus | Snelle modus |
|---|---|---|
| Openbare opslagplaats (PyPI/Conda) | Ja | Ja |
| Privéopslagplaats (pip/conda) | Ja | No |
| Azure artefactfeed | Ja | No |
| JFrog Artifactory | Ja | No |
Aangepast .whl, .py, .tar.gz |
Ja | Ja |
Gewoonte .jar |
Ja | No |
De juiste modus kiezen voor uw behoeften
Gebruik afhankelijkheidscomplexiteit en workloadtype om te bepalen welke modus past.
- De volledige modus lost afhankelijkheden op, valideert de compatibiliteit en maakt een stabiele momentopname van de bibliotheek tijdens het publiceren. Die momentopname wordt ingezet wanneer een nieuwe sessie begint. Gebruik het voor grotere afhankelijkheidssets (bijvoorbeeld meer dan 10 pakketten), productieworkloads en pipelines. Publiceren duurt doorgaans 3 tot 6 minuten; sessie opstarten voegt 1 tot 3 minuten toe voor afhankelijkheidsimplementatie, afhankelijk van de afhankelijkheidsgrootte. Om een stabiele momentopname te behouden terwijl u een sessiestart van ongeveer 5 seconden bereikt, gebruikt u volledige modus samen met een aangepaste livepool.
- In de snelle modus wordt afhankelijkheidsverwerking overgeslagen tijdens het publiceren en installeren van pakketten bij het opstarten van de notebooksessie. Gebruik het voor lichtere afhankelijkheidssets, snelle iteratie en experimenten in een vroeg stadium. Het publiceren is binnen ongeveer 5 seconden voltooid; bibliotheekinstallatie vindt plaats bij het starten van de sessie.
Tijdens de ontwikkeling kunt u modi combineren. Een veelvoorkomend patroon is om in de snelle modus te herhalen en vervolgens gevalideerde afhankelijkheden naar de volledige modus te verplaatsen voor een stabiele productiemomentopname. Je kunt ook een bestaande full mode snapshot ongewijzigd laten en nieuwe testpakketten in quick mode layeren - de full mode snapshot wordt eerst gedeployed, daarna worden quick mode-pakketten eroverheen geïnstalleerd.
Beperkingen en gedrag van modus
Houd rekening met deze beperkingen bij het werken met publicatiemodi.
- De snelle modus werkt alleen met notebooks, niet met Spark-taakdefinities.
- Als u een aangepaste bibliotheek tussen modi wilt verplaatsen, downloadt u het bestand, verwijdert u het uit de huidige modus en uploadt u deze vervolgens naar de doelmodus. Directe overdrachten tussen modi worden niet ondersteund.
- Installatielogboeken worden niet weergegeven in het notebook. Gebruik Bewaking (niveau 2) om de voortgang bij te houden en problemen op te lossen.
- Wanneer beide modi pakketten bevatten, is de momentopname in de volledige modus eerst van toepassing. Pakketten in de snelle modus worden boven op elk volledig moduspakket met dezelfde naam geïnstalleerd en overschreven.
- Wanneer er duplicaten pakketten over verschillende modi bestaan, overschrijven versies in de Snelle modus enkel de versies van de Volledige modus voor de huidige notebooksessie. Als u een nieuwe sessie start, wordt eerst de momentopname van de volledige modus opnieuw toegepast en vervolgens worden de pakketten in de snelle modus bovenaan geïnstalleerd.
- Pakketten in de snelle modus worden geïnstalleerd wanneer de eerste codecel voor die taal wordt uitgevoerd. Python pakketten bijvoorbeeld worden geïnstalleerd wanneer de eerste Python cel wordt uitgevoerd en R-pakketten worden geïnstalleerd wanneer de eerste R-cel wordt uitgevoerd.