2010-05-11 57 views
0

我正在设置一个包含客户信息的数据库。该数据库将处理客户数据(客户ID,地址,电话等)以及关于特定客户所经历的广告类型以及他们如何对其作出反应的一些基本信息。更新来自多个不同来源的数据

数据将从中央数据仓库维护,但有关客户和广告的其他信息也将从其他来源更新。例如,如果外部广告公司运行一个广告系列,我希望他们能够反馈关于OptOut的数据,电子邮件反弹等。我想我需要的是一个可以轻松发送给任何机构的API 。

我的第一个想法是为所有外部来源设置一个Web服务API,但由于我们可能会谈论大量数据(每批数百万条记录),我不确定Web服务是否最好选项。

所以我的问题是,这里最好的做法是什么?我需要一个足够简单的解决方案,让广告公司(可能有适度熟练的IT人员)利用。简单是本质的 - 在这种情况下,我的意思是“简单而不是性能”。如果设置太复杂,它将无法工作。

该系统很可能基于微软技术。

有什么建议吗?

+1

在我们的政府机构,每次我们必须与“未知的未来系统”接口时,我们已经为CSV-over-FTP夜间工作做好了准备......这些工作总是“有效”。 – Konerak 2010-05-11 08:36:08

回答

1

您正在描述的过程通常称为使用ETL过程的数据集成。 ETL代表Extract-Transform-Load。这个想法是通过从许多不同的数据源中提取信息,对其进行转换,然后将其加载到数据仓库中来构建您的中央数据仓库。

存在各种(也是图形)工具来实现这样的过程。既然你说过你可能会运行一个Microsoft堆栈,我建议看一下Sql Server Integration Services(SSIS)。

关于您使用网络服务实现集成的建议,我不认为这是一个好主意。同样,我不认为将数据集成的负担转移给您的客户也是一个好主意。您应该以某种形式的数据交换格式与您的客户达成一致,它可以像CSV文件一样简单,或者XML,Excel表格,Access数据库,使用任何适合您需要的内容。

任何像SSIS这样的现代ETL工具都能够使用这些不同的数据源。

+0

谢谢。我想,让我走上正确的道路。有一些阅读要做。 :) – 2010-05-11 12:05:13