软件项目标书(共30页).doc
《软件项目标书(共30页).doc》由会员分享,可在线阅读,更多相关《软件项目标书(共30页).doc(30页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上中国外汇交易中心数据仓库一期项目建议第二册 技术部分安讯软件(上海)有限公司xxxx年xx月xx日专心-专注-专业目录第二册 技术部分1 项目目标CFETS希望通过数据仓库系统的建设,可以有效地整合各市场业务数据,统一对信息进行利用和管理,对外提供统一的数据视图和综合决策分析支撑环境,为CFETS各部门所需的报表应用、统计分析及信息挖掘提供基础支持平台。具体建设目标如下:(1)技术目标 建立数据仓库基础架构 建立自动数据抽取转换加载(ETL)机制 建立多维分析和数据查询工具和界面已经分析报表生成和展示框架(2)业务目标 实现一期经营分析的多维分析、查询和报表,提供CF
2、ETS各部门所需报表 提供下游系统所需要的统计数据 提供中心内部用户以Ad-Hoc方式查询所需数据 将业务系统的历史和增量数据加载进入数据仓库,并转换为数据仓库的存储格式 实现用户访问的门户界面并建立相应的访问安全和权限机制 进行老系统统计报表的移植工作,保证数据仓库系统中的报表统计结果与原报表统计结果的一致性基于上述需求,安讯软件(上海)有限公司提出如下技术解决方案来实现本项目的技术目标和业务目标。2 技术解决方案2.1 系统总体架构2.1.1 逻辑架构总体逻辑架构如下:2.1.1.1 功能层面(上侧面)根据CFETS对应的功能需求,对应的功能层面上需要建立如下功能: 数据的ETL 数据存储
3、 固定统计报表 统一用户界面及Portal认证管理2.1.1.2 非功能层面(右侧面) 易用性 响应性 可靠性 扩展性 安全性2.1.2 设计层面2.1.2.1 ETL数据抽取通过成熟的ETL工具,实现从不同的数据源中抽取出所需要的信息,同时通过数据的加工和格式化,对外提供给其他系统使用。2.1.2.2 报表设计当形成好统一的数据仓库后,基于该仓库模型,可进行对应的报表设计和管理,技术人员设计好基本的报表后,可提供给业务人员使用。2.1.2.3 报表展现技术人员设计好报表模板后,通过发布到对应的服务器据,实现对报表的展现。2.1.2.4 报表应用业务人员通过终端界面,可以使用由开发人员开发和设
4、计的报表,同时,业务人员也能同报表进行交互,检索出自己需要的数据。2.1.3 物理架构对于本,外币不同的数据源,以及不同的物理子系统,基本的物理架构如下:物理架构说明:A. 本外币数据库向仓库提供对应的数据B. 仓库为对应的报表服务器提供统一的视图。C. 权限报表服务器部署到同一机器上。2.1.4 数据架构数据流说明:A. 首先从本外币或者其他系统获得对应的数据.B. 经过ETL对数据进行加工,清洗和标准化。C. 将已经标准化和模型化的数据进入到数据仓库,或者提供需要的数据文件。D. 数据仓库对外暴露数据模型和数据视图以及sql接口。E. 数据仓库为报表管理系统和下游系统提供所需要的数据F.
5、报表管理系统展现对应数据的报表。2.2 系统技术实现方案2.2.1 总体技术实现方案充分考虑到CFETS系统存在在本外币等多种数据源,且数据源分散,多分散子系统的情况,同时各个子系统中存在统计口径不一致,影响统一的决策和各个部门信息的一致性。在使用的过程中,会员信息维护复杂,且各个系统各自维护一套对应的会员信息,导致会员维护工作量加大。数据仓库一期需求大致可以分成数据库架构的建立、ETL机制的建立、以及报表分析架构的建立和报表实施。系统可以分成数据仓库和报表系统两大部分。以下是我们建议的系统架构概念图:系统包含一个双机组成的数据仓库,和一个双机组成的报表服务平台。数据仓库和报表服务器分别带有自
6、己的外存磁盘阵列。架构中的每个功能节点设计都含冗余度,保证系统不存在单一失败点,满足提供7x24不间断服务的要求。在系统架构不变的前提下,系统的每部分可以用不同的技术实现。比如,数据库管理系统可以使用Oracle的技术,也可以使用IBM的技术。报表技术建议使用Actuate 9。使用我们建议的应用软件,这样的系统架构会有很强的可扩展性,用户可以通过增加硬件的方式扩容,以支持越来越多的用户和应用。总体方案通过以下步骤实现数据到可用信息的转换:1. 通过ETL手段对不同的数据源数据进行抽取,转换,清洗,数据格式化。2. 通过ETL转化后的数据统一进入数据仓库,形成统一的数据视图。3. 进入数据仓库
7、的数据模型可以为报表平台提供对应的数据来源。4. 通过认证的用户可以登陆报表平台消费和设计对应的报表。2.2.2 高效的ETL处理2.2.2.1 ETL总体处理流程ETL处理流程:1. 从本币数据源或其他数据源中抽取需要的数据。2. ETL对抽取到的数据进行必要的增量处理,生成一天的增量数据。3. ETL对增量数据进行技术性检核、标准化、转换。4. 产生LDM落地数据文件。5. 落地数据文件下发到下游系统,同时进行数据入库。6. 整个ETL处理过程进行异常处理及监控。ETL实施我们建议采用成熟的ETL工具,所选ETL工具需要满足如下基本要求:(1)技术架构1)支持所有的主流平台2)模块化的架构
8、设计,可按需进行模块添加和扩展3)具有错误恢复逻辑的功能4)支持并行处理(2) 核心功能1)支持本地数据访问模式2)支持星型模式3)支持打包应用(例如SAP)4)支持基本处理(例如SQL)5)具有数据自动转换和清洗功能6)支持实时ETL和按需ETL7)具有自动错误预警功能(3) 开发环境1)图形化界面2)支持命令行3)便于调试和维护4)具有代码版本控制功能(4) ETL管理1)支持集中管理2)自动产生每日ETL运行报表3)具有ETL自动和手工调度功能我们相信商业ETL工具中INFORMATICA会是一个很好的选择,开源ETL产品Kettle则是INFORMATICA之外一个很好的备选。2.2.
9、2.2 数据仓库模型设计数据建模 建模过程:(以常用会计报表为例)1. 用户需要查看基于时间、机构和科目的报表。2. 建立以数据事实表为中心,需要时间、机构和度量作为其维度。3. 建立好如上的星型模型后,可发现模型具有如下优点。4. 灵活的数据查询,可基于时间查询对应的日报,月报和季报。5. 效率最优化,需要查询机构信息,则通过机构和事实表关联即可完成。2.2.3 数据质量管理2.2.3.1 数据仓库对数据质量的要求数据仓库对数据质量的要求总体上归纳为:数据完整性,包括数据源是否完整、数据取值是否完整、维度取值是否完整等。数据准确性,包括数据源是否准确、编码映射关系是否准确、处理逻辑是否准确等
10、。数据核对准确的判断是要么结果一致,要么不一致但原因是可解释的。数据一致性,包括源系统之间同一数据是否一致,源数据与抽取的数据是否一致,数据仓库内部各处理环节数据是否一致等。数据逻辑合理性,主要从业务逻辑的角度判断数据是否正确,如帐目类型的金额、时长、次数的逻辑关系是否满足等。数据时效性,包括数据处理(获取、整理、加载等)的及时性,数据异常检测的及时性,数据处理回退的及时性等。数据仓库服务于经营决策,经营决策依据的数据应该是全面的、真实可靠的、有意义的。数据时效性如果得不到保证,就可能延误了市场人员的分析,失去商机。从数据仓库的建设过程来看,它本身修复数据以提高数据质量的能力并不是很强,但是它
11、能发现生产系统存在的一些数据质量问题从而提醒用户哪些数据有质量问题,将数据问题反馈到业务支撑系统中,由后者做数据修正。2.2.3.2 数据质量改进目标数据质量改进的目标是清理、标准化、提高和匹配现有数据。通过数据整合,建立完整的、准确的、一致的统一客户视图,完善共享信息数据,并使共享信息数据服务于经营分析,为生产系统的改进提供标准。 建立数据整合流程,实现流程定义、流程配置和流程管控。 建立数据整合的规章制度,落实数据质量的分级负责。建立起数据整合队伍,使数据质量能够得以持续改进。2.2.3.3 数据质量改进方法数据质量控制要从技术、流程和管理三个方面进行。从技术层面上,生产系统存在的噪音数据
12、、遗漏数据和不一致性数据,需要进行数据清洗;同时需要对源数据做稽核,如总量稽核和分量稽核。在流程层面上,对于源数据的抽取要遵从一定的业务规则,数据的抽取和转换需要很多步骤来完成,这就需要将过程流程化,并且流程可通过配置来实现。在管理层面上,要求生产系统报送数据,按照“谁提供数据,谁负责”的原则由生产系统保证源数据的完整性、准确性、一致性、时效性。下面是我们在技术层面采取的具体做法。在ETL架构设计中我们会包括数据质量设计,将数据质量检查脚本加入到ETL流程中,分为技术检查和业务规则检查。错误分严重程度,如主键重复的就停止ETL流程,等待解决,但低级别的错误不会阻塞ETL过程。在这个过程中,所有
13、的错误都会进行记录,最终生成数据质量检查报告。但需要明确的是,很多情况下,许多数据问题在ETL之前都无法知道,只能通过ETL之后的数据核对才能发现,然后逐渐积累,加到ETL的规则控制中去。2.2.4 报表平台设计建立报表查询门户,提供各类信息报表的查询,统一查询渠道,统一数据口径,统一用户管理。多个管理信息系统在报表平台上表现为一个个独立的逻辑子系统。通过报表平台,技术人员可以通过灵活配置逻辑系统集成不同BI工具产生的异构报表资源,业务人员可以进行不同报表资源的集中管理和发布,最终用户可以通过一致的展示环境获取报表信息。具体设计如下:2.2.4.1 灵活的报表查询 在报表的查询过程中,可以通过
14、浏览器直接浏览报表,同时,用户也可以通过简单的操作,对报表进行重新订制,为了更好的提高实用性,用户可通过浏览器同报表服务器进行交互,查看到需要的报表。2.2.4.2 先进的报表开发模式在报表的开发中,我们将采用最先进的协同开发模式,开发人员定制业务逻辑,业务人员根据自己需要通过简单的拖动则可形成自己需要的报表。2.2.4.3 高效的报表消费在使用的过程中,业务人员根本不用关心对应的后台业务逻辑,以及数据信息来源等信息,其只要根据自己的业务需要,通过简单的拖拽即可完成对报表的定制,获取到自己需要的信息。2.2.4.4 老系统统计报表移植对于老系统的统计报表,我们将采取重写的方式移植到统一的报表平
15、台上面。重写后的统计报表基于新建的数据仓库,这样就统一了现存的多个统计系统,统一了统计口径,解决了统计口径不一致所造成的各个部门信息的不一致,并消除这种不一致对管理决策带来的负面影响。老系统报表迁移的一个难点是如何保证数据仓库系统中的报表统计结果与原报表统计结果的一致性,对此要具体问题具体分析。新报表的统计结果与原报表的统计结果不一致只可能是两种情况:新报表的统计方式是错误的,造成新老报表统计结果不一致;新老报表的统计口径不一致,造成统计结果不一致。如果是前一种情况,采用正确的统计方式就能修正错误。如果是后一种情况,则需要根据业务的需要选择统计口径,使新报表能够达到业务人员的预期。我们将会采用
16、严格的测试手段来保证新报表与老报表统计结果的一致性。测试的目的,是验证对于相同的输入,新老报表得到的输出结果完全一致。实际测试中,我们将采用等价类划分以及边值分析法来设计测试用例,产生有限的测试用例来覆盖足够多的“任何情况”。对有差异的报表,我们会作进一步的数据集对比,以确定问题的根源到底是在数据,还是报表逻辑。2.2.5 认证管理 在对用户信息的管理中,提供以角色和用户为安全模型的统一认证机制,只有具有对应角色的用户才能访问对应的报表。2.2.6 系统可靠性及可扩展性系统的可靠性及可扩展性对企业级应用来说是非常重要的。我们的设计充分考虑了这两个因素。针对可靠性,我们的设计是在系统包含一个双机
17、组成的数据仓库,和一个双机组成的报表服务平台。数据仓库和报表服务器分别带有自己的外存磁盘阵列。架构中的每个功能节点设计都含冗余度,保证系统不存在单一失败点,满足提供7x24不间断服务的要求。采用的这样系统架构,主机系统的维护、系统扩容、升级、系统性能统计、分析、优化以及部件更换就能够在不影响应用系统功能的前提下完成。而所有关键部件能够保证在不停顿数据共享服务的前提下提供热插拔能力。对于可扩展性,使用我们建议的报表服务平台安讯iServer,系统架构会有很强的可扩展性,用户可以通过增加硬件的方式扩容,以支持越来越多的用户和应用。安讯iServer可以运行在由多台服务器组成的集群上,利用任务控制与
18、自动负载平衡技术,将任务平均分配到各台服务器上。安讯iServer具备出色的可扩展性,用户可以简单的向集群中添加更多的服务器来满足更高的报表需求,而系统的性能随着服务器数量的增多呈线性增长,这方面的具体数据请参考附录D “安讯9系统性能白皮书”。在集群系统中,安讯iServer可以通过不同的故障转移模(Failover)式来保障iServer各项服务的可用性。对系统可扩展性的考虑能充分保证用户不在初期购买超出业务量需求的处理能力。随着用户业务量的增长,主机系统能随时动态扩展处理能力,且系统性能是线性增长的,任何业务量的增长需要都能够通过对主机的线性扩展得到满足。2.2.7 非功能性设计2.2.
19、7.1 性能需求2.2.7.1.1 容量设计根据1994-2007年的所有交易数据总容量为10G byte,大概每年的数据容量在800M左右,从容量和可扩展性和灾备等多方面综合考虑,建议每年的数据量分配在2.5G左右。2.2.7.1.2 响应设计高的响应能给用户带来效率上的提升 ,加快了工作效率,减少了等待时间,同时加快了系统的处理效率,我们将通过以下几方面手段来保证用户得到高质量的响应:1. 优化模型设计,好的模型设计能够减少冗余数据量的加载和检索,以及表间关联检索,能大大提高系统数据的响应时间。2. 有效利用数据库的缓存功能,对于经常访问的数据,可将数据缓存于数据库中,减少IO,3. 利用
20、集群功能,合理分配负载,充分利用各主机的CPU, 内存等硬件资源。4. 优化报表设计,减少报表生成所需要的系统资源。5. 充分利用报表系统的缓存功能,把报表生成任务安排到非高峰时段。6. 充分利用报表系统的对查询的缓存功能,减少对数据源的实时访问。2.2.7.2 灾备设计2.2.7.2.1 灾备级别 高: 内部系统核心数据,包括所有连机和脱机数据,需要高级别的备份。 中:系统需要的资料数据。 低:与系统关系不大,偶尔系统需要使用到的数据。由此可见,对于高,中级别的数据,需要进行对应的备份。2.2.7.2.2 备份策略为了保障核心数据和重要数据的完整性和一致性,我们将提供对应的磁盘备份、联机备份
21、和远程备份功能:磁盘备份:通过镜像 (mirrored) 磁盘矩阵, 对每一个写到磁盘的字节,作实时的镜像备份,减少磁盘机出错的几率。磁盘备份一旦设定,由设备实现,无需人工干预。联机备份:提供24*365天的备份机制,用户可以基于调度来运行备份,可以基于系统运行的热备份。我们设计方案中使用的Oracle 10g 或IBM DB 2 数据库,都支持热备份;Actuate 9 的报表服务器 iServer , 也支持联机热备份。 数据仓库的数据和报表服务器的报表,可以每天进行一次热备份。远程备份:提供对付灾害性的系统失败的有效方式。远程备份把数据存放到地理上的远方,以应对主机可能遇到当地灾害性的损
22、毁。我们建议把每天的热备份数据,拷贝到远端备份存储服务器。以上的备份策略,保证在不影响系统服务的条件下,在本地和远程,都保留一份前一天的备份数据,包括数据仓库和报表服务器的数据。当地备份建议保留30天;远程备份建议保留7天。备份可以保存在磁带库、或光盘库。本地备份耗时目标是2小时;远程备份耗时目标是12小时。2.2.7.2.3 恢复策略常规的数据恢复流程设计如下:1) 重启系统的所有服务器和存储设备2) 如必要,恢复系统3) 从本地备份选取前一天的备份,或最近的备份;如果本地备份丢失,取远程备份4) 恢复数据仓库和报表系统数据5) 恢复系统服务常规数据恢复一般是在文件系统失败(包括磁盘设备失败
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 项目 标书 30
限制150内