Sdílet prostřednictvím


Použití ALTER příkazů s datovými sadami pipeline

Důležité

Tato funkce je ve verzi Public Preview.

Deklarativní kanály Sparku Lakeflow (SDP) definují kanály ve zdrojovém kódu, které jsou specifické pro SDP. Zdroj kanálu můžete upravit v SQL nebo Pythonu, například v Editoru kanálů Lakeflow.

Azure Databricks také poskytuje prostředí SQL s názvem Databricks SQL. Pomocí funkcí kanálu mimo SDP můžete vytvářet materializovaná zobrazení a streamované tabulky pomocí Databricks SQL (viz Použití kanálů v Databricks SQL). Databricks SQL se obvykle nepoužívá s deklarativními kanály Sparku Lakeflow.

Příkazy SQL v Databricks SQL ale můžete použít ALTER k úpravě vlastností datové sady vytvořené pomocí SDP nebo Databricks SQL. Tyto příkazy SQL můžete použít z libovolného prostředí SQL Databricks, ať už upravujete datové sady SDP, nebo datové sady kanálů SQL Databricks.

Poznámka:

Nelze upravit plán nebo trigger datové sady definované v SDP pomocí příkazu ALTER.

Omezení: Aktualizace potrubí a změny provedené pomocí ALTER

Existují případy, kdy ALTER příkazy kolidují s definicí datových sad vytvořených kanálem. SQL, který definuje tabulku nebo zobrazení v rámci datového toku, se znovu spustí při každé aktualizaci. To může vrátit zpět změny, které provedete pomocí ALTER příkazu.

Pokud máte například příkaz SQL, který definuje materializované zobrazení, například následující:

CREATE OR REPLACE MATERIALIZED VIEW masked_view (
    id int,
    name string,
    region string,
    ssn string MASK catalog.schema.ssn_mask_fn
  )
  WITH ROW FILTER catalog.schema.us_filter_fn ON (region)
  AS SELECT id, name, region, ssn
       FROM employees;

Pak se pokusíte masku ze ssn sloupce odebrat pomocí ALTER příkazu, například takto:

ALTER MATERIALIZED VIEW masked_view ALTER COLUMN ssn DROP MASK;

Maska se odebere, ale při příští aktualizaci materializovaného zobrazení ji definice SQL znovu přidá.

Pokud chcete masku bezpečně odebrat, musíte upravit definici SQL, aby se maska odebrala, a pak spusťte příkaz ALTER k DROP masky.

Poznámka:

Pokud chcete upravit definici kanálu definovaného v protokolu SDP, upravte zdroj kanálu pomocí editoru kanálů. Pokud chcete upravit definici kanálu definovaného v Databricks SQL, spusťte upravený příkaz SQL v libovolném prostředí Databricks SQL.

Dodatečné zdroje