A Databricks-alkalmazások előre telepített Python kódtárainak letiltása

Ez a lap bemutatja, hogyan tilthatja le az előre telepített Python kódtárakat egy vízszintesen skálázott Databricks-alkalmazásban, hogyan kezelheti saját függőségeit, és hogyan kapcsolhatja vissza később az előre telepített kódtárakat. A letiltás csak a normál alkalmazásból konvertált horizontálisan skálázott alkalmazásokban érhető el. Lásd: Normál alkalmazás átalakítása vízszintes skálázás használatára. A horizontális skálázás bétaverzióban érhető el.

Amikor konvertált egy standard alkalmazást vízszintesen skálázottra, Azure Databricks a konvertált alkalmazást a előre telepített Python kódtárakra rögzíti így az alkalmazás meglévő importálásai továbbra is működnek. Válassza ezt a lehetőséget, ha az alkalmazást tiszta alap operációs rendszerképen szeretné futtatni, és minden függvénytárat saját maga szeretne megadni.

Az előre telepített könyvtárak mellőzése

A leiratkozás azt jelzi az Azure Databricksnek, hogy a következő telepítést egy tiszta alap operációsrendszer-lemezképre építse. Az előre telepített könyvtárak többé nem érhetők el, hacsak nem deklarálja őket a requirements.txt vagy a pyproject.toml elemben.

A lemondáshoz:

  1. Az alkalmazás részletei lapon kattintson a Szerkesztés gombra.
  2. A Configure lépésben törölje a jelet a Az előre telepített Python kódtárak használata jelölőnégyzetből.
  3. Kattintson a Mentés lehetőségre. A jelenleg futó telepítés nincs hatással.
  4. Telepítse újra az alkalmazást az Üzembe helyezés lapról . Ez az új üzembe helyezés a tiszta alap operációsrendszer-lemezkép alapján épül fel.

A függőségek tranzitív módon tartalmazhatnak előre telepített kódtárakat, így nem mindig egyértelmű, hogy az alkalmazás mely kódtárakat igényel közvetlenül. Keresse meg a hiányzó kódtárakat egy tesztalkalmazásban, mielőtt lemond róla az éles környezetben:

  1. Hozzon létre egy új, vízszintesen skálázott alkalmazást. Az új, vízszintesen skálázott alkalmazások már a tiszta alap operációsrendszer-képen futnak, ezért ez megfelel a kikapcsolás utáni célállapotnak.
  2. Telepítse az éles alkalmazás forrását a tesztalkalmazásba. Frissítse a(z) requirements.txt elemet (vagy a(z) pyproject.toml elemet), majd telepítse újra, amíg a tesztalkalmazás el nem indul, ki nem szolgálja a kéréseket, és át nem megy a teszteken.
  3. Másolja a végleges függőségi deklarációkat az éles alkalmazás forrásába.
  4. Az éles alkalmazásban kövesse az előre telepített kódtárak letiltásának és a frissített forrás üzembe helyezésének lépéseit.

Az éles rendszer az előre telepített könyvtárakat tartalmazó lemezképpel fut tovább, amíg az új telepítés sikeresen át nem megy az állapotellenőrzéseken, így ezzel a megközelítéssel elkerülhető a leállás, miközben azonosíthatja a tesztalkalmazás hiányzó függőségeit.

Hibák elhárítása a lemondás után

A kikapcsolás után leggyakrabban az alkalmazás indításakor jelentkező ModuleNotFoundError hiba fordul elő, amelyet egy olyan keretrendszer vagy könyvtár okoz, amelyet a kód implicit módon az előre telepített készletből importált. A probléma megoldása:

  1. Nyissa meg a Naplók lapot az alkalmazás részletei lapon.
  2. Keresse meg a hiányzó modulnevet a buildelési vagy futtatókörnyezeti naplókban.
  3. Adja hozzá a megfelelő csomagot ( requirements.txt vagy pyproject.toml) és helyezze újra üzembe.

Az új üzembe helyezés csak akkor váltja fel a futó üzembe helyezést, ha az alkalmazásfolyamat az indítás utáni első néhány másodpercben is fut. Az a forgalom automatikus átvételére nem beállított üzembe helyezés, amely egy hiányzó import miatt azonnal összeomlik, soha nem lép élesbe, és amíg kijavítja a függőségek listáját, a forgalom továbbra is az előző, működő üzembe helyezésre irányul. Az indítási ellenőrzés felületes, ezért a kikapcsolása után ellenőrizze, hogy az alkalmazás valóban kiszolgálja-e a kéréseket, és ne arra hagyatkozzon, hogy ez az ellenőrzés kiszűri a hibás telepítéseket.

Előre telepített kódtárak visszakapcsolása

Ha vissza szeretne térni az előre telepített kódtárakhoz a lemondás után:

  1. Az alkalmazás részletei lapon kattintson a Szerkesztés gombra.
  2. A Configure lépésben jelölje be a Az előre telepített Python kódtárak használata jelölőnégyzetet.
  3. Kattintson a Mentés lehetőségre.
  4. Telepítse újra az alkalmazást az Üzembe helyezés lapról . Ez az új üzembe helyezés az alaprendszerkép alapján épül fel az előre telepített kódtárakkal.

Az Ön requirements.txt és pyproject.toml továbbra is érvényben marad, így a leiratkozás ideje alatt hozzáadott explicit deklarációk megőrződnek.

Note

A vízszintesen skálázott alkalmazások normál alkalmazássá alakítása szintén visszaállítja az előre telepített kódtárakat: a standard alkalmazás újraépül velük, függetlenül attól, hogy ön lemondta-e. Ha később újra horizontálisan skálázhatóvá konvertálja az alkalmazást, az tartalmazza az előre telepített kódtárakat, amíg ismét le nem tiltja a műveletet.