clausola CLUSTER BY
(TABLE)
Si applica a:Solo Databricks SQL
Databricks Runtime 13.3 LTS e versioni successive
a Delta Lake
Definisce un clustering di tipo liquido e multidimensionale per una tabella Delta Lake.
È possibile usare questa clausola quando:
- Creare una tabella usando CREATE TABLE.
- Modificare una tabella con ALTER TABLE per cambiare le colonne di raggruppamento. Per raggruppare le righe con colonne di clustering modificate, è necessario eseguire OPTIMIZE. Si noti che le righe raggruppate dalle colonne di clustering precedenti non sono interessate.
- Creare una vista usando CREATE MATERIALIZED VIEW.
- Creare una tabella di streaming usando CREATE STREAMING TABLE.
Le righe aggiornate non vengono ri-raggruppate automaticamente. Esegui OPTIMIZE per ri-clusterizzare le righe aggiornate.
Per ulteriori informazioni sul clustering liquido, vedere Usa clustering liquido per delle tabelle Delta
Sintassi
CLUSTER BY { ( column_name [, ...] ) |
NONE }
Parametri
-
Specifica le colonne della tabella in base alla quale raggruppare i dati. L'ordine delle colonne non è importante. Per trarre vantaggio dalla modifica del clustering, è necessario eseguire OPTIMIZE.
NONE
Disattiva il clustering per la tabella da modificare. I dati appena inseriti o aggiornati non verranno raggruppati da OPTIMIZE. Per non usare il clustering durante la creazione di una tabella, omettere la clausola
CLUSTER BY
.
Esempi
Per altri esempi, vedere Uso del clustering liquido per le tabelle Delta.
-- 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;