Retour aux formations
IA & Data
Trino et Apache Iceberg : déploiement, administration et optimisation d'un Lakehouse
3 jour(s) • 21h
Description
À l'issue de la formation, le stagiaire sera capable de comprendre l'architecture d'une plateforme Lakehouse fondée sur Trino et Apache Iceberg, de déployer ses composants, d'assurer son administration et sa maintenance courantes, de diagnostiquer les incidents et d'optimiser les performances. La formation est organisée autour de trois axes : comprendre (architecture et concepts), administrer (déploiement, sécurité et maintenance), optimiser (performances, observabilité et diagnostic). Un fil rouge pratique permet de manipuler une plateforme Trino/Iceberg représentative d'un environnement de production.
Objectifs pédagogiques
- Situer Trino et Iceberg dans une architecture Lakehouse et comprendre leurs rôles respectifs
- Comprendre les formats de stockage orientés colonnes et la distinction format de table / format de fichier
- Maîtriser l'architecture de Trino : connecteurs, catalogues, exécution distribuée, lecture des plans
- Maîtriser l'architecture d'Iceberg : métadonnées, snapshots, évolution de schéma, transactions, maintenance
- Déployer, sécuriser et administrer une plateforme Trino/Iceberg
- Diagnostiquer les incidents et optimiser les requêtes, l'organisation des données et la mémoire
Public concerné
Développeurs Java avec responsabilités DevOps, Profils en charge de la maintenance et de l'évolution d'une plateforme de données Trino/Iceberg, Exploitants amenés à administrer, diagnostiquer et optimiser un Lakehouse existant. Cette formation s'adresse à des profils qui travaillent déjà sur une application reposant sur Trino et Iceberg. Elle vise la montée en compétence sur l'exploitation : comprendre l'architecture existante, déployer les composants, assurer l'administration quotidienne, diagnostiquer les incidents et optimiser les performances. Elle ne vise pas à former des spécialistes du Big Data.
Prérequis
Maîtrise du langage SQL, Expérience du développement Java et de pratiques DevOps, Familiarité avec les conteneurs (Docker) et notions de stockage objet, Travailler ou être amené à travailler sur une plateforme intégrant Trino et Iceberg
Déroulé du programme
1
Jour 1 — Comprendre : architecture Lakehouse, stockage et Trino
2
Introduction au Data Lakehouse (cadrage rapide)
3
• Positionnement de Trino et Iceberg dans une plateforme décisionnelle moderne
4
• Architecture découplée stockage / compute / métadonnées
5
• Rappel cadrant des apports du Lakehouse (sans reprise des fondamentaux, public déjà au contact de la techno)
6
Les formats de stockage
7
• Principes des formats orientés colonnes : Parquet, Avro, ORC
8
• Distinction format de fichier (Parquet/ORC/Avro) et format de table (Iceberg)
9
• Organisation des données et impact sur les performances de lecture
10
Apache Trino : architecture et exécution
11
• Architecture : coordinateur, workers, modèle d'exécution distribuée
12
• Connecteurs et catalogues : principe et configuration
13
• Rôle de Trino vis-à-vis d'Iceberg : Trino interroge et manipule des tables Iceberg via connecteur et catalogue, il ne les stocke pas
14
• Travaux pratiques (fil rouge, étape 1) : prise en main de la plateforme, exploration de l'architecture Trino
15
SQL avec Trino
16
• SQL utilisateur : fonctions, jointures, agrégations, CTE, fonctions de fenêtrage, types complexes
17
• SQL d'exploitation : EXPLAIN, EXPLAIN ANALYZE, lecture des plans distribués, stages et tasks
18
• Bonnes pratiques d'écriture des requêtes
19
• Travaux pratiques (fil rouge, étape 2) : exécution de requêtes analytiques sur plusieurs sources, lecture d'un plan d'exécution
20
Jour 2 — Comprendre et administrer : Iceberg, déploiement, sécurité
21
Apache Iceberg : architecture et fonctionnement
22
• Architecture Iceberg : couches de métadonnées, manifestes, snapshots
23
• Distinction fichiers de données / fichiers de métadonnées / catalogue / moteur de calcul
24
• Évolution de schéma et transactions ACID
25
• Compatibilité multi-moteurs : ce que Trino sait faire avec Iceberg, ce qui relève plutôt de Spark/Flink
26
• Travaux pratiques (fil rouge, étape 3) : création et manipulation de tables Iceberg, gestion de l'évolution de schéma
27
Catalogues Iceberg
28
• Rôle du catalogue dans la découverte et la gouvernance des tables
29
• Panorama des options : Hive Metastore, AWS Glue, REST Catalog, Nessie, JDBC
30
• Choix du catalogue JDBC adossé à PostgreSQL comme support pédagogique simple et local ; transposabilité aux autres catalogues en production
31
• Travaux pratiques (fil rouge, étape 4) : configuration d'un catalogue Iceberg JDBC/PostgreSQL
32
Déploiement et administration
33
• Déploiement pédagogique avec Docker Compose : composants, dépendances, configuration; principes transposables à un déploiement industrialisé, sans couvrir l'administration Kubernetes
34
• Administration mémoire de Trino : mémoire JVM, mémoire utilisateur, mémoire système ; max heap size, query.max-memory-per-node ; spill-to-disk ; lien entre requêtes, jointures, cardinalité et consommation mémoire ; symptômes (OOM JVM, requête tuée, worker instable)
35
• Travaux pratiques (fil rouge, étape 5) : déploiement de la plateforme et configuration mémoire de Trino
36
Sécurité et accès
37
• Authentification Trino
38
• Autorisations : accès aux catalogues, schémas et tables
39
• Séparation des rôles administrateur / utilisateur / compte de service
40
• Accès au stockage objet et points d'attention en environnement multi-sources
41
Jour 3 — Optimiser : maintenance, performances, observabilité et diagnostic
42
Maintenance des tables Iceberg
43
• Compaction et réécriture des fichiers de données
44
• Expiration des snapshots et suppression des fichiers orphelins
45
• Réécriture des manifestes et contrôle de la croissance des métadonnées
46
• Impact des petits fichiers sur les temps de planification et de requête
47
• Travaux pratiques (fil rouge, étape 6) : opérations de maintenance sur une table Iceberg
48
Optimisation des performances
49
• Optimisation des requêtes Trino : pruning, prédicats, lecture des plans
50
• Module CBO (Cost-Based Optimizer) : principes, estimation des coûts et des cardinalités, réordonnancement des
51
jointures et choix de leur distribution
52
• Statistiques utilisées par le CBO : consultation avec SHOW STATS, collecte et mise à jour avec ANALYZE,
53
conséquences de statistiques absentes ou obsolètes.
54
• Organisation des données Iceberg : partitionnement, tri, impact sur les performances
55
• Réglages des composants
56
• Travaux pratiques (fil rouge, étape 7) : optimisation de requêtes et réorganisation d'une table lourde
57
Observabilité
58
• Logs Trino et interface d'administration Trino
59
• Métriques utiles et corrélation ressources (CPU, mémoire, I/O) / requêtes / catalogue
60
• Mention des outils d'instrumentation : JMX, Prometheus, Grafana (survol, sans module dédié)
61
Diagnostic d'exploitation Trino/Iceberg
62
• Cas concrets : requête lente, requête tuée pour dépassement mémoire, worker indisponible, erreurs de connecteur/catalogue, problème d'accès au stockage objet, croissance excessive des métadonnées, trop nombreux petits fichiers, snapshots non expirés, fichiers orphelins, partitionnement inefficace, incompatibilité après modification de schéma, erreurs d'authentification
63
• Corrélation entre symptômes, configuration et ressources
64
• Travaux pratiques (fil rouge, étape 8) : résolution de cas concrets d'exploitation
65
Synthèse et interconnexion Spark
66
• Lecture et écriture des tables Iceberg par plusieurs moteurs
67
• Articulation Trino (requêtage analytique) et Spark (traitements batch/ETL)
68
• Importance du catalogue partagé, compatibilité de versions, précautions sur les opérations concurrentes
69
• Bonnes pratiques d'exploitation d'une plateforme Trino/Iceberg
Informations
Durée
3 jour(s)
21h
Tarif
Sur demande
Formations similaires
IA & Data
Migration vers le Cloud
2 jour(s)
Sur demande
IA & Data
Agents IA — Concevoir des systèmes autonomes avec LangChain et LangGraph - Avancé
3 jour(s)
Sur demande
IA & Data
AI Act européen — Comprendre vos obligations et vous mettre en conformité - Niveau débutant
1 jour(s)
Sur demande
IA & Data
Analyse bayésienne (4-107)
3 jour(s)
Sur demande