J'ai récemment été chargé d'un nouveau projet de stockage de données analytiques. Je veux donner un coup de feu à ORM; la cartographie ne semble pas difficile mais ce problème m'a vexé.NHibernate Conditional Mapping
Cette base de données stocke des données pour Google Analytics, Quantcast et tout futur fournisseur d'analyse. J'ai reçu à peu près le schéma qui doit être utilisé. Ils veulent que ce soit très général, ce qui est possible jusqu'à ce que je stocke les matrices que nous suivons différents pour chaque fournisseur.
La disposition de table est en tant que telle:
tblClient - Magasins tous les sites clients.
tblProfile - 1 ou plus appartiennent à un client. Stocke les données de profil telles que le fournisseur utilisé par ce profil et le type de profil.
tblProvider - Stocke les données indiquant si un profil est un profil GoogleAnalytics, Quantcast ou un autre profil d'analyse.
tblProfile_Type - Type de piste pour le site client. Nous avons des sites clients répartis en différentes sections. C'est suivi ici.
Le problème vient lorsque j'ai besoin de lier la table de profil à une table metrix. Sur ce schéma, je n'ai que celui de Google mais il y en aura d'autres. J'ai besoin d'un lien basé sur la colonne FK pour Provider_Type dans la table de profil. Est-ce possible?
Donc, vous allez avoir plusieurs tables Metrix, et à laquelle de joindre le profil dépend de l'identifiant du fournisseur? – anonymous
Cela est correct – Wix