Megosztás a következőn keresztül:


Mik azok a Databricks-eszközcsomagok?

A Databricks Asset Bundles egy olyan eszköz, amely megkönnyíti a szoftverfejlesztés ajánlott eljárásainak bevezetését, beleértve a forráskövetést, a kódvizsgálatot, a tesztelést, valamint a folyamatos integrációt és teljesítést (CI/CD) az adatokhoz és AI-projektekhez. A csomagok lehetővé teszik a Databricks-erőforrások, például a feladatok, a folyamatok és a jegyzetfüzetek forrásfájlokként való leírását. Ezek a forrásfájlok a projektek teljes körű definícióját biztosítják, beleértve a strukturálás, tesztelés és üzembe helyezés módját, ami megkönnyíti a projekteken való együttműködést az aktív fejlesztés során.

A csomagok lehetővé teszik a metaadatoknak a projekt forrásfájljai melletti hozzáadását. Ha csomagokkal helyez üzembe egy projektet, a rendszer ezt a metaadatokat használja az infrastruktúra és más erőforrások kiépítéséhez. A projekt forrásfájlok és metaadatok gyűjteménye ezután egyetlen csomagként lesz üzembe helyezve a célkörnyezetben. A csomag a következő részeket tartalmazza:

  • Szükséges felhőinfrastruktúra és munkaterület-konfigurációk
  • Az üzleti logikát tartalmazó forrásfájlok, például jegyzetfüzetek és Python-fájlok
  • A Databricks-erőforrások definíciói és beállításai, például az Azure Databricks-feladatok, a Delta Live Tables-folyamatok, a modellkiszolgáló végpontok, az MLflow-kísérletek és a regisztrált MLflow-modellek
  • Egységtesztek és integrációs tesztek

Az alábbi ábra egy fejlesztési és CI/CD-folyamat magas szintű nézetét mutatja be kötegekkel:

A Databricks-eszközcsomagok áttekintése

Mikor érdemes a Databricks-eszközcsomagokat használni?

A Databricks Assets Bundles a Databricks-projektek kezelésének infrastrukturális (IaC) megközelítése. Ezeket akkor használja, ha összetett projekteket szeretne kezelni, ahol több közreműködő és automatizálás elengedhetetlen, és a folyamatos integráció és üzembe helyezés (CI/CD) követelmény. Mivel a csomagok a forráskóddal együtt létrehozott és karbantartott YAML-sablonokon és fájlokon keresztül vannak definiálva és felügyelve, jól megfeleltetik azokat az eseteket, ahol az IaC megfelelő megközelítés.

A csomagokhoz ideális forgatókönyvek közé tartoznak a következők:

  • Adat-, elemzési és gépi tanulási projektek fejlesztése csapatalapú környezetben. A csomagok segíthetnek a különböző forrásfájlok hatékony rendszerezésében és kezelésében. Ez biztosítja a zökkenőmentes együttműködést és az egyszerűsített folyamatokat.
  • Iterálja gyorsabban az ml-problémákat. Az ML-folyamatok erőforrásainak (például a betanítási és kötegelt következtetési feladatoknak) kezelése olyan ML-projektek használatával, amelyek a kezdetektől fogva követik az éles környezetben ajánlott eljárásokat.
  • Az új projektekre vonatkozó szervezeti szabványokat az alapértelmezett engedélyeket, szolgáltatásneveket és CI/CD-konfigurációkat tartalmazó egyéni csomagsablonok készítésével állíthatja be.
  • Jogszabályi megfelelőség: Azokban az iparágakban, ahol a jogszabályi megfelelőség jelentős problémát jelent, a csomagok segíthetnek fenntartani a kód- és infrastruktúra-munka verziószámozott előzményeit. Ez segít az irányításban, és biztosítja a szükséges megfelelőségi szabványok betartását.

Hogyan működnek a Databricks-eszközcsomagok?

A csomag metaadatai yaML-fájlokkal definiálhatók, amelyek megadják a Databricks-projekt összetevőit, erőforrásait és konfigurációját. Ezt a YAML-fájlt manuálisan is létrehozhatja, vagy létrehozhat egyet egy kötegsablon használatával. A Databricks parancssori felület ezután használható a csomagok ellenőrzésére, üzembe helyezésére és futtatására ezekkel a yaML-fájlokkal. Csomagprojekteket futtathat azonosítókról, terminálokról vagy közvetlenül a Databricksben. Ez a cikk a Databricks parancssori felületét használja.

A kötegek manuálisan vagy sablon alapján hozhatók létre. A Databricks cli alapértelmezett sablonokat biztosít az egyszerű használati esetekhez, de konkrétabb vagy összetettebb feladatokhoz létrehozhat egyéni csomagsablonokat a csapat ajánlott eljárásainak implementálásához és a gyakori konfigurációk konzisztens állapotának megőrzéséhez.

A Databricks-eszközcsomagok expresszításához használt YAML konfigurációval kapcsolatos további részletekért lásd a Databricks Eszközcsomag konfigurációit.

A környezet konfigurálása csomagok használatára

A Databricks parancssori felületével egyszerűen üzembe helyezhet csomagokat a parancssorból. Az alábbi parancs futtatásával ellenőrizheti, hogy telepítve van-e a Databricks parancssori felület és az aktuális verzió:

databricks --version

Feljegyzés

A Databricks CLI 0.218.0-s vagy újabb verziójára van szükség. A Databricks parancssori felületének telepítéséhez lásd a Databricks parancssori felület telepítését vagy frissítését.

A Databricks parancssori felület telepítése után ellenőrizze, hogy a távoli Databricks-munkaterületek megfelelően vannak-e konfigurálva. A kötegekhez engedélyezni kell a munkaterület fájlok funkcióját, mivel ez a funkció a Databricks-jegyzetfüzeteken kívül más fájlokkal, például .py fájlokkal is .yml használható. Ha a Databricks Runtime 11.2-es (vagy újabb) verzióját használja, ezt a funkciót alapértelmezés szerint engedélyezni kell.

Hitelesítés

Az Azure Databricks számos hitelesítési módszert kínál. A Databricks a hitelesítéshez az alábbi módszerek egyikét javasolja:

  • A részt vett hitelesítési forgatókönyvek, például a manuális munkafolyamatok esetében, ahol a webböngésző használatával jelentkezik be a cél Azure Databricks-munkaterületre (amikor a Databricks parancssori felület kéri), használja az OAuth felhasználó–gép (U2M) hitelesítést. Ez a módszer ideális a Databricks Asset Bundles első lépéseinek kipróbálásához vagy a csomagok gyors fejlesztéséhez.
  • Felügyelet nélküli hitelesítési forgatókönyvek, például teljes mértékben automatizált munkafolyamatok esetén, amelyekben nincs lehetőség arra, hogy webböngészője segítségével jelentkezzen be a cél Azure Databricks-munkaterületre abban az időben, használja az OAuth gépről gépre (M2M) történő hitelesítést. Ez a módszer az Azure Databricks szolgáltatásnevek használatát igényli, és ideális a Databricks Asset Bundles ci/CD-rendszerek, például a GitHub használatához.

OAuth U2M-hitelesítés esetén tegye a következőket:

  1. Az OAuth-jogkivonatok helyi felügyeletének elindításához használja a Databricks parancssori felületét az alábbi parancs futtatásával minden cél-munkaterületen.

    Az alábbi parancsban cserélje le <workspace-url> például az Azure Databricks munkaterületenkénti URL-címéthttps://adb-1234567890123456.7.azuredatabricks.net.

    databricks auth login --host <workspace-url>
    
  2. A Databricks parancssori felülete kéri, hogy mentse az Azure Databricks konfigurációs profiljaként megadott adatokat. Nyomja le Enter a javasolt profilnevet, vagy adja meg egy új vagy meglévő profil nevét. Az azonos nevű meglévő profilokat felülírja a megadott adatokkal. Profilok használatával gyorsan válthat a hitelesítési környezetre több munkaterületen.

    A meglévő profilok listájának lekéréséhez egy külön terminálban vagy parancssorban futtassa a Parancsot databricks auth profilesa Databricks parancssori felületével. Egy adott profil meglévő beállításainak megtekintéséhez futtassa a parancsot databricks auth env --profile <profile-name>.

  3. A webböngészőben végezze el a képernyőn megjelenő utasításokat az Azure Databricks-munkaterületre való bejelentkezéshez.

  4. A profil aktuális OAuth-tokenértékének és a jogkivonat közelgő lejárati időbélyegének megtekintéséhez futtassa az alábbi parancsok egyikét:

    • databricks auth token --host <workspace-url>
    • databricks auth token -p <profile-name>
    • databricks auth token --host <workspace-url> -p <profile-name>

    Ha több azonos értékű profillal rendelkezik--host, előfordulhat, hogy együtt kell megadnia azokat és -p a --host beállításokat, hogy a Databricks parancssori felülete megkeresse a megfelelő OAuth-jogkivonat-információkat.

A konfigurációs profil nevét az alábbi módokon használhatja a csomagok ellenőrzése, üzembe helyezése, futtatása vagy megsemmisítése során:

  • A parancshoz databricks bundle rundatabricks bundle validatedatabricks bundle deployfűzött parancssori beállítással -p <profile-name>, vagy .databricks bundle destroy Lásd a Databricks Asset Bundles fejlesztését.
  • A leképezés értékeként a profile csomagkonfigurációs fájl legfelső szintű workspace leképezése (bár a Databricks azt javasolja, hogy a host leképezés helyett profile az Azure Databricks-munkaterület URL-címét használja, mivel ez hordozhatóbbá teszi a csomagkonfigurációs fájlokat). Tekintse meg a munkaterület leképezésének profile lefedettségét.
  • Ha a konfigurációs profil neve azDEFAULT, akkor a rendszer alapértelmezés szerint akkor használja, ha nincs megadva a parancssori beállítás -p <profile-name> vagy a profile (vagy host) leképezés.

OAuth M2M-hitelesítés esetén tegye a következőket:

  1. Végezze el az OAuth M2M hitelesítési beállítási utasításait. Lásd: Szolgáltatásnév használata az Azure Databricks használatával történő hitelesítéshez.

  2. Telepítse a Databricks parancssori felületet a cél számítási erőforrásra az alábbi módok egyikével:

    • A Databricks parancssori felület valós idejű manuális telepítéséhez lásd a Databricks parancssori felület telepítését vagy frissítését.
    • Ha a GitHub Actions használatával szeretné automatikusan telepíteni a Databricks parancssori felületet egy GitHub-virtuális gépre, tekintse meg a GitHub beállítási parancssori felületét .
    • Ha más CI/CD-rendszerek használatával szeretné automatikusan telepíteni a Databricks PARANCSSOR-t egy virtuális gépre, tekintse meg a CI/CD-rendszerszolgáltató dokumentációját, valamint a Databricks parancssori felület telepítését vagy frissítését.
  3. Állítsa be a következő környezeti változókat a számítási erőforráson az alábbiak szerint:

    • DATABRICKS_HOSTbeállításnál állítsa be például https://adb-1234567890123456.7.azuredatabricks.netaz Azure Databricks munkaterületenkénti URL-címét.
    • DATABRICKS_CLIENT_IDelemet, állítsa be az Azure Databricks szolgáltatásnév alkalmazásazonosítójának értékét.
    • DATABRICKS_CLIENT_SECRET, állítsa be az Azure Databricks szolgáltatásnév OAuth Secret-értékét .

    A környezeti változók beállításához tekintse meg a cél számítási erőforrás operációs rendszerének vagy CI/CD-jének dokumentációját.

Az első Databricks-eszközcsomag fejlesztése

A csomagok fejlesztésének leggyorsabb módja egy sablon használata. Hozza létre az első kötegprojektet a Databricks parancssori bundle init felületének parancsával, lehetőség nélkül. Ez bemutatja a Databricks által biztosított alapértelmezett csomagsablonokat, és kérdések sorozatát kérdezi fel a projektváltozók inicializálásához.

databricks bundle init

A szervezetek egyéni csomagsablonokat is létrehozhatnak saját szabványaik meghatározásához. Ezek a szabványok lehetnek alapértelmezett engedélyek, szolgáltatásnevek és egyéni CI/CD-konfigurációk. Lásd: Databricks Asset Bundle-sablonok.

A projekt inicializálása után a paranccsal ellenőrizze a bundle validate csomagot, mielőtt üzembe helyezené a munkaterületeken.

databricks bundle validate

Általában létrehoz egy csomagot egy helyi fejlesztőgépen egy IDE és a Databricks CLI 0.218.0-s vagy újabb verziójával. Ezek az eszközök lehetővé teszik egy csomag létrehozását, érvényesítését, üzembe helyezését és futtatását. Lásd a Databricks Asset Bundles fejlesztését.

Miután hozzáadta a csomagot a Githez, a Databricks Git mappaintegrációval szerkesztheti a csomagot egy Azure Databricks-munkaterületen. Munkaterületről azonban nem tesztelhet és nem helyezhet üzembe csomagokat. Ehelyett használhatja a helyi IDE-t teszteléshez, a CI/CD-t pedig üzembe helyezéshez.

Következő lépések

Gyakori feladatok

Az alábbi cikkekben a Databricks-eszközcsomagok gyakori feladatait végezheti el.

Cikk Használja ezt a cikket, ha...
A Databricks Asset Bundles fejlesztése Megtudhatja, hogyan hozhat létre, érvényesíthet, telepíthet és futtathat csomagokat egy databricks.yml fájl létrehozásával, valamint a Databricks parancssori felületének használatával a parancsok databricks bundle validatefuttatásához, databricks bundle deployés databricks bundle run.
Databricks-eszközcsomag konfigurációi Hozzon létre egy csomagfájlt databricks.yml és más kapcsolódó csomagkonfigurációs fájlokat, amelyek megfelelnek a csomagkonfigurációk YAML-szintaxisának.
Hitelesítés a Databricks-eszközcsomagokhoz Állítson be egy kötegprojektet az Azure Databricks-hitelesítéshez.
Feladat fejlesztése az Azure Databricksben a Databricks Asset Bundles használatával Hozzon létre, telepítsen és futtasson egy csomagot egy Azure Databricks-feladathoz.
Delta Live Tables-folyamatok fejlesztése Databricks-eszközcsomagokkal Hozzon létre, telepítsen és futtasson egy csomagot egy Delta Live Tables-folyamathoz.
Databricks Asset Bundles for MLOps Stacks Hozzon létre, telepítsen és futtasson egy csomagot egy MLOps Stackhez.
Databricks Asset Bundles-kódtár-függőségek Telepítse azokat a kódtárakat, amelyeket egy csomagnak bármely kapcsolódó Azure Databricks-fürtön futtatnia kell.
Databricks Asset Bundle üzembe helyezési módok Használjon csomagtelepítési módokat, például development production és automatikusan engedélyezze vagy tiltsa le az olyan gyakori üzembehelyezési viselkedéseket, mint a kapcsolódó ütemezések és eseményindítók szüneteltetése vagy törlése.
Databricks Asset Bundle-sablonok Sablonnal gyorsabban, egyszerűbben és egységesebb és megismételhetőbb eredményekkel hozhat létre bizonyos kötegeket.
Erőforrások engedélyeinek beállítása a Databricks-eszközcsomagokban Részletes hozzáférési engedélyszintek alkalmazása adott csomagerőforrások felhasználóira, csoportjaira és szolgáltatásneveire.
Összetevők beállításainak dinamikus definiálása a Databricks-eszközcsomagokban Egyesítheti vagy felülbírálhatja a csomagban lévő összetevők adott beállításait.
CI-/CD-munkafolyamat futtatása a Databricks Asset Bundle és a GitHub Actions használatával Csomag üzembe helyezése vagy futtatása adott GitHub-munkafolyamat-eseményre, például lekéréses kérelemre vagy egyesítésre válaszul.
Fürtbeállítások felülbírálása a Databricks-eszközcsomagokban Egyesítheti vagy felülbírálhatja a kötegben lévő fürtök adott beállításait.
Tevékenységek hozzáadása feladatokhoz a Databricks-eszközcsomagokban Tevékenység hozzáadása egy feladathoz egy csomagban.
Feladatfeladat-beállítások felülbírálása a Databricks-eszközcsomagokban Egyesítheti vagy felülbírálhatja a csomagban lévő feladatfeladatok adott beállításait.
Python-kerekes fájl fejlesztése a Databricks Asset Bundles használatával Python-kerekes fájlokat hozhat létre, helyezhet üzembe és hívhat meg egy csomagban.

További erőforrások