2010-05-11 9 views
0

Je suis en train de mettre en place une base de données contenant des informations sur les clients. La base de données traitera les données du client (identifiant du client, adresse, numéro de téléphone, etc.) ainsi que des informations de base sur le type de publicité auquel un client a été soumis et sur la façon dont il a réagi.Mise à jour des données provenant de plusieurs sources différentes

Les données seront conservées à partir d'un entrepôt de données central, mais des informations supplémentaires sur les clients et la publicité seront également mises à jour à partir d'autres sources. Par exemple, si une agence de publicité externe lance une campagne, je veux qu'elle soit capable de renvoyer des données sur OptOuts, les e-mails, etc. Je suppose que j'ai besoin d'une API qui peut être facilement transmise à un certain nombre d'agences . Mon premier réflexe était de mettre en place une API de service web pour toutes les sources externes, mais comme nous parlerons probablement de grandes quantités de données (des millions d'enregistrements par lot), je ne suis pas sûr qu'un service web soit le meilleur option. Donc, ma question est la suivante: quelle est la meilleure pratique ici? J'ai besoin d'une solution assez simple pour que les agences de publicité (probablement avec des informaticiens moyennement qualifiés) puissent l'utiliser. La simplicité est essentielle - j'entends par là «simplicité sur performance» dans ce cas. Si la configuration devient trop complexe, cela ne fonctionnera pas.

Le système sera très probablement basé sur la technologie Microsoft.

Des suggestions?

+1

Dans notre agence gouvernementale, chaque fois que nous devons interagir avec des «systèmes inconnus futurs», nous nous préparons déjà pour les jobs nocturnes CSV-over-FTP ... ceux qui fonctionnent toujours. – Konerak

Répondre

1

Le processus que vous décrivez est communément appelé intégration de données à l'aide de processus ETL. ETL signifie Extract-Transform-Load. L'idée est de construire votre entrepôt de données central en extrayant des informations à partir de nombreuses sources de données différentes, de les transformer et de les charger ensuite dans votre entrepôt de données.

Il existe une variété d'outils (également graphiques) pour implémenter un tel processus. Puisque vous avez dit que vous utiliserez probablement une pile Microsoft, je vous suggère de jeter un oeil à SQL Server Integration Services (SSIS).

En ce qui concerne votre suggestion de mettre en œuvre l'intégration en utilisant un service web, je ne pense pas que ce soit une bonne idée aussi. De même, je ne pense pas que transférer la charge de l'intégration des données à vos clients soit une bonne idée non plus. Vous devriez être d'accord avec vos clients sur une forme de format d'échange de données, cela pourrait être aussi simple qu'un fichier CSV, ou XML, des feuilles Excel, des bases de données Access, utilisez ce qui convient à vos besoins.

Tout outil ETL moderne tel que SSIS est capable de fonctionner avec ces différentes sources de données.

+0

Merci. Mettez-moi sur le bon chemin, je suppose. J'ai de la lecture à faire. :) –

Questions connexes