Schémas d’analyse avancée des données

Introduction à Databricks SQL

Kevin Barlow

Data Manager

Motivation

Diagramme Lakehouse - Analyse

Introduction à Databricks SQL

Sous‑requêtes

  • Réalisé via « imbriquer » des requêtes SQL
    • Une requête imbriquée est vue comme une nouvelle « table »
    • Équivalent à créer une vue
  • Utile pour divers cas d’usage
    • Récupérer les résultats d’une autre requête
    • Simplifier des requêtes complexes
    • Agréger au sein d’une requête
SELECT store, totalRev, product
FROM (
    SELECT count(*) as count,
          sum(revenue) as totalRev,
          min(price) as minPrice,
          max(units) as maxUnits,
          region,
          store,
          product
      FROM sales 
      GROUP BY region, store, product
) q
Introduction à Databricks SQL

Fonctions fenêtrées

  • Catégorie de fonctions et techniques SQL
  • Calcule sur un ensemble précis de lignes
    • Lignes liées entre elles
  • Exemples :
    • Calcul d’un indicateur sur une période
    • Calcul de la variation entre lignes successives
    • Calcul sur plusieurs dimensions
SELECT name,
       dept,
       RANK() OVER 
           (PARTITION BY dept 
         ORDER BY salary) AS rank
  FROM employees;
name dept salary rank
Lisa Sales 10000 1
Alex Sales 30000 2
Fred Engineering 21000 1
Tom Engineering 23000 2
Introduction à Databricks SQL

Fonctions SQL avancées dans Databricks

RANK()

  • Compare les lignes dans une partition et calcule le rang de chaque ligne
SELECT a,
       b,
       RANK() OVER(PARTITION BY a ORDER BY b DESC),
    FROM table_name;
a b rank
A1 3 1
A1 1 3
A1 2 2
A2 1 1

LAG() et LEAD()

  • Renvoie la valeur précédente (LAG()) ou suivante (LEAD()) d’une ligne
SELECT a,
       b,
       LAG(b) OVER (PARTITION BY a ORDER BY b)
    FROM table_name;
a b lag
A1 3 NULL
A1 1 3
A1 2 1
A2 1 NULL
Introduction à Databricks SQL

Passons à la pratique !

Introduction à Databricks SQL

Preparing Video For Download...