Udostępnij przez


Wymuszanie schematu

Usługa Azure Databricks weryfikuje jakość danych, wymuszając schemat zapisu.

Notatka

W tym artykule opisano domyślne zachowanie tabel w usłudze Azure Databricks, które są obsługiwane przez usługę Delta Lake. Wymuszanie schematu nie ma zastosowania do tabel wspieranych przez dane zewnętrzne.

Egzekwowanie schematu przy operacjach wstawiania

Usługa Azure Databricks wymusza następujące reguły podczas wstawiania danych do tabeli:

  • Wszystkie wstawione kolumny muszą istnieć w tabeli docelowej.
  • Wszystkie typy danych kolumn muszą być zgodne z typami danych kolumn w tabeli docelowej.

Notatka

Usługa Azure Databricks próbuje bezpiecznie rzutować typy danych w kolumnach, aby dopasować je do tabeli docelowej.

Sprawdzanie poprawności schematu podczas operacji MERGE

Usługa Azure Databricks wymusza następujące reguły podczas wstawiania lub aktualizowania danych w ramach operacji MERGE:

  • Jeśli typ danych w instrukcji źródłowej nie jest zgodny z kolumną docelową, MERGE próbuje bezpiecznie rzutować typy danych kolumn w celu dopasowania ich do tabeli docelowej.
  • Kolumny, które są celem akcji UPDATE lub INSERT, muszą istnieć w tabeli docelowej.
  • W przypadku używania składni INSERT * lub UPDATE SET *:
    • Kolumny w źródłowym zestawie danych, które nie znajdują się w tabeli docelowej, są ignorowane.
    • Źródłowy zestaw danych musi zawierać wszystkie kolumny obecne w tabeli docelowej.

Modyfikowanie schematu tabeli

Schemat tabeli można zaktualizować przy użyciu jawnych instrukcji ALTER TABLE lub automatycznej ewolucji schematu. Zobacz Update Delta Lake table schema.

Ewolucja schematu ma specjalną semantykę dla operacji MERGE. Zobacz Automatyczna ewolucja schematu dla scalania w Delta Lake.