本资料由-大学生创业|创业|创业网提供资料在线代理|网页代理|代理网页|减肥药排行榜|淘宝最好的减肥药|什么减肥药效果最好|减肥瘦身药|简介成功的业务智能(BI)应用程序需要可靠的工具来运行。如果开发人员和管理员具备有关如何执行成功实现方面的有关知识基础(也就是最佳实施策略信息),也会有助于创建这些应用程序。Microsoft与其多个合作伙伴通过ProjectREAL为基于Microsoft(R)SQLServer(TM)2005的BI应用程序找到最佳实施策略。在ProjectREAL中,通过创建基于真实客户方案的引用实现来研究最佳实施策略。这意味着客户数据将被带到企业内部,并用于解决这些客户在部署过程中遇到的相同问题。这些问题包括:架构设计-关系架构和AnalysisServices中使用的架构。数据提取、转换和加载(ETL)过程的实现。客户前端系统的设计和部署(用于报告和交互分析)。生产系统大小的调整。系统的持续管理和维护,包括对数据的增量更新。通过使用真实的部署方案,我们能全面了解如何使用这些工具。我们的目标是解决大型公司在进行自身真实部署过程中会遇到的各种问题。本文主要讨论ProjectREAL的SQLServerIntegrationServices(SSIS)提取、转换和加载(ETL)设计。此设计基于Barnes&Noble的ETL体系结构-完全使用SSIS构建并且是SSIS的第一个ETL产品实现。由于此解决方案不是在数据转换服务(DTS)或其他ETL工具基础上的升级设计,因此所采用的许多方法不同于DTS中的典型ETL体系结构。此解决方案的目的是利用SSIS的全新应用程序体系结构,以另外一种角度思考并设计一种ETL过程,使其成为常规的ETL设计最佳实施策略的一个模型。在本白皮书中,我们将说明每一个方案的设计决策和ProjectREALSSIS处理过程的实现细节。有关ProjectREAL的概述,请参阅名为ProjectREAL:技术概述的白皮书。ProjectREAL在存续期间将导致大量论文、工具和示例的产生。要查看最新的信息,请退回到以下站点:是Microsoft和BI领域的众多合作伙伴之间的协作尝试。这些合作伙伴包括:ApolloDataTechnologies、EMC、Intellinet、Panorama、Proclarity、ScalabilityExperts和Unisys。ProjectREAL的业务方案和源数据集由Barnes&Noble友情提供。注意:本白皮书是初稿,其中包含我们根据使用SQLServer2005的早期社区技术预览(CTP)版本的经验推荐的最佳实施策略。本白皮书在发布时是准确的。本文档中的产品功能可能会改变,将来可能会开发出更好的实施策略信息。ProjectREALETL目标本资料由-大学生创业|创业|创业网提供资料在线代理|网页代理|代理网页|减肥药排行榜|淘宝最好的减肥药|什么减肥药效果最好|减肥瘦身药|为了支持报告和分析要求,任何业务智能(BI)系统中都存在ETL处理。需要按此支持功能实现ETL。这没有降低ETL的重要功能,因为要报告的数据将通过ETL处理过程直接进行处理。ETL要考虑该处理过程的计时、性能和准确性等方面;ETL设计的支持、管理、灵活性和可扩展性也非常重要。真实系统通常出现一些影响ETL的未知情况和异常情况。这就要求ETL处理过程能够轻松处理各种变化并为稳定系统的最终目标服务。对于ProjectREAL,这些关键方面使得ETL设计需要实现以下几个主要目标:•ETL管理。为了提供管理支持,实现了可以跟踪和报告ETL元数据的设计。这为用户进行参考和故障排除提供了清晰的处理过程状态,有助于隔离问题和解决问题。•动态配置。开发这项功能是为了在发布和分发核心组件时支持企业系统。包含根据企业和技术要求变化以及大型支持开发团队的相应环境来考虑设计的适应性。•平台集成。这涉及到设计一种与BI解决方案的多个层次进行交互的解决方案。包括安全性、基础结构、关系和OLAP结构、获取数据的报告和分析工具。•性能。鉴于数据仓库中处理和管理的数据量,注意性能问题对于ProjectREAL解决方案来说非常重要。数据总共可高达数TB。内容提要本文主要介绍几种特定的设计原则以及从设计过程获得的一些经验教训,并说明解决方案的整体体系结构。文中提供了详细参考并包含解决方案的一些设计要点。随着新解决方案的成熟和在SQLServer2005平台上的开发,将会发布更详细的、更全面的信息。以后的文章将扩充概念,提供优化的性能设计,并可能演示一些更好的设计示例。本文提供一个可靠的基于SSIS的BIETL引用。在规划和开发ETL的重新设计、升级和新的实现过程中,BI体系结构设计师可以使用该工具。SSIS的功能远不止仅仅处理ETL-它具备系统集成、信息管理和数据转换等众多其他功能。本文只讨论该产品的几个方面,涉及与ETL处理过程有关的几个SSIS核心部分。概述本文中的示例与ProjectREAL实现直接相关。每个示例都是经过挑选的,分别强调SSIS在应用到ETL处理时的特定方面。这些示例演示了前文介绍的一部分目标和以下常见的ETL方案:•SSIS开发环境•本资料由-大学生创业|创业|创业网提供资料在线代理|网页代理|代理网页|减肥药排行榜|淘宝最好的减肥药|什么减肥药效果最好|减肥瘦身药|审核和记录•用于属性和数据源管理的动态配置设计•标准和独特方案的维度处理•维度关联的事实数据表处理和事实数据表更新•数据处理体系结构设计•数据处理优化技术ProjectREALSSIS解决方案中实现了所有这些示例,而且该解决方案已用90天的每日和每周生产数据成功运行。处理的数据包括一部分假日零售高峰时的数据,数据时间跨度达两年,以证明此数据作为一个真实示例的稳定性和可靠性。就像前面提到的那样,Barnes&Noble从2004年11月就已经在生产ProjectREALETL所基于的这个“真实”的SSIS解决方案了。在这些示例和数据包中,许多可以或将可以用来仔细审阅实现的特定方面。将来会在ProjectREAL网站上发布此类信息。另外,将在行业会议上提供这些数据包以演示ProjectREALSSIS设计。数据配置文件尽管此引用项目是以一个零售系统为核心的,ProjectREALETL还是代表了许多业务方案的提取要求。对于ETL处理来说,通常存在一些日常处理要求,每天都需要将对源数据的更改和添加提取并处理到系统中去。而且,每周都运行一组过程来管理维度模型的每周库存快照。数据配置文件包含每日事务提取、维度更新和每周库存事实数据表管理。事实数据表关系模型是一种标准的星型架构设计,具有两类主要的事实数据表:销售和库存。销售事务每天收集,代表所有零售商店的详细产品购买(包括网络订单)。处理的数百万事务需要添加到销售事实数据结构中,多数销售记录来自前一天的销售。另外,有一小部分销售对于系统来说是新的,但却是迟到的历史销售。所有的销售每天都被跟踪,ETL过程设计成允许对整天的数据进行多重处理。跟踪的主要数据围绕各个项目事务的数量和销售量。库存结构设计成一个以周为周期的标准快照事实数据表,库存位置每天更新,但随着每周增量进行历史管理。在商店和分发中心按项目对库存进行跟踪,每周都会产生许多行,需要每天进行很多更改。一个主要的报告目标是了解库存和销售趋势,防止出现脱销的情况。因此,除了标准的“手头”数量,还跟踪“库存本资料由-大学生创业|创业|创业网提供资料在线代理|网页代理|代理网页|减肥药排行榜|淘宝最好的减肥药|什么减肥药效果最好|减肥瘦身药|天数”事实数据,该信息以周为周期说明某项物品在商店或分发中心库存的天数。一周结束时,库存级别被复制并为新一周的开始进行初始化,它是ETL需要进行的密集过程。维度表支持事实数据表的维度具有一些独特的特性,使设计变得有趣,而且突出了SSIS的不同方面。产品维度具有数百万成员,包含标准的更改属性和历史属性,但要求只有在销售后才可以开始进行历史跟踪属性和层次结构更改。本文中讨论了产品维度是如何影响ETL的。除了产品维度外,还涉及到其他几种典型的零售维度。由于源数据的管理方式,所有维度要求如果某个维度成员在事实数据处理过程中丢失,将向该维度添加一个具有相关业务键的占位符记录,直到全部维度源可以进行完整更新。这称为“推断成员”,并且对ETL具有处理影响。少数维度还可以从主事务或库存源表中直接获取,要将其添加到事实数据表中,需要进行特殊处理。整个SSIS过程借助复杂维度说明了该工具的灵活性和扩展性,旨在为基于SQL2005平台构建的许多ETL设计提供好的参考。SSIS开发环境BusinessIntelligence(BI)DevelopmentStudio基于MicrosoftVisualStudio(R)2005(VS)平台构建。虽然与SQLServer2000中企业管理器UI有很多不同的地方,BIDevelopmentStudio的功能是本着让数据库管理员(DBA)、数据体系结构设计师以及开发人员之类的人士容易上手的思想实现的。简化的、关注BI开发人员需求的UI配置文件减缓了VS带来的不良因素。对于ProjectREAL,单一BI解决方案涵盖RecurringETL项目。此项目按增量运行所有的SSIS数据包。图1显示了具有共享数据源和SSIS数据包的解决方案资源管理器。数据包按其功能命名。存在多种类型的数据包;第一种也是最简单的一种是维度数据包。源自其自身源实体的每个维度具有自己的数据包。事实数据表数据包在设计上都类似,只是它们按各自的重复周期(每日或每周)进行命名-每日和每周对应不同的数据包是因为两者之间的业务逻辑是不同的。例如,Fact_Daily_Store_Inventory数据包执行的处理任务与相对应的每周数据包Fact_Weekly_Store_Inventory执行的处理任务不同,即使它们都影响相同的事实数据表。本资料由-大学生创业|创业|创业网提供资料在线代理|网页代理|代理网页|减肥药排行榜|淘宝最好的减肥药|什么减肥药效果最好|减肥瘦身药|对于处理协调,显示了称为加载组数据包的第三种数据包。这些数据包不包含处理业务逻辑,用于处理前面描述的维度和事实数据包的工作流协调以及一些应用程序审核和可重新启动性。图2显示了一个加载组数据包示例。利用“执行数据包”任务执行子维度和事实数据包,使用控制流处理一些处理任务的工作流和并行化。包含有助于过程审核和可重新启动的其他任务,这些将在本文的后面内容中进行更详细的介绍。源代码管理集成本资料由-大学生创业|创业|创业网提供资料在线代理|网页代理|代理网页|减肥药排行榜|淘宝最好的减肥药|什么减肥药效果最好|减肥瘦身药|具有的优点之一是源代码管理集成。为了帮助避免当多个开发人员同时对相同的过程进行处理时出现开发“死锁”,REAL的共享开