Vynucení schématu
Azure Databricks ověřuje kvalitu dat vynucením schématu při zápisu.
Poznámka
Tento článek popisuje výchozí chování tabulek v Azure Databricks, které jsou založeny na Delta Lake. Vynucení schématu se nevztahuje na tabulky zálohované externími daty.
Vynucení schématu pro operace vložení
Azure Databricks při vkládání dat do tabulky vynucuje následující pravidla:
- Všechny vložené sloupce musí existovat v cílové tabulce.
- Všechny datové typy sloupců musí odpovídat datovým typům sloupců v cílové tabulce.
Poznámka
Azure Databricks se pokouší bezpečně přetypovat datové typy sloupců tak, aby odpovídaly cílové tabulce.
Ověřování schématu během operací MERGE
Azure Databricks vynucuje při vkládání nebo aktualizaci dat v rámci operace MERGE
následující pravidla:
- Pokud datový typ ve zdrojovém příkazu neodpovídá cílovému sloupci,
MERGE
se pokusí bezpečně přetypovat datové typy sloupců tak, aby odpovídaly cílové tabulce. - Sloupce, které jsou cílem
UPDATE
neboINSERT
akce, musí existovat v cílové tabulce. - Při použití syntaxe
INSERT *
neboUPDATE SET *
:- Sloupce ve zdrojové datové sadě, které nejsou v cílové tabulce, se ignorují.
- Zdrojová datová sada musí obsahovat všechny sloupce v cílové tabulce.
Úprava schématu tabulky
Schéma tabulky můžete aktualizovat pomocí explicitních příkazů ALTER TABLE
nebo automatického vývoje schématu. Viz Aktualizace schématu tabulky Delta Lake.
Vývoj schématu má speciální sémantiku pro operace MERGE
. Viz Automatický vývoj schématu pro slučování Delta Lake.