Delen via


CLUSTER BY clausule (TABLE)

Van toepassing op:vinkje als ja aanAlleen Databricks SQL vinkje als ja aan Databricks Runtime 13.3 LTS en hoger vinkje als ja aan

Definieert vloeibare, multidimensionale clustering voor een relatie.

Azure Databricks raadt aan automatische liquid clustering en predictive optimization te gebruiken voor alle beheerde Unity Catalog-tabellen. Deze functies bieden intelligente optimalisatie van de gegevensindeling op basis van uw gegevensgebruikspatronen.

U kunt deze component gebruiken wanneer u:

  • Een tabel maken met CREATE TABLE.
  • Wijzig een tabel met ALTER TABLE om de clusterkolommen te wijzigen. Als u rijen wilt clusteren met gewijzigde clusterkolommen, moet u OPTIMIZEuitvoeren. Houd er rekening mee dat rijen die zijn geclusterd door eerdere clusterkolommen, niet worden beïnvloed.
  • Maak een gerealiseerde weergave met behulp van CREATE MATERIALIZED VIEW.
  • Een streamingtabel maken met behulp van CREATE STREAMING TABLE.

Bijgewerkte rijen worden niet automatisch opnieuw geclusterd. Voer OPTIMIZE uit om bijgewerkte rijen opnieuw te clusteren..

Zie Liquid Clustering gebruiken voor tabellen voor meer informatie over liquide clustering

Syntaxis

CLUSTER BY { ( column_name [, ...] ) |
             AUTO |
             NONE }

Parameterwaarden

  • column_name

    Hiermee geeft u kolommen op van de relatie waarmee de gegevens moeten worden geclusterd. De kolomvolgorde maakt niet uit. Als u wilt profiteren van het wijzigen van clustering, moet u OPTIMIZEuitvoeren.

  • AUTO

    Van toepassing op:aangevinkt ja Databricks SQL aangevinkt ja Databricks Runtime 15.4 en hoger

    Hiermee kan Delta Lake automatisch bepalen welke kolommen het beste gegroepeerd kunnen worden en zich hier na verloop van tijd aan aanpassen. Zie Liquid Clustering gebruiken voor tabellen voor meer informatie over liquid clustering.

  • NONE

    Hiermee schakelt u clustering uit voor de relatie die wordt gewijzigd. Nieuw ingevoegde of bijgewerkte gegevens worden niet geclusterd door OPTIMIZE. Als u clustering niet wilt gebruiken bij het maken van een relatie, laat u de CLUSTER BY component weg.

Voorbeelden

Meer voorbeelden vindt u in Liquid Clustering gebruiken voor tabellen.

-- Create a table with a clustering column
> CREATE TABLE t(a int, b string) CLUSTER BY (a);

-- The clustering of an existing Delta table to add a second dimension
> ALTER TABLE t CLUSTER BY (a, b);

-- Recluster the table
> OPTIMIZE t;

-- Remove the clustering
> ALTER TABLE t CLUSTER BY NONE;