Sdílet prostřednictvím


Vynucování 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 MERGE operací

Azure Databricks vynucuje při vkládání nebo aktualizaci dat v rámci MERGE operace následující pravidla:

  • Pokud datový typ ve zdrojovém příkazu neodpovídá cílovému sloupci, pokusí se bezpečně přetypovat datové typy sloupců tak, MERGE aby odpovídaly cílové tabulce.
  • Sloupce, které jsou cílem akce UPDATE , INSERT musí existovat v cílové tabulce.
  • Při použití INSERT * nebo UPDATE SET * syntaxi:
    • 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 ALTER TABLE příkazů nebo automatického vývoje schématu. Viz aktualizace schématu tabulky Delta Lake.

Vývoj schématu má speciální sémantiku pro MERGE operace. Viz Automatický vývoj schématu pro sloučení Delta Lake.