dbt — Transformation des données
nhic_dbt est la couche de transformation des données de la plateforme analytique du HIC. Elle prend les données brutes ingérées depuis 10 systèmes sources d’information sanitaire et les transforme en un entrepôt de données structuré, utilisé par Apache Superset et le frontend BI GreenRiver.
Toute la logique de transformation se trouve dans apps/analytics/nhic_dbt/ au sein du monorepo Healthcare.MOH.RWA.HIC et s’exécute sur dbt-core + dbt-postgres.
Architecture en quatre couches
Les données traversent quatre couches distinctes, chacune avec une responsabilité unique :
| Couche | Préfixe de schéma | Matérialisation | Rôle |
|---|---|---|---|
| Staging | staging | table | Ingestion des données sources brutes ; nettoyage léger uniquement |
| Intermediate | intermediate | table | Logique métier, jointures, déduplication, SCD |
| DWH | dwh | table | Dimensions et faits conformés — le cœur analytique |
| Reporting | reporting | view | Couche tampon optimisée pour les outils BI |
Dix systèmes sources
La couche staging ingère les données de 10 systèmes d’information sanitaire de l’infrastructure nationale de santé du Rwanda :
HMIS TrackerSuivi des programmes de santé au niveau des établissements via DHIS2.
eFICHEDossiers cliniques ambulatoires.
CRVSÉtat civil et statistiques vitales.
EBUZIMASystème de santé maternelle.
HPEMRDossiers médicaux électroniques des postes de santé.
IDSR / DHIS2Surveillance intégrée des maladies et riposte.
ImmunizationRegistre national de vaccination.
MOH RHMISSystème d’information de gestion sanitaire de routine.
CEMRDossiers médicaux électroniques centraux.
SeedsDonnées de référence et de correspondance statiques chargées via les seeds dbt.
Pour aller plus loin
Bien démarrerConfigurez votre environnement de développement local et exécutez dbt sur une instance Postgres locale.Modèles de donnéesPlongée dans l’architecture en quatre couches et chaque source de staging.MacrosLa bibliothèque complète de macros de nettoyage et d’utilitaires, avec des exemples d’utilisation.Seeds et données de référenceTables de référence CSV statiques et quand utiliser les seeds plutôt que les modèles de staging.TestsTests de schéma, tests génériques personnalisés et barrière de tests en CI.CI/CDLe pipeline GitHub Actions, la construction des images ECR et les exécutions de production via Prefect.
Dernière mise à jour le