Real-Time Market AnalyticsClickHouse Workshops

02 Créer la table

Un CREATE TABLE pour 26,5 millions de ticks de change, et pourquoi base et quote ouvrent la clé de tri — une décision dont vous constaterez l'effet au module 04.

Commencez par créer une table vide pour stocker les ticks de change. Ouvrez SQL Console, collez l'instruction ci-dessous et exécutez-la.

-- 26.5M forex ticks (12 pairs incl. gold, Jan 2020); base+quote+time lead the sort key
CREATE TABLE forex
(
    datetime DateTime64(3, 'UTC'),    -- millisecond quote timestamp
    bid      Float64,
    ask      Float64,
    base     LowCardinality(String),  -- e.g. 'EUR', 'XAU' (gold)
    quote    LowCardinality(String),  -- e.g. 'USD', 'JPY'
    pair     String  ALIAS concat(base, '/', quote),   -- handy label, computed on read
    spread   Float64 ALIAS ask - bid,                  -- bid/ask spread
    mid      Float64 ALIAS (bid + ask) / 2             -- mid price
)
ENGINE = MergeTree
ORDER BY (base, quote, datetime);

Pourquoi cette structure ? base et quote ouvrent le ORDER BY, c'est-à-dire la clé de tri de la table. Ainsi, lorsque vous filtrez sur une paire de devises et une période, ClickHouse peut ignorer presque toutes les données. Vous mesurerez précisément l'importance de ce choix dans la dernière requête du module 04.

Résultat attendu

Ok. — la table est créée et vide. Vous allez maintenant la remplir.

Suivre votre progression ?

Facultatif. Nous envoyons un lien par e-mail pour confirmer votre adresse ; la progression est enregistrée après son ouverture.

Utilisez votre adresse e-mail professionnelle, et non une adresse personnelle.

Le suivi de la progression exige aussi d’accepter les Conditions d’utilisation actuelles dans les Paramètres de confidentialité.

FR