Sobes.tech
Middle

Cos'è una partizione in ClickHouse?

sobes.tech AI

Risposta dell'AI

In ClickHouse, la partizione è una parte logica della tabella utilizzata per organizzare e ottimizzare l'archiviazione dei dati. La partizione consente di suddividere la tabella in segmenti separati secondo una chiave specifica (ad esempio, per data), il che accelera le query che filtrano i dati per questa chiave e facilita la gestione dei dati (ad esempio, eliminare le partizioni vecchie).

Le partizioni in ClickHouse vengono create in base a un'espressione definita al momento della creazione della tabella e generalmente corrispondono a intervalli di valori (ad esempio, mese, giorno). Questo aiuta a leggere e comprimere i dati in modo efficiente, oltre a eseguire operazioni TTL e di pulizia.

Esempio di creazione di una tabella con partizione mensile:

CREATE TABLE esempio (
    data_evento Date,
    id_utente UInt32,
    valore Float32
) ENGINE = MergeTree()
PARTITION BY toYYYYMM(data_evento)
ORDER BY (id_utente);

Qui, la partizione viene creata per ogni mese, consentendo di selezionare rapidamente i dati di un periodo specifico.