Je suis intéressé à jouer avec le modèle EAV via une base de données SQL Server. Est-ce que quelqu'un est capable de me signaler à un article ou à un cadre pour un modèle / schéma existant (je ne suis pas intéressé à SaaS pour cela)? p>
4 Réponses :
meilleures pratiques pour Modélisation de données sémantiques pour ... p>
EAV est notoriumément problématique car elle conduit à de graves problèmes de performance de déploiement et d'évolutivité. Le livre blanc dans le lien, publié par l'équipe consultative du client SQL Server tente d'offrir des indications pour déployer un modèle EAV réussie. P>
Pourquoi ne pas créer une table très simple avec une colonne d'entité, une colonne d'attribute et une colonne de valeur: puis remplir la table à l'aide d'un script d'une sorte pour générer un test données. p> puis essayez d'exécuter des requêtes dessus, de jouer autour, d'apprendre comment cela fonctionne, etc. p> en général cependant, les données ci-dessus Le schéma d'organisation ne fait pas vraiment bien maillé avec la théorie de la base de données relationnelle. Les maillages ci-dessus davantage avec la théorie de la base de données de documents, comme Couch DB . J'irais plus que si vous avez besoin de stocker / gérer des données de EAV Nature à l'état sauvage. P> P>
Si vous avez accès à un système Siebel, le système d'amour fonctionne exactement de la même manière.
Cela serait facile, mais après environ 2 secondes, je poserais un tas de questions, pourquoi je cherchais vraiment un article ou un cadre existant qui aurait déjà répondu à ces questions.
@ Jaimal - Quels types de questions? Votre question indique que vous voulez qu'un exemple de schéma joue dans.
Un système EAV décent aurait des tables de méta-data, donc jouer avec cet exemple simple ne va pas démontrer grandement.
Je ne l'ai pas utilisé, mais il y a un exemple de structure EAV avec des données dans ce projet CodEplex: P>
http://ev.codeplex.com/
"Un exemple de modèle EAV pour SQL Server avec: Tables et index, Intégrité référentielle partielle, dactylographie partielle de données, vues de mise à jour (comme table SQL normale)" P>
fournit des scripts SQL à télécharger, ici . P>
Aussi, ce blog post:
"Guide de Dave sur le EAV"
http://weblogs.sqlteam.com/davidm/articles/12117.aspx p>
... Fonctionne via un exemple EAV dans SQL Server avec des exemples de la manière dont la vérification et la requête de type serait mise en œuvre, avec beaucoup de discussions sur la théorie et pourquoi EAV peut causer des problèmes. P>
Nous avons une solution EAV très avancée et mature sur GitHub - https://github.com/2SIC/ EAV . Il est assez difficile de simplement installer cependant, car il est principalement utilisé comme backend d'un système de gestion de contenu appelé 2SXC (également sur GitHub). p>
Comme il est extrêmement avancé, soutenez de nombreux types de données, types de saisie, masques d'entrée génériques et plus, je pense que vous le trouverez très inspirant. Pour l'essayer, le meilleur moyen est d'installer DNN (une plate-forme Web .NET) et 2SXC (système de gestion de contenu pour DNN). Je pense que vous serez émerveillé de ce qui est possible. p>
Notez que l'UI entière est angularjs basée sur l'industrie angulaire, il s'agit donc d'une configuration très moderne. Vous pouvez également trouver plus de blogs / vidéos sur http://2sxc.org . p>
Pas clair; Voulez-vous un papier expliquant pourquoi il s'agit d'une mauvaise idée à faire en SQL, ou un exemple de schéma pour jouer?
Hmm, peut-être que j'ai mal fait le mot, mais je pensais que je Cleary dit "article ou cadre pour un modèle / schéma existant", pas un schéma de jouer avec
@Jaimal - "Je suis intéressant dans jouer autour de i> avec le modèle EAV" ????
@SheepSimulator - qui n'est pas la même chose que de demander un schéma pour un modèle EAV. C'est une déclaration, pas une question.
@Jaimal - assez juste. Néanmoins, j'essaierais d'éviter d'utiliser un SGBM pour cela.