Normaliser des données relationnelles

Introduction à la modélisation des données dans Snowflake

Nuno Rocha

Director of Engineering

Comprendre les données non normalisées

  • Données non normalisées (UNF) : données sans structure claire, désorganisées, avec répétitions et/ou anomalies

Entité Tous les produits

Introduction à la modélisation des données dans Snowflake

Comprendre les données non normalisées

Anomalies dans l'entité Tous les produits

Introduction à la modélisation des données dans Snowflake

Comprendre les données non normalisées

Anomalie « Banana » mise en évidence

Introduction à la modélisation des données dans Snowflake

Comprendre les données non normalisées (3)

Anomalie fabricant mise en évidence

Introduction à la modélisation des données dans Snowflake

Comprendre les données non normalisées (4)

Anomalie dans la description détaillée mise en évidence

Introduction à la modélisation des données dans Snowflake

Comprendre les données non normalisées (5)

Anomalie produits mise en évidence

Introduction à la modélisation des données dans Snowflake

Problèmes des données non normalisées

  • Redondance des données : répétition inutile d'informations
  • Anomalies de données : irrégularités ou incohérences dans les données

Anomalies dans l'entité Tous les produits

Introduction à la modélisation des données dans Snowflake

Identifier des données non normalisées

SELECT manufacturer_id, 
       manufacturer_name, 
       location, 
       COUNT(*) AS repetitions
FROM allproducts
GROUP BY manufacturer_id, 
    manufacturer_name, 
    location
HAVING COUNT(*) > 1;

Liste des fabricants avec le nombre de répétitions de produits

Introduction à la modélisation des données dans Snowflake

Identifier des données non normalisées

SELECT DISTINCT category 
FROM allproducts;

Liste des catégories

Introduction à la modélisation des données dans Snowflake

Identifier des données non normalisées

SELECT DISTINCT product_name,
    category
FROM allproducts
WHERE category = 'L';

Liste des produits de catégorie L

Introduction à la modélisation des données dans Snowflake

Identifier des données non normalisées

SELECT DISTINCT product_name,
    category
FROM allproducts
WHERE category = 'L';

Liste de tous les produits contenant L

Introduction à la modélisation des données dans Snowflake

Données normalisées

  • Données normalisées : données organisées en entités distinctes et atomiques
  • Avantages :
    • Améliore l'exactitude et la fiabilité
    • Accélère les requêtes
    • Utilisation optimisée des ressources
    • Scalabilité
Introduction à la modélisation des données dans Snowflake

Aperçu : terminologie et fonctions

  • Données non normalisées (UNF) : données sans structure, désorganisées, ou avec répétitions/anomalies
  • Données normalisées : données organisées en entités distinctes et atomiques
  • SELECT FROM : clause SQL pour extraire des données d'une entité
  • DISTINCT : renvoie des valeurs uniques pour un attribut
  • COUNT : compte les lignes correspondant aux critères
  • GROUP BY : regroupe les lignes par attributs identiques
  • HAVING : filtre les groupes définis par GROUP BY selon une condition
  • WHERE : filtre les enregistrements selon une condition
  • AS : renomme une colonne ou une table avec un alias
Introduction à la modélisation des données dans Snowflake

Aperçu des fonctions

-- Rechercher des valeurs uniques avec un filtre spécifique
SELECT DISTINCT column_name
FROM table_name
WHERE column_name  condition  value;
-- Compter les valeurs agrégées par une colonne en filtrant les résultats
SELECT column_name, 
    COUNT(*) AS alias_name
FROM table_name
GROUP BY column_name
HAVING COUNT(*)  condition  value;
Introduction à la modélisation des données dans Snowflake

Passons à la pratique !

Introduction à la modélisation des données dans Snowflake

Preparing Video For Download...