Mi az a Databricks Apps?
Fontos
A Databricks Apps nyilvános előzetes verzióban érhető el.
A Databricks Apps segítségével a fejlesztők biztonságos adatokat és AI-alkalmazásokat hozhatnak létre a Databricks platformon, és megoszthatják az alkalmazásokat a felhasználókkal.
Korábban a Databricks-munkaterület által kezelt adatokat használó adat- és AI-alkalmazások létrehozásához és a Databricks-platform adatelemzési funkcióinak létrehozásához külön infrastruktúra szükséges az alkalmazások üzemeltetéséhez, az adatszabályozási vezérlők betartásának biztosításához, az alkalmazások biztonságának kezeléséhez, beleértve a hitelesítést és az engedélyezést stb. A Databricks Apps szolgáltatással a Databricks üzemelteti az alkalmazásokat, így nem kell további infrastruktúrát konfigurálnia vagy üzembe helyeznie.
Az alkalmazások a Databricks platform erőforrásait és funkcióit használhatják, beleértve a Unity Catalog for governancet, a Databricks SQL-t az adatok lekérdezéséhez, az AI-funkciókat, például a modell-kiszolgálót, a Databricks Jobs for ETL-t és a munkaterületen már konfigurált biztonsági szabályokat, beleértve az alkalmazás által használt adatokhoz való hozzáférést szabályozó szabályokat. A hitelesítés és az engedélyezés meglévő Azure Databricks-funkciókat használ, beleértve az OAuth-ot és a szolgáltatásnevek használatát.
A Databricks a Databricks Appst fejlesztőknek tervezte. Alkalmazásait Pythonban fejlesztheti bármilyen keretrendszerrel, például Dash, Streamlit vagy Gradio használatával. Mivel az alkalmazások hordozhatóak, helyileg létrehozhatja és hibakeresésre használhatja őket, üzembe helyezheti őket egy Databricks-munkaterületen, majd áthelyezheti őket egy másik munkaterületre.
Követelmények
Munkaterületre vonatkozó követelmények
Ha alkalmazásokat szeretne üzembe helyezni és futtatni az Azure Databricks-munkaterületen, a munkaterületnek meg kell felelnie a következő követelményeknek:
- Győződjön meg arról, hogy a tűzfal nem blokkolja a tartományt
*.databricksapps.com
. - A Databricks-munkaterületnek támogatott régióban kell lennie. Lásd kiszolgáló nélküli funkciók rendelkezésre állását.
A fejlesztési környezet követelményei
Ha helyileg szeretne alkalmazásokat létrehozni, és üzembe helyezni ezeket az alkalmazásokat az Azure Databricks-munkaterületen, a fejlesztői környezetnek meg kell felelnie a következő követelményeknek:
Python 3.11 vagy újabb.
A Databricks parancssori felülete (Databricks CLI), a 0.229.0-s vagy újabb verzió, amely a Databricks-munkaterület eléréséhez van konfigurálva. A Databricks CLI telepítéséhez vagy frissítéséhez, illetve konfigurálásához lásd: A Databricks CLI telepítése vagy frissítése és Hitelesítés a Databricks CLI-hez.
A Pythonhoz készült Databricks SDK. Az SDK a következővel
pip3
telepíthető:pip3 install databricks-sdk
Lásd: Databricks SDK for Python.
(Nem kötelező) Ha az alkalmazásnak hozzá kell férnie a Databricks SQL-hez, telepítse a Pythonhoz készült Databricks SQL-összekötőt. Az összekötőt a következővel
pip3
telepítheti:pip3 install databricks-sql-connector
Hol fejleszthetek Databricks-alkalmazást?
Bármilyen IDE-ben írhat és tesztelhet alkalmazásokat, amelyek támogatják a Pythont, például a PyCharmot, az IntelliJ IDEA-t vagy a Visual Studio Code-ot. A Databricks a Visual Studio Code és a Visual Studio Code Databricks bővítményének használatával javasolja az alkalmazások fejlesztését, de a Databricks-jegyzetfüzet és a fájlszerkesztő használatával közvetlenül a Databricks-munkaterületen szerkesztheti a kódot.
Hogyan Databricks-alkalmazás fejlesztése és üzembe helyezése?
Egy alkalmazás helyi fejlesztéséhez az alábbiak egy tipikus munkafolyamat:
- Fejlesztheti az alkalmazást az előnyben részesített IDE-ben, például a Visual Studio Code-ban.
- Futtassa az alkalmazást helyileg a parancssorban, és tekintse meg a böngészőben.
- A kód befejezése és tesztelése után helyezze át a kódot és a szükséges összetevőket a Databricks-munkaterületre.
Lásd: A Databricks Apps használatának első lépései.
Ha alkalmazásokat szeretne létrehozni a felhasználói felületen, vagy előre elkészített példát szeretne használni, tekintse meg Hogyan alkalmazás létrehozását a Databricks Apps felhasználói felületén?.
Használhatok Python-keretrendszereket a Databricks-alkalmazásommal?
Az alkalmazást a kedvenc Python-keretrendszerek, például a Dash, a Streamlit vagy a Gradio használatával fejlesztheti. A Databricks Apps felhasználói felületén olyan példákat láthat, amelyek népszerű Python-keretrendszereket használnak. Lásd Hogyan hozzon létre egy alkalmazást a Databricks Apps felhasználói felületén?
Hogyan kezeli a Databricks Apps az engedélyezést?
A Databricks Apps engedélyezési modellje tartalmazza az alkalmazást elérő felhasználót és az alkalmazáshoz hozzárendelt Azure Databricks felügyelt szolgáltatásnevet:
Egy alkalmazás eléréséhez a felhasználónak CAN_USE vagy CAN_MANAGE engedélyekkel kell rendelkeznie az alkalmazáshoz. Ha többet szeretne tudni az engedélyek alkalmazáshoz való hozzárendeléséről, olvassa el a Databricks-alkalmazás engedélyeinek konfigurálása című témakört.
Az alkalmazás létrehozásakor a Databricks Apps automatikusan létrehoz egy Azure Databricks által felügyelt szolgáltatásnevet, és hozzárendeli a szolgáltatásnevet az alkalmazáshoz. Ez a szolgáltatásnév csak az alkalmazás által létrehozott munkaterülethez rendelkezik hozzáféréssel, és a munkaterület erőforrásainak hitelesítésére és engedélyezésére szolgál, például SQL-raktárakhoz, végpontokat kiszolgáló modellhez vagy biztonságos objektumokhoz a Unity Catalogban. Az alkalmazás minden adat- vagy más munkaterület-erőforráshoz való hozzáférése a szolgáltatásnév nevében történik, nem pedig az alkalmazás tulajdonosa vagy felhasználója.
A Databricks Apps automatikusan engedélyezi a szolgáltatásnév-engedélyeket az alkalmazáshoz rendelt összes erőforráshoz, ha az alkalmazást üzembe helyező felhasználó rendelkezik
CAN MANAGE
engedéllyel ezeken az erőforrásokon. Ha a szolgáltatási főazonosítónak más erőforrásokhoz, például táblákhoz vagy munkaterület fájlokhoz kell hozzáférést biztosítani, a fiók vagy a munkaterület rendszergazdája hozzáférést kell adjon ezekhez az erőforrásokhoz. Az erőforrásokhoz való hozzáférés biztosításakor a Databricks azt javasolja, hogy kövesse a minimális jogosultság elvét, és csak a minimálisan szükséges engedélyeket adja meg a szolgáltatásnévnek. Tekintse meg az alkalmazáspéldányok kezelését ismertető cikket.A szolgáltatásnév az Alkalmazás erőforrásai kártyán található alkalmazásadatok oldalán található. A szolgáltatásnév tartalmazza az alkalmazás nevét, például egy névvel ellátott
my-hello-world-app
alkalmazás esetében a szolgáltatásnév neveapp-22ixod my-hello-world-app
.
Ki hozhat létre Databricks-alkalmazásokat?
A munkaterület bármely felhasználója létrehozhat alkalmazásokat. Az alkalmazáshoz rendelt szolgáltatásnév engedélyeinek kezeléséhez azonban fióknak vagy munkaterület-rendszergazdának kell lennie.
Hogyan konfigurálja a Databricks-alkalmazást?
A Databricks Apps automatikusan beállítja az alkalmazás által elérhető környezeti változókat, például azt a Databricks-gazdagépet, amelyen az alkalmazás fut. Egyéni paramétereket YAML-fájllal is beállíthat. Lásd a Databricks Apps konfigurációját.
Hogyan integrálni a Databricks-alkalmazást az Azure Databricks-szolgáltatásokkal?
Az alkalmazások a Databricks platform olyan funkcióit használhatják, mint a Databricks SQL az adatok lekérdezéséhez, a Databricks-feladatok az adatbetöltéshez és -feldolgozáshoz, a Mozaik AI-modell, amely a generatív AI-modellekhez való hozzáférést szolgálja, valamint a Databricks titkos kulcsok a bizalmas információk kezeléséhez. Az alkalmazás konfigurálásakor ezeket a Databricks platformfunkciókat erőforrásoknak nevezzük.
Mivel azonban az alkalmazások hordozhatóak, a Databricks azt javasolja, hogy az alkalmazások ne függjenek adott erőforrásoktól. Az alkalmazást például nem szabad egy adott SQL-raktár használatához szigorúan kódolni. Ehelyett konfigurálja az SQL Warehouse-t a Databricks Apps felhasználói felületén egy alkalmazás létrehozásakor vagy frissítésekor.
Emellett mivel az alkalmazások úgy vannak konfigurálva, hogy a legkevésbé szükséges jogosultságokkal fussanak, nem szabad új erőforrásokat létrehozniuk. Ehelyett a Databricks platformra kell támaszkodniuk a meglévő függő szolgáltatások feloldásához. Minden alkalmazáshoz egy Databricks szolgáltatásnév van hozzárendelve. Az alkalmazás létrehozása vagy frissítése során a service principal megkapja a szükséges engedélyeket a meghatározott erőforrás-függőségekre vonatkozóan.
Ha többet szeretne tudni a Databricks-platformfunkciók alkalmazáserőforrásként való hozzáadásáról, olvassa el a Databricks-platformfunkciók hozzárendelése a Databricks-alkalmazásokhoz című témakört.
Hol találhatók a Databricks-alkalmazások naplózási naplói?
Az alkalmazások naplózási eseményeinek megkereséséhez használja az Azure Databricks rendszertábláit. A rendszertáblák segítségével a következő lekérdezéseket végezheti el:
- Bejelentkezések egy alkalmazásba. Lásd: Mely felhasználók jelentkeztek be egy Databricks-alkalmazásba?.
- Az alkalmazások engedély- vagy megosztási módosításai. Tekintse meg, hogy mely Databricks-alkalmazások lettek frissítve az alkalmazás más felhasználókkal vagy csoportokkal való megosztásának módosításához?
Milyen költségekkel jár a Databricks Apps?
A Databricks Apps díjszabásával kapcsolatos információkért lásd: Compute for Apps.
A Databricks Apps rendszerkörnyezete
Feljegyzés
Ha meg szeretné tekinteni egy adott alkalmazás környezetét, beleértve a környezeti változókat és a telepített csomagokat, lépjen a Környezet lapra az alkalmazás részletek lapján. Lásd : Databricks-alkalmazások részleteinek megtekintése.
Az alábbiakban az alkalmazások által futtatott rendszerkörnyezetet, az alkalmazás számára elérhető erőforrásokat, valamint a telepített alkalmazások és kódtárak verzióit ismertetheti.
- Operációs rendszer: Ubuntu 22.04 LTS
-
Python: 3.11.0. Az alkalmazások Python virtuális környezetben futnak. Ebben a virtuális környezetben minden függőség telepítve van, beleértve az automatikusan telepített kódtárakat és a telepített kódtárakat, például egy
requirements.txt
fájllal. - Rendszererőforrások: Az alkalmazások legfeljebb két virtuális PROCESSZORt (vCPU) és 6 GB memóriát használhatnak. Előfordulhat, hogy az alkalmazás újraindul, ha meghaladja a lefoglalt erőforrásokat.
Telepített Python-kódtárak
Könyvtár | Verzió |
---|---|
databricks-sql-connector | 3.4.0 |
databricks-sdk | 0.33.0 |
mlflow-skinny | 2.16.2 |
gradio | 4.44.0 |
streamlit | 1.38.0 |
Fényes | 1.1.0 |
gondolatjel | 2.18.1 |
lombik | 3.0.3 |
fastapi | 0.115.0 |
uvicorn[standard] | 0.30.6 |
gunicorn | 23.0.0 |
dash-ag-grid | 31.2.0 |
dash-mantine-components | 0.14.4 |
dash-bootstrap-components | 1.6.0 |
ábrázolás | 5.24.1 |
plotly-resampler | 0.10.0 |
Korlátozások
Egy Databricks-munkaterületen legfeljebb 50 alkalmazás érhető el.
Az alkalmazás által használt fájlok mérete nem haladhatja meg a 10 MB-ot. Ha az alkalmazás könyvtárában található fájl túllépi ezt a korlátot, az alkalmazás üzembe helyezése hiba miatt meghiúsul.
A Databricks Apps nem felel meg a HIPAA, PCI vagy FedRAMP megfelelőségi szabványoknak.
Az alkalmazás által létrehozott naplók nem maradnak meg az alkalmazást üzemeltető Azure Databricks-számítás leállásakor. Lásd: Naplózás a Databricks-alkalmazásból.
Mivel nem támogatják az OAuthot, a Databricks Apps nem használhat régi regionális URL-címeket .