Lakehouse : vue d'ensemble¶
Six modèles du catalogue forment ensemble un lakehouse sur les buckets S3 de la plateforme : un catalogue de tables Apache Iceberg (implémenté par Apache Polaris), le moteur SQL distribué Trino, des notebooks JupyterHub, un serveur Spark Connect, un serveur de tracking MLflow et Apache NiFi pour l'ingestion. Le catalogue se déploie en premier, le reste dans l'ordre voulu, dans le même namespace.

flowchart LR
B[(Bucket S3<br/>warehouse)]
P[Apache Iceberg<br/>catalogue Polaris]
T[Trino]
J[JupyterHub]
S[Spark Connect]
M[MLflow]
N[Apache NiFi]
T -- métadonnées --> P
J -- métadonnées --> P
P -- fichiers metadata --> B
T -- données Parquet --> B
J -- données --> B
J -- Spark Connect --> S
S -- métadonnées --> P
S -- données --> B
J -- runs --> M
M -- artefacts --> B
N -- ingestion --> B
Applications¶
- Apache Iceberg (catalogue Polaris) — catalogue de tables Iceberg REST (Apache Polaris), à déployer en premier
- Trino — moteur SQL distribué
- JupyterHub — notebooks JupyterLab par utilisateur
- Spark Connect — serveur Spark partagé pour les notebooks et clients PySpark
- MLflow — tracking d'expériences et registre de modèles
- Apache NiFi — ingestion de données
- Jobs Spark batch (Spark Operator) — traitements Spark batch et planifiés (page Jobs Spark)