Python-függőségek kezelése adatfolyamokhoz

A Lakeflow-folyamatok támogatják a folyamatok külső függőségeit. A Databricks két minta egyikét javasolja a Python-csomagok telepítéséhez:

  1. A Környezeti beállítások használatával csomagokat vehet fel a folyamatkörnyezetbe a folyamat összes forrásfájlja számára.
  2. Modulok vagy kódtárak importálása a munkaterület fájljaiban tárolt forráskódból. Lásd: Python-modulok importálása Git-mappákból vagy munkaterületfájlokból.

A klasszikus számítási környezetet használó folyamatok a fürtszintű init-szkripteket is támogatják. a kiszolgáló nélküli Lakeflow-folyamatok nem támogatják az init-szkripteket. A Databricks minden esetben a környezeti beállítások használatát javasolja init szkriptek helyett, mivel a külső függőségek, különösen az init szkriptek növelik a futtatókörnyezet frissítésével kapcsolatos problémák kockázatát. Ha a feldolgozás init szkripteket igényel, automatizálja a folyamat tesztelését a problémák korai észleléséhez, a Databricks pedig a tesztelés gyakoriságának növelését javasolja.

Fontos

Mivel a JVM-kódtárak nem támogatottak a folyamatokban, ne használjon init-szkriptet a JVM-kódtárak telepítéséhez. Azonban más kódtártípusokat, például Python kódtárakat is telepíthet init-szkripttel.

Python-könyvtárak

Külső Python-kódtárak megadásához szerkessze a folyamat környezetét.

  1. A folyamatszerkesztőben kattintson a Beállítások gombra.
  2. A folyamat környezetében válassza a ceruza ikont.Környezet szerkesztése.
  3. Kattintson a Plusz ikonra.Függőség hozzáadása.
  4. Írja be a függőség nevét. A Databricks azt javasolja, hogy rögzítse a kódtár verzióját. Ha például függőséget szeretne hozzáadni a 3.19-es verzióhoz simplejson , írja be a következőt simplejson==3.19.*: .

Python wheel fájlt is telepíthet egy Unity Catalog-kötetből az elérési út megadásával, például /Volumes/my_catalog/my_schema/my_ldp_volume/ldpfns-1.0-py3-none-any.whl.

Note

A folyamatcsatornák nem támogatják a Python-folyamat kézi újraindítását a(z) dbutils.library.restartPython() használatával. Deklarálja az összes Python függőséget a környezeti beállításokon keresztül ahelyett, hogy futtatókörnyezetben telepíti vagy újra betöltené őket. A Környezeti beállítások használatával a folyamatok újra felhasználhatják a gyorsítótárazott kódtárakat a futtatások között ahelyett, hogy minden futtatáskor újratelepítenék őket.

Környezeti verzió

Alapértelmezés szerint a folyamathoz elérhető Python nyelvi verzió és előre telepített kódtárkészlet a Databricks futtatókörnyezeti csatorna aktuális verziójából származik. Tekintse meg a Lakeflow-folyamatok kibocsátási megjegyzéseit, valamint az aktuális verziók kiadásfrissítési folyamatát és a futtatókörnyezetenkénti csomaglistákat.

Fontos

Ez a funkció bétaverzióban érhető el. A munkaterület rendszergazdái az Előnézetek lapon szabályozhatják a funkcióhoz való hozzáférést. Lásd: Az Azure Databricks előzetes verziójának kezelése.

Ha rögzíteni szeretné a Python nyelvi verziót és az előre telepített kódtárkészletet a Databricks Futtatókörnyezet frissítésétől függetlenül, konfiguráljon egy környezeti verziót a folyamaton. Amíg a környezeti verzió be van állítva, a Databricks Futtatókörnyezet frissítései nem módosítják a Python nyelvi verziót vagy az előre telepített kódtár verzióit, és a Környezet beállításain keresztül hozzáadott külső függőségek is erre az alapra vannak rétegzve. Lásd a folyamatok környezeti verzióinak konfigurálását.

Scala és Java könyvtár támogatása

Nem, a folyamatok csak az SQL-t és a Pythont támogatják. A JVM-könyvtárak nem használhatók egy folyamatban. A JVM-kódtárak telepítése kiszámíthatatlan viselkedést okoz, és szakíthat a jövőbeli Lakeflow-folyamatok kiadásaival. Ha a csővezeték init szkriptet használ, arról is gondoskodnia kell, hogy a JVM könyvtárak nincsenek telepítve a szkripttel.