J’ai besoin de faire de l’interopérabilité dans une entreprise.
Elle dispose de nombreux outils avec des bases de données, certaines bases de données peuvent être décorrélées, c’est à dire transposées dans un autre système de base de données, il y a aussi divers types de données; Excel, word, un sharepoint, shapefiles, API à intégrer.
Mon idée pour le moment et de centraliser les données structurées dans une bases de données et dans un seul Entrepôt de données, ensuite ça serait de faire que toutes les application tapent directement dans cette base de données centralisée. l’avantage est que toutes les données sont synchronisées en directe.
Puis dans un second temps, créer un DataLake pour les données non structurées.
Mais j’ai un doute, car cela va rendre sens doute cette base de données énorme, et difficile à gérer.
Ne serait-il pas plus simple de laisser les bases de données telles qu’elles et les connecter entre elles?
Mais cette seconde approche m’oblige à utiliser un ETL et un outil d’ordonnancement de job tel que Airflow, et ne permet donc pas d’avoir les données synchronisées.
Si quelqu’un dans le forum à une autre approche ou un avis sur la question, ça serait super.
C’est une excellente question que vous posez ici. En effet, idéalement nous aimerions avoir quelque chose qui s’apparente à votre troisième schéma avec une base de donnée unique, structurée, actualisée et utilisable directement par d’autres outils. Cependant, comme tu le sous-entends, l’obtention d’une telle base de données ne peut pas être faite sans compter un certain coût temporel et financier, pour la création et la maintenance de la base de données.
La réponse à ta question va donc dépendre de l’utilisation que tu souhaites avoir de ces données. Et plus particulièrement la plus value que tu espères pouvoir apporter à ton entreprise. Il faudra je pense comparer cela au coût que j’ai évoqué précédemment pour pouvoir répondre à ta question.
En espérant que ce message t’aidera à résoudre ton problème
Je pense que dans ma vision des choses, j’ai un peu confondu Interopérabilité et Intégration
En fait ce que je cherche à faire actuellement et de permettre la communication des différentes bases de données et application entre elles, j’ai toujours pour cela pensé faire de la centralisation de données, et redistribuer les données à mode batch (airflow), mais j’ai l’impression que ce paradigme et en train d’être supplanter par le data meshing, c’est à dire une dire un sorte de réseau commun de communication ou la data devient un produit .
Pour le moment je ne sais pas trop comment m’y prendre, j’ai l’impression qu’il faille créer des services API et de webhook entre les différents microservices.
Cela permettrait d’avoir plusieurs « domaines » autonomes" et petit au lieu d’un gros sac de nœud difficile à maintenir.
Dans un second temps en effet je ferais sans doute de l’intégration classique pour amener les données dans une Entrepôt ou un datalake afin d’y trouver de la valeur.