Passer des données relationnelles aux événements
(event-driven.io)Guide pour passer des données relationnelles aux événements
- Dans l'Église de l'event sourcing, les données métier sont préservées sous forme d'événements sans être perdues.
- Les événements représentent des faits qui se sont produits et sont stockés après chaque opération.
- Un flux d'événements est la liste de tous les événements enregistrés ; il est immuable et les erreurs passées peuvent être corrigées en ajoutant de nouveaux événements.
1. Repérer les colonnes d'état
- Les valeurs des colonnes d'état peuvent refléter les étapes du cycle de vie des données.
- Par exemple, une commande peut être initiée, expédiée et payée.
- Ces états peuvent être transformés en événements comme Order Initiated, Order Shipped et Order Paid.
2. Vérifier les colonnes de date
- Les colonnes de date peuvent fournir des informations sur les événements importants d'un processus.
- ShipmentDate, DeliveryDate, OrderPlacementDate, etc. révèlent le vocabulaire métier et peuvent aider à introduire de nouveaux événements.
3. Analyser la sélectivité des colonnes
- Les colonnes nullable peuvent être renseignées plus tard ou rester optionnelles.
- Les colonnes obligatoires doivent être fournies dès le premier événement Order Initiated.
4. Rechercher les tables avec le plus de relations 1 à N
- En event sourcing, les données sont regroupées autour des processus métier pour favoriser un traitement efficace.
- Les tables qui ont de nombreuses relations 1 à N peuvent être de bonnes candidates pour devenir des types de flux.
5. Introduire des événements explicites
- Lors de la migration de données relationnelles vers des événements, les événements nouvellement découverts ne doivent pas être réutilisés pendant l'import ; il faut fournir explicitement un événement Order Imported.
6. Expérimenter et valider
- Il faut essayer un prototype dans un environnement sûr, comparer les résultats aux attentes, avancer sans précipitation et itérer.
L'avis de GN⁺
- Le point le plus important de cet article est l'importance d'une nouvelle approche qui préserve les données métier lors du passage d'une base de données relationnelle à l'event sourcing.
- Cet article est intéressant parce qu'il propose une manière de mieux comprendre et exploiter le cycle de vie des données, en sortant des approches traditionnelles de gestion des données.
- L'event sourcing peut aider non seulement sur le plan technique, mais aussi à construire une compréhension commune entre les équipes métier et techniques.
1 commentaires
Avis Hacker News
Recommandation d’utiliser PostgreSQL et des outils de reporting FOSS
Quand utiliser une architecture orientée événements à bon escient
Retour d’expérience sceptique sur l’event sourcing
Utilité de la modélisation par événements de domaine
Question sur l’implémentation de l’event sourcing
Bottom-up vs top-down, sur mesure vs générique
Soutien et critique de l’architecture orientée événements
Event sourcing et nécessité des relations
Soutien aux données relationnelles
Nouvelle prise de conscience du design orienté événements