2010-05-11 2 views
0

Я собираюсь создать базу данных с информацией о клиентах. База данных будет обрабатывать данные клиента (идентификатор клиента, адрес, phonenr и т. Д.), А также некоторую базовую информацию о том, какая реклама рекламируется конкретным клиентом, и как они реагировали на нее.Обновление данных из нескольких разных источников

Данные будут храниться как с центрального хранилища данных, но и дополнительная информация о клиентах и ​​рекламе также будет обновляться из других источников. Например, если внешнее рекламное агентство запускает кампанию, я хочу, чтобы они могли передавать данные о OptOuts, отсканированных сообщениях электронной почты и т. Д. Я предполагаю, что мне нужен API, который можно легко передать любому числу агентств ,

Моя первая мысль заключалась в том, чтобы настроить API веб-службы для всех внешних источников, но поскольку мы, вероятно, будем говорить с большими объемами данных (миллионы записей на каждую партию), я не уверен, что веб-сервис является лучшим вариант.

Так что мой вопрос в том, что здесь лучше всего? Мне нужно достаточно простое решение для рекламных агентств (вероятно, с умеренно квалифицированными ИТ-людьми). Простота - это сущность, под которой я подразумеваю «простоту по производительности» в этом случае. Если настройка становится слишком сложной, она не будет работать.

Система, скорее всего, будет основана на технологии Microsoft.

Любые предложения?

+1

В нашем правительственном учреждении, каждый раз, когда нам приходится взаимодействовать с «неизвестными будущими системами», мы уже готовимся к ночным работам CSV-over-FTP ... они всегда «работают». – Konerak

ответ

1

Процесс, который вы описываете, обычно называется интеграцией данных с использованием процессов ETL. ETL означает Extract-Transform-Load. Идея состоит в том, чтобы создать свой центральный хранилище данных, извлекая информацию из множества разных источников данных, преобразовывая ее и затем загружая в свой хранилище данных.

Существует множество (также графических) инструментов для реализации такого процесса. Поскольку вы сказали, что, вероятно, будете работать с стеком Microsoft, я предлагаю взглянуть на Sql Server Integration Services (SSIS).

Что касается вашего предложения по внедрению интеграции с помощью веб-сервиса, я не думаю, что это тоже хорошая идея. Сходным образом, я не думаю, что перенос бремени интеграции данных с вашими клиентами также является хорошей идеей. Вы должны согласиться с вашими клиентами в какой-то форме формата обмена данными, это может быть так же просто, как файл CSV, или XML, листы Excel, базы данных Access, использовать все, что вам подходит.

Любой современный инструмент ETL, такой как SSIS, способен работать с этими различными источниками данных.

+0

Спасибо. Наверное, поставьте меня на правильный путь. Получил некоторое чтение. :) –

Смежные вопросы