Co je Databricks Apps?
Důležité
Aplikace Databricks jsou ve verzi Public Preview.
Databricks Apps umožňuje vývojářům vytvářet zabezpečená data a aplikace umělé inteligence na platformě Databricks a sdílet tyto aplikace s uživateli.
Dříve se vytváření dat a aplikací umělé inteligence, které používají data spravovaná pracovním prostorem Databricks, a funkce analýzy dat platformy Databricks vyžadovaly nasazení samostatné infrastruktury pro hostování aplikací, zajištění dodržování zásad správného řízení dat, správu zabezpečení aplikací, včetně ověřování a autorizace atd. Databricks Apps hostuje vaše aplikace, takže nemusíte konfigurovat ani nasazovat další infrastrukturu.
Vaše aplikace můžou používat prostředky a funkce platformy Databricks, včetně katalogu Unity pro zásady správného řízení, Databricks SQL k dotazování na data, funkce AI, jako je například obsluha modelu, úlohy Databricks pro ETL a už nakonfigurovaná pravidla zabezpečení v pracovním prostoru, včetně pravidel, která řídí přístup k datům používaným vaší aplikací. Ověřování a autorizace používají existující funkce Azure Databricks, včetně OAuth a instančních objektů.
Databricks navrhla Databricks Apps pro vývojáře. Aplikace vyvíjíte v Pythonu pomocí libovolné architektury, jako je Dash, Streamlit nebo Gradio. Vzhledem k tomu, že jsou vaše aplikace přenosné, můžete je vytvořit a ladit místně, nasadit je do pracovního prostoru Databricks a pak je přesunout do jiného pracovního prostoru.
Požadavky
Požadavky na pracovní prostor
Pokud chcete nasadit a spouštět aplikace v pracovním prostoru Azure Databricks, musí pracovní prostor splňovat následující požadavky:
- Je nutné zajistit, aby brána firewall neblokovala doménu
*.databricksapps.com
. - Váš pracovní prostor Databricks musí být v podporované oblasti. Viz dostupnost funkcí bez serveru.
Požadavky vývojového prostředí
Pokud chcete vytvářet aplikace místně a nasazovat tyto aplikace do pracovního prostoru Azure Databricks, musí vývojové prostředí splňovat následující požadavky:
Python 3.11 nebo novější
Rozhraní příkazového řádku Databricks (Databricks CLI), verze v0.229.0 nebo vyšší, nakonfigurované pro přístup k pracovnímu prostoru Databricks. Informace o instalaci nebo aktualizaci a konfiguraci rozhraní příkazového řádku Databricks najdete v tématu Instalace nebo aktualizace rozhraní příkazového řádku Databricks a ověřování pro rozhraní příkazového řádku Databricks.
Sada Databricks SDK pro Python Sadu SDK můžete nainstalovat pomocí
pip3
:pip3 install databricks-sdk
Viz Databricks SDK pro Python.
(Volitelné) Pokud vaše aplikace potřebuje přístup k Databricks SQL, nainstalujte konektor Sql Databricks pro Python. Konektor můžete nainstalovat pomocí
pip3
:pip3 install databricks-sql-connector
Kde vytvořím aplikaci Databricks?
Aplikace můžete psát a testovat v libovolném integrovaném vývojovém prostředí, které podporují Python, jako je PyCharm, IntelliJ IDEA nebo Visual Studio Code. Databricks doporučuje vyvíjet aplikace pomocí editoru Visual Studio Code a rozšíření Databricks pro Visual Studio Code, ale k úpravě kódu přímo v pracovním prostoru Databricks můžete použít také poznámkový blok Databricks a editor souborů.
Návody vyvíjet a nasazovat aplikaci Databricks?
Pro místní vývoj aplikace je typickým pracovním postupem:
- Vyvíjejte aplikaci v preferovaném integrovaném vývojovém prostředí , jako je Visual Studio Code.
- Spusťte aplikaci místně na příkazovém řádku a zobrazte ji v prohlížeči.
- Po dokončení a otestování kódu přesuňte kód a požadované artefakty do pracovního prostoru Databricks.
Viz Začínáme s Aplikacemi Databricks.
Pokud chcete vytvořit aplikaci v uživatelském rozhraní nebo pomocí předem vytvořeného příkladu, podívejte se, Návody vytvoření aplikace v uživatelském rozhraní Databricks Apps?.
Můžu v aplikaci Databricks používat architektury Pythonu?
Aplikaci můžete vyvíjet pomocí oblíbených architektur Pythonu, jako jsou Dash, Streamlit nebo Gradio. V uživatelském rozhraní Databricks Apps můžete vidět příklady, které používají oblíbené architektury Pythonu. Podívejte se na Návody vytvoření aplikace v uživatelském rozhraní Databricks Apps?.
Jak databricks Apps spravuje autorizaci?
Model autorizace Databricks Apps zahrnuje uživatele, který přistupuje k aplikaci, a instanční objekt spravovaný službou Azure Databricks přiřazený k aplikaci:
Pokud chcete získat přístup k aplikaci, musí mít uživatel oprávnění k aplikaci CAN_USE nebo CAN_MANAGE. Další informace o přiřazování oprávnění k aplikaci najdete v tématu Konfigurace oprávnění pro aplikaci Databricks.
Když se aplikace vytvoří, databricks Apps automaticky vytvoří instanční objekt spravovaný službou Azure Databricks a tento instanční objekt přiřadí aplikaci. Tento instanční objekt má přístup jenom k pracovnímu prostoru, ve který je aplikace vytvořená, a slouží k ověřování a autorizaci přístupu k prostředkům v pracovním prostoru, jako jsou sql warehouses, model obsluhující koncové body nebo zabezpečitelné objekty v katalogu Unity. Veškerý přístup aplikace k datům nebo jiným prostředkům pracovního prostoru se provádí jménem instančního objektu, nikoli vlastníka nebo uživatele aplikace.
Aplikace Databricks automaticky udělí instančnímu objektu oprávnění všem prostředkům přiřazeným k aplikaci, pokud má uživatel, který aplikaci
CAN MANAGE
nasazuje, oprávnění k těmto prostředkům. Pokud se vyžaduje přístup instančního objektu k jiným prostředkům, například k tabulkám nebo souborům pracovního prostoru, musí správce účtu nebo pracovního prostoru udělit instančnímu objektu přístup k těmto prostředkům. Při udělování přístupu k prostředkům databricks doporučuje postupovat podle principu nejnižších oprávnění a udělit instančnímu objektu jenom minimální požadovaná oprávnění. Viz Správa instančních objektů.Název instančního objektu najdete na stránce podrobností aplikace na kartě Prostředky aplikace. Instanční objekt obsahuje název aplikace, například pro aplikaci s názvem
my-hello-world-app
, název instančního objektu jeapp-22ixod my-hello-world-app
.
Kdo může vytvářet aplikace Databricks?
Aplikace může vytvářet každý uživatel v pracovním prostoru. Pokud ale chcete spravovat oprávnění instančního objektu přiřazeného k aplikaci, musíte být správcem účtu nebo pracovního prostoru.
Návody nakonfigurovat aplikaci Databricks?
Databricks Apps automaticky nastaví několik proměnných prostředí, ke kterým má vaše aplikace přístup, například k hostiteli Databricks, na kterém je vaše aplikace spuštěná. Vlastní parametry můžete také nastavit pomocí souboru YAML. Viz konfigurace Aplikace Databricks.
Návody integraci aplikace Databricks se službami Azure Databricks?
Vaše aplikace můžou používat funkce platformy Databricks, jako je Databricks SQL, k dotazování na data, úlohy Databricks pro příjem a zpracování dat, zpracování modelu Mosaic AI, které slouží pro přístup k generativním modelům AI, a tajné kódy Databricks ke správě citlivých informací. Při konfiguraci aplikace se tyto funkce platformy Databricks označují jako prostředky.
Vzhledem k tomu, že jsou aplikace navržené tak, aby byly přenosné, databricks doporučuje, aby aplikace nezávisely na konkrétních prostředcích. Aplikace by například neměla být pevně zakódovaná tak, aby používala konkrétní SQL Warehouse. Místo toho nakonfigurujte SQL Warehouse v uživatelském rozhraní Databricks Apps při vytváření nebo aktualizaci aplikace.
Vzhledem k tomu, že jsou aplikace nakonfigurované tak, aby běžely s nejnižšími požadovanými oprávněními, neměly by vytvářet nové prostředky. Místo toho musí při řešení stávajících závislých služeb spoléhat na platformu Databricks. Každá aplikace má přiřazený instanční objekt Databricks. Během vytváření nebo aktualizace aplikace se instančnímu objektu udělí požadovaná oprávnění k definovaným závislostem prostředků.
Další informace o přidávání funkcí platformy Databricks jako prostředků aplikace najdete v tématu Přiřazení funkcí platformy Databricks k aplikaci Databricks.
Kde najdu protokoly auditu pro své aplikace Databricks?
K vyhledání událostí auditu pro aplikace použijte systémové tabulky Azure Databricks. Systémové tabulky můžete použít k dotazování:
- Přihlásí se k aplikaci. Podívejte se, kteří uživatelé se přihlásili k aplikaci Databricks?
- Oprávnění nebo sdílení změn v aplikacích Podívejte se, které aplikace Databricks byly aktualizovány, abyste změnili způsob sdílení aplikace s jinými uživateli nebo skupinami?
Jaké jsou náklady na Databricks Apps?
Informace o cenách pro Databricks Apps najdete v tématu Compute for Apps.
Systémové prostředí Databricks Apps
Poznámka:
Pokud chcete zobrazit prostředí pro konkrétní aplikaci, včetně proměnných prostředí a nainstalovaných balíčků, přejděte na kartu Prostředí na stránce podrobností aplikace. Viz Zobrazení podrobností o aplikaci Databricks.
Následující část popisuje systémové prostředí, ve kterých vaše aplikace běží, prostředky dostupné pro vaši aplikaci a verze nainstalovaných aplikací a knihoven.
- Operační systém: Ubuntu 22.04 LTS
- Python: 3.11.0. Vaše aplikace běží ve virtuálním prostředí Pythonu. V tomto virtuálním prostředí se nainstalují všechny závislosti, včetně automaticky nainstalovaných knihoven a všech knihoven, které instalujete, například se souborem
requirements.txt
. - Systémové prostředky: Vaše aplikace můžou používat až dva virtuální procesory (vCPU) a 6 GB paměti. Pokud překročí přidělené prostředky, může se vaše aplikace restartovat.
Nainstalované knihovny Pythonu
Knihovna | Verze |
---|---|
Databricks-sql-Connector | 3.4.0 |
Databricks-sdk | 0.33.0 |
mlflow-hubená | 2.16.2 |
gradio | 4.44.0 |
streamlit | 1.38.0 |
lesklý | 1.1.0 |
dash | 2.18.1 |
baňka | 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 |
plotly | 5.24.1 |
převzorkování plotly | 0.10.0 |
Omezení
V pracovním prostoru Databricks je limit 10 aplikací.
Soubory používané aplikací nesmí překročit velikost 10 MB. Pokud soubor v adresáři vaší aplikace tento limit překročí, nasazení aplikace selže s chybou.
Databricks Apps nesplňuje standardy dodržování předpisů HIPAA, PCI nebo FedRAMP.
Protokoly vytvořené aplikací se při ukončení výpočetních prostředků Azure Databricks hostující aplikaci nezachovají. Viz Protokolování z aplikace Databricks.
Protože nepodporují OAuth, nemůžete ve službě Databricks Apps používat starší místní adresy URL .