我正在开始一个分析项目,该项目将从几个不同的来源获取数据并将它们相互比较。来源可以是任何API,例如谷歌分析API,也可以是本地托管的数据库。
我应该构建一个单独的数据库来定期导入这些数据吗?
有人可以提出一些最佳做法,模式或文章吗?我真的不知道从哪里开始,所以任何信息都会很棒!谢谢!
我将使用SQL Server 2008 R2,C#4.0。
答案 0 :(得分:4)
这是一个重大的问题,迈克 - 很多人的整个职业生涯都只做数据仓库。
我会对您的第一个问题给出合格的“是” - DWH的主要吸引力之一是您可以将多个数据源合并为单一信息源。 (资格证明可能存在您不想这样做的情况 - 例如,出于安全或性能原因。)
与以往一样,Wikipedia是有关此主题信息的合理第一站。由于您的问题已标记为data-warehouse,因此StackOverflow是另一个可能的来源。
关于这个主题的规范书籍可能是:
请注意,Inmon和Kimball方法完全不同--Inmon专注于自上而下的规范化关系方法来构建企业DWH,而Kimball的方法更加自下而上,基于维度,基于功能数据集市。
DWH工具包专注于构建DWH的技术方面,而DWH 生命周期工具包同样基于组织挑战和技术细节。
祝你好运!答案 1 :(得分:3)
我将从SSIS开始,这是SQL Server附带的数据集成技术。它可以处理您需要的许多数据源。如果您使用Googles等API来获取数据,则可能需要先将其放入临时表中。
从一个临时数据库开始,您将使用该数据库作为主要来源,将数据加载到Analysis Services中,看看它是如何工作的。使用SSIS填充该临时数据库。
答案 2 :(得分:0)
您需要采取以下步骤: 1.首先,您需要选择SSIS,Informatica或其他ETL工具等ETL平台。 2.然后,您需要选择适当的数据库,如Oracle或SQL服务器等。 3.此后,您需要进行逻辑数据仓库建模(Star或Snowflake)和 4.最后,您需要开发整个数据仓库。
我建议制作两个数据库,即 1.消耗臭氧层物质,用于储存来自不同来源的数据,用于清洁和清洁 2.仓库数据库,用于存储所有相关数据。