Je construis une base de données principale pour stocker toutes les informations pertinentes sur nos clients. J'utilise Neo4j.Gestion des données de base à l'aide de la base de données graphique
Voici un échantillon de notre modèle. Nous avons Person
, qui peut être enregistré dans 3 de nos applications mobiles. (App.01
, App. 02
, App. 03
- Nous utilisons la clé CPF, c'est comme un SSN). Dans ces applications, l'utilisateur peut être enregistré avec un email. Donc, il est représenté par Email
entité. Ces utilisateurs peuvent avoir plusieurs adresses représentées par l'entité Address
.
La question est: Comme je suis la construction d'un Master Data, l'OMI, si quelqu'un interroge la base de données de mdm demander toutes les informations « meilleur » d'une personne, je reviendrais par exemple: Nom: John meilleur email: mail2 (parce qu'il a deux applications qui l'utilisent) d'adresse Best: addr1 (car il a des applications de remorquage à l'aide de celui-ci)
Je vais construire une heuristis pour définir ce qui est l'e-mail « meilleur » et adresse.
A cet effet, j'ai quelques options:
je pourrais créer un bord
John
-email2
etaddr1
. Donc, il sera facile pour un utilisateur de MDM d'obtenir la "meilleure" adresse/email de John.Je pourrais créer un point de terminaison d'API de repos et créer cette heuristique dans le temps de la requête.
Est-ce que quelqu'un a de l'expérience en utilisant la base de données de graphes ou la base de données MDM de conception? Est-ce une bonne approche?
Cette question est un complément de la question: Using Neo4j to build a Master Data Management
Si vous avez le contrôle des applications, alors pourquoi avoir différentes adresses e-mail? –