Typy tabulek katalogu Databricks Unity

Katalog Unity podporuje tři primární typy tabulek: spravované, externí a cizí tabulky. Každý typ se liší v tom, jak se data ukládají, spravují a řídí.

Spravované tabulky

Spravované tabulky jsou výchozím a doporučeným typem tabulky. Katalog Unity spravuje životní cyklus dat, umístění úložiště a optimalizace. Když odstraníte spravovanou tabulku, odstraní se metadata i podkladové datové soubory.

Spravované tabulky jsou podporovány službou Delta Lake nebo Apache Iceberg a poskytují:

  • Automatická optimalizace pro snížené náklady na úložiště a výpočetní prostředky
  • Rychlejší výkon dotazů napříč všemi typy klientů
  • Automatická údržba tabulek
  • Zabezpečený přístup pro klienty mimo Databricks prostřednictvím otevřených rozhraní API
  • Automatické upgrady na nejnovější funkce platformy

Datové soubory jsou uloženy ve schématu nebo katalogu obsahujícím tabulku. Viz tabulky spravované službou Unity Catalog pro Delta Lake a Apache Iceberg.

Externí tabulky

Externí tabulky odkazují na data uložená v cloudovém úložišti objektů, které spravujete. Katalog Unity řídí přístup k datům, ale nespravuje životní cyklus dat, optimalizace ani rozložení úložiště. Když externí tabulku odstraníte, odeberou se pouze metadata katalogu a podkladové datové soubory zůstanou.

Externí tabulky Katalogu Unity podporují formáty Delta Lake, CSV, JSON, AVRO, PARQUET, ORC a TEXT. Databricks doporučuje použít formát Delta Lake, protože má transakční záruky a optimalizace výkonu, které ostatní formáty nemají.

Externí tabulky použijte, když potřebujete:

  • Registrace existujících dat, která nejsou kompatibilní se spravovanými tabulkami katalogu Unity
  • Poskytnutí přímého přístupu k datům od klientů, kteří nejsou klienti Databricks, kteří nepodporují jiné vzory externího přístupu

Viz Práce s externími tabulkami.

Cizí tabulky

Cizí tabulky (označované také jako federované tabulky) jsou tabulky jen pro čtení spravované cizím katalogem zaregistrovaným v katalogu Unity. Externí systémy spravují data a metadata, zatímco Katalog Unity přidává zásady správného řízení dat pro dotazování.

Azure Databricks podporuje dvě metody registrace cizích tabulek:

  • Federace dotazů: Používá zabezpečená připojení JDBC k externím datovým systémům, jako jsou PostgreSQL a MySQL.
  • Federace katalogu: Připojení externích katalogů k dotazování dat přímo v úložišti souborů

Cizí tabulky používající formát Delta Lake nemají mnoho optimalizací dostupných ve spravovaných tabulkách katalogu Unity. V případě produkčních úloh nebo často dotazovaných datových sad migrujte do spravovaných tabulek Služby Unity, abyste mohli dosáhnout lepšího výkonu. Viz Práce s cizími tabulkami.

Porovnání typů tabulek

Následující tabulka porovnává tři typy tabulek:

Feature Spravované tabulky Externí tabulky Cizí tabulky
Správa životního cyklu dat Unity Catalog spravuje Spravujete Externí systém spravuje
Umístění úložiště Unity Catalog spravuje Zadáte Externí systém spravuje
Automatické optimalizace Yes Omezené Ne
Podporované formáty Delta Lake, Apache Iceberg Delta Lake (doporučeno), CSV, JSON, AVRO, PARQUET, ORC, TEXT Závisí na externím systému.
Data odstraněná dne DROP TABLE Yes Ne Ne
Nejvhodnější pro Produkční úlohy, často dotazovaná data Starší integrace, existující data Migrace z externích systémů, dočasný přístup

Další typy tabulek

Azure Databricks také podporuje specializované typy tabulek pro konkrétní případy použití:

  • Streamované tabulky: Datové sady kanálů Lakeflow zálohované službou Delta Lake s logikou přírůstkového zpracování
  • Materializovaná zobrazení: Datové sady kanálů Lakeflow zálohované službou Delta Lake, které materializují výsledky dotazů pomocí logiky spravovaného toku

Původní typy tabulek

Následující starší typy tabulek jsou podporovány pro zpětnou kompatibilitu, ale nedoporučuje se pro nový vývoj.

Tabulky Hive

Tabulky Hive se spravují starší verzí metastoru Hive a používají starší vzory, včetně kodeků Hive SerDe a syntaxe Hive SQL. Ve výchozím nastavení tabulky zaregistrované pomocí starší verze metastoru Hive ukládají data ve starším kořenovém adresáři DBFS.

Databricks doporučuje migrovat všechny tabulky ze starší verze HMS do katalogu Unity. Viz Databázové objekty ve starší verzi Hive metastore.

Volitelně můžete federovat metastore Hive do katalogu Unity a přistupovat k tabulkám jako cizím tabulkám v katalogu Unity. Podívejte se na federaci metastoru Hive: umožněte službě Unity Catalog řídit tabulky registrované v metastoru Hive.

Apache Spark podporuje registraci a dotazování tabulek Hive, ale kodeky Hive SerDe nejsou optimalizované pro Azure Databricks. Registrace tabulek Hive pouze v případě, že potřebujete podporovat dotazy na data zapsaná externími systémy. Viz tabulka Hive (starší verze).

Živé tabulky

Termínživé tabulky odkazuje na dřívější implementaci funkcionality, která je nyní k dispozici jako materializovaná zobrazení. Aktualizujte starší kód, který odkazuje na živé tabulky, aby používaly syntaxi materializovaného zobrazení. Viz Spark Declarative Pipelines a materializovaná zobrazení.