我正在使用客户信息设置数据库。数据库将处理客户数据(客户ID,地址,发声等)以及一些特定客户所遭受的广告的基本信息,以及他们对此的反应。
数据将从中央数据仓库维护,但有关客户和广告的其他信息也将从其他来源更新。例如,如果外部广告代理商运营广告系列,我希望他们能够反馈有关OptOut,电子邮件退回等的数据。我想我需要的是一个API,可以很容易地分发给任意数量的代理商。
我的第一个想法是为所有外部源设置一个Web服务API,但由于我们可能会讨论大量数据(每批数百万条记录),我不确定Web服务是否是最佳选择
所以我的问题是,这里的最佳做法是什么?我需要一个简单的解决方案,广告代理商(可能有适度技能的IT人员)可以使用。简单是至关重要的 - 在这种情况下,我的意思是“简单优于绩效”。如果设置过于复杂,则无法正常工作。
该系统很可能基于Microsoft技术。
有什么建议吗?
答案 0 :(得分:1)
您描述的过程通常称为使用ETL过程的数据集成。 ETL代表Extract-Transform-Load。我们的想法是通过从许多不同的数据源中提取信息来构建您的中央数据仓库,对其进行转换然后将其加载到您的数据仓库中。
存在各种(也是图形的)工具来实现这样的过程。既然你说你可能正在运行Microsoft堆栈,我建议你看一下Sql Server Integration Services(SSIS)。
关于使用网络服务实施集成的建议,我认为这也不是一个好主意。同样地,我认为将数据集成的负担转移给客户也不是一个好主意。您应该以某种形式的数据交换格式与您的客户达成一致,它可以像CSV文件一样简单,也可以是XML,Excel工作表,Access数据库,使用适合您需求的任何内容。
任何像SSIS这样的现代ETL工具都能够处理这些不同的数据源。