Beheer afhankelijkheden met behulp van omgevingen

Important

Deze functie bevindt zich in de bètaversie. Accountbeheerders kunnen de toegang tot deze functie bedienen via de pagina Voortouwen van de accountconsole via de schakelaar Omgevingen voor Standaard Compute . Zie Azure Databricks previews beheren.

Op een klassieke computeresource die gebruikmaakt van de Environments-afhankelijkheidsmodus, beheer je afhankelijkheden op werklastniveau met basisomgevingen in plaats van compute-scoped libraries te installeren.

Omgevingsinstellingen blijven geïsoleerd van wijzigingen op computeniveau, zodat workloads niet uitvallen wanneer de onderliggende compute wijzigt. En omdat Azure Databricks basisomgevingen in de cache bewaart, hoeven afhankelijkheden niet tijdens het opstarten te worden opgelost en geïnstalleerd, waardoor rekenresources sneller starten en mislukkingen door pakketresolutie, beschikbaarheid van repositories of netwerkbetrouwbaarheid worden voorkomen.

In een notebook dat is gekoppeld aan een klassieke computeresource die de Environments-afhankelijkheidsmodus gebruikt, selecteer je een basisomgeving en voeg je afhankelijkheden toe vanuit het Environment-zijpaneel van het notebook. Voor taaktaken configureer je afhankelijkheden met een taakomgevingsspecificatie.

Requirements

De instelling voor afhankelijkheidsmodus is alleen beschikbaar op computes die aan de volgende eisen voldoen:

Voor ondersteuningsdetails, zie Beperkingen.

Stel de afhankelijkheidsmodus in

Om een klassieke rekenbron te creëren die gebruikmaakt van de Environments-afhankelijkheidsmodus:

  1. Klik in de zijbalk van de werkruimte op het rekenicoonCompute en open vervolgens het tabblad All-purpose compute .

  2. Klik op Rekenproces maken.

  3. Selecteer onder Prestaties19 Beta of hoger in het Databricks Runtime-versie-dropdownmenu.

  4. Vouw de Geavanceerde sectie uit en klik dan op Afhankelijkheden.

  5. Voor Dependency mode, houd Auto geselecteerd zodat Azure Databricks de modus kan oplossen, of klik op Manual en selecteer Omgevingen om het zelf in te stellen. Zie opties voor afhankelijkheidsmodus.

    Het tabblad Afhankelijkheden in de sectie Geavanceerd van het formulier voor het maken van een compute, met Afhankelijkheidsmodus ingesteld op Auto en omgezet in Omgevingen.

  6. Configureer de rest van de compute en klik dan op Aanmaken.

Nadat de berekening draait, koppel je een notitieboek en configureer je de omgeving zoals beschreven in Gebruik omgevingen in een notitieboek.

Afhankelijkheidsmodusopties

De Dependency mode-bediening heeft twee instellingen die bepalen hoe de modus wordt gekozen:

  • Auto: Azure Databricks lost de modus op basis van de compute-configuratie. Wordt automatisch omgezet in Environments, tenzij de rekenomgeving Docker, Spark-omgevingsvariabelen of initialisatiescripts specificeert. In dat geval wordt het omgezet in Cluster libraries.
  • Handleiding: Je kiest zelf Omgevingen of Cluster-bibliotheken .

Wanneer je Handmatig selecteert, kies dan de modus die bij je behoeften past:

  • Omgevingen: Beheer afhankelijkheden op werklastniveau met behulp van basisomgevingen. Clusterbibliotheken, Docker, Spark-omgevingsvariabelen en init-scripts zijn uitgeschakeld. Gebruik deze modus om afhankelijkheden voor elke werklast te isoleren.
  • Clusterbibliotheken: Het klassieke gedrag. Installeer afhankelijkheden op de compute met behulp van clusterbibliotheken, init-scripts of Docker. Gebruik deze modus als je werklast een van die instellingen vereist.

Werk een bestaande compute bij

Als je de instellingen voor bestaande compute bewerkt, wordt overschakelen naar Environments-modus geblokkeerd als de compute incompatibele instellingen heeft, zoals init-scripts, clusterbibliotheken of Docker. Als je eerst de incompatibele instellingen verwijdert, kun je daarna de afhankelijkheidsmodus aanpassen.

Als je overschakelt naar Clusterlibraries-modus vanuit Omgevingen-modus , behouden gekoppelde notitieboeken hun omgevingsselecties, maar die selecties worden inactief. Als je de rekenkracht weer terugschakelt naar Omgevingen-modus , worden die selecties weer actief.

Gebruik omgevingen in een notitieboekje

Om omgevingen in een notebook te gebruiken, koppel je het notebook aan een klassieke computeresource die gebruikmaakt van de Environments-afhankelijkheidsmodus. Nadat je het notebook hebt gekoppeld, configureer je de afhankelijkheden van het notebook in het omgevingEnvironment-zijpaneel .

Configureren van de omgeving van een notebook vanuit het zijvenster Omgeving op een klassieke rekenresource die de afhankelijkheidsmodus Environments gebruikt.

Selecteer een basisomgeving

Een basisomgeving bepaalt de vooraf geïnstalleerde bibliotheken en de omgevingsversie die beschikbaar zijn voor je notebook. De basisomgevingselector in het deelvenster Omgevingszijde is de locatie waar u uw omgeving kiest. Databricks adviseert de nieuwste versie te gebruiken om gebruik te maken van de meest actuele notebookfuncties. Voor details over elke omgevingsversie, zie Omgevingsversies.

De basisomgevingkiezer bevat de volgende opties:

  • Standaard: De standaardbasisomgeving met door Databricks geleverde bibliotheken.
  • ML: Een basisomgeving met de Python- en systeempakketten van Databricks Runtime voor Machine Learning vooraf geïnstalleerd.
  • Meer: Uitvouwen om extra opties weer te geven:
    • Eerdere versies van Standard- en ML-omgevingen.
    • Aangepast: Geef een aangepaste omgeving op met behulp van een YAML-bestand.
  • Werkruimteomgevingen: Geeft een overzicht van alle compatibele basisomgevingen die door werkruimtebeheerders voor je werkruimte zijn geconfigureerd.

Afhankelijkheden toevoegen aan het notebook

Azure Databricks slaat de virtuele omgeving van uw notebook op in de cache, zodat afhankelijkheden niet telkens opnieuw worden geïnstalleerd wanneer u een notebook opnieuw opent of weer verdergaat na inactiviteit.

Een afhankelijkheid afzonderlijk installeren:

  1. In de sectie Afhankelijkheden voer je het pad van de afhankelijkheid in het veld in en klik dan op +Afhankelijkheid toevoegen. U kunt een afhankelijkheid opgeven in elke indeling die geldig is in een requirements.txt-bestand . Python-wielbestanden of Python-projecten (bijvoorbeeld de map met een pyproject.toml of een setup.py) kunnen zich bevinden in werkruimtebestanden of Unity Catalog-volumes.

    • Als u een werkruimtebestand gebruikt, moet het pad absoluut zijn en beginnen met /Workspace/.
    • Als u een bestand in een Unity Catalog-volume gebruikt, moet het pad de volgende indeling hebben: /Volumes/<catalog>/<schema>/<volume>/<path>.whl
  2. Klik op Apply om de afhankelijkheden te installeren en het Python proces opnieuw te starten.

Important

Installeer geen PySpark of een bibliotheek die PySpark als afhankelijkheid installeert in je notebooks. Als u dit doet, wordt uw sessie gestopt en resulteert dit in een fout. Als dit gebeurt, verwijder dan de bibliotheek en reset je omgeving.

Om geïnstalleerde afhankelijkheden te bekijken, klik je op het tabblad Geïnstalleerd in het zijpaneel Omgeving . Open de pip-installatielogboeken voor de notebookomgeving door onderaan het deelvenster op pip-logboeken te klikken.

Gebruik omgevingen in een taak

Voor taaktaken die draaien op een klassieke rekenbron die de Environments-afhankelijkheidsmodus gebruikt, configureer afhankelijkheden met een taakomgevingsspecificatie. Een taakomgeving specificeert een basisomgeving en eventuele extra afhankelijkheden waarnaar één of meer taken kunnen verwijzen.

Om een omgeving voor een taaktaak te configureren, voltooi je de volgende stappen:

  1. Maak een taak aan of bewerk deze in een functie.
  2. Selecteer onder Compute een bestaande klassieke computeresource die de Environments-afhankelijkheidsmodus gebruikt, of voeg klassieke jobs compute toe.
  3. Als je Classic Jobs Compute toevoegt, vouw je Geavanceerd uit.
  4. Klik op Afhankelijkheden.
  5. Voor Afhankelijkheidsmodus, selecteer Handmatig en Omgevingen, of laat Auto staan als dit resulteert in Omgevingen.
  6. Onder Omgeving en Bibliotheken in de taakconfiguratie configureer je een omgeving voor de taak. Zie Omgeving configureren voor taaktaken voor de opties die beschikbaar zijn voor elk taaktype.

Taken die draaien op een klassieke rekenbron die gebruikmaakt van de afhankelijkheidsmodus Environments , ondersteunen de taakinstelling Dependente bibliotheken niet. Voeg in plaats daarvan afhankelijkheden toe aan de omgeving.

Limitations

De Environments-afhankelijkheidsmodus ondersteunt Python-workloads en afhankelijkheden in interactieve notitieboeken en taaktaken. De volgende beperkingen zijn van toepassing:

  • Spark JAR-taken worden niet ondersteund op een klassieke computeresource die gebruikmaakt van de Environments-afhankelijkheidsmodus.
  • Code uitvoeren %scala mislukt.
  • Alle beperkingen van de standaard toegangsmodus gelden, inclusief het ontbreken van ondersteuning voor R. Zie standaard rekenvereisten en beperkingen.

Incompatibele instellingen

Wanneer de afhankelijkheidsmodus van de omgevingen is ingeschakeld, worden de volgende rekeninstellingen uitgeschakeld:

  • Docker (Azure Databricks Container Services)
  • Spark-omgevingsvariabelen
  • initialisatiescripts
  • Clusterbibliotheken