1新老系统迁移及整合方案本次总局综合业务系统是在原有系统的基础上开发完成,因此,新旧系统间就存在着切换的问题。另外,新开发的系统还存在与其他一些应用系统,例如,企业信用联网应用系统、企业登记子网站、外资登记子网站等系统进行整合使之成为一个相互连通的系统。本章将针对新老系统迁移和整合提出解决方案。1.1新老系统迁移及整合需求分析系统迁移又称为系统切换,即新系统开发完成后将老系统切换到新系统上来。系统切换得主要任务包括:数据资源整合、新旧系统迁移、新系统运行监控过程。数据资源整合包含两个步骤:数据整理与数据转换。数据整理就是将原系统数据整理为系统转换程序能够识别的数据:数据转换就是将整理完成后的数据按照一定的转换规则转换成新系统要求的数据格式,数据的整合是整合系统切换的关键:新旧系统迁移就是在数据正确转换的基础上,制定一个切实可行的计划,保证业务办理顺利、平稳过渡到新系统中进行;新系统运行监控就是在新系统正常运转后,还需要监控整个新系统运行的有效性和正确性,以便及时对数据转换过程中出现的问题进行纠正。系统整合是针对新开发的系统与保留的老系统之间的整合,以保证新开发的系统能与保留的老系统互动,保证业务的顺利开展。主要的任务是接口的开发。1.1.1需要进行迁移的系统1.1.2需要进行整合的系统需要与保留系统整合的系统包括:1、企业登记管理〈含信用分类〉,全国企业信用联网统计分析,不冠行政区划企业名称核准,大屏幕触摸屏系统与企业信用联网应用,企业登记子网站,属地监管传输,网上业务受理之间的整合;2、外资企业登记管理〈含信用分类),全国外资企业监测分析与属地监管传输,外资登记子网站,网上业务受理,大屏幕触摸屏系统之间的整合:3、广告监管系统与广告监管子网站之间的整合:4、12315数据统计分析与12315子网站之间的整合:5、通用信息查询、统计系统与数据采集转换之间的整合:1.1.3数据迁移和转换分析根据招标文件广东省工商局新建系统的数据库基于SAPSybaseASE15.7,而原有系统的数据库包括ORACLE,SQLServer,DB2。这种异构数据在总局主要存在于两个方面,即部门内部的异构数据和上下级部门之间的异构数据。同时,系统的技术构件有NET和J2EE两大类。对于部门内部的异构数据的集成采用数据移植的方法,如:如果数据有基于DB2管理的,有ORACLE管理的,有SQLServer管理的,就根据新系统SAPSybaseASE15.7的要求,把ORACLE的数据迁移到SAPSybaseASE15.7数据库中,把SQLServer的数据迁移到SAPSybaseASE15.7数据库中。上下级工商系统之间的异构数据的集成利用数据交换系统来完成,重点在于数据库存储标准、交换标准的制定和遵守,保证数据的共事,这部分工作由数据中心完成。1.2系统迁移和整合目标一、系统切换的主要目标:•保证系统正常运行在数据转换过程中,由于原有的系统数据的复杂性,给数据转换工作带来了很大的难度,为了在新系统启动后不影响原系统正常的业务,因此数据转换完成后,必须保证新系统的正常运行。•保证原有系统在新系统中的独立性原有系统是独立运行的系统,数据在新系统中虽然是集中存放的,但是各个系统由于存在业务上的差别,数据在逻辑上应当保持一定的独立性。二、系统整合的目标:保证直接关联的系统互动,保证业务的正常办理。例如公众服务系统与基本业务系统之间互动,基本业务与协同业务之间互动等等。1.3系统切换方案1.3.1系统切换工作流程系统切换包括前期调研、数据整理、数据转换、系统切换、运行监控五个阶段。系统切换的整个工作流程如下所示:图1-1系统切换流程示意图1.3.2系统切换工作步骤1.3.2.1前期调研阶段前期调研是数据转换中很重要的一个步骤,也是至关重要的一部分。在进行数据转换工作前,我们需要先认真阅读系统的相关文档,如《数据字典》、《系统概要设计报告》等,来熟悉原有的系统。当然在阅读文档的过程中肯定还会有理解不清晰的地方,这时还需要熟悉原有系统的工程师的帮助。数据转换的前期工作就是对原系统做一次彻底的全面了解,主要需要的考虑的有下面一些情况:1、原系统的网络结构:2、原系统的业务范围、存在几套业务系统以及他们之间的关系:3、原系统的开发商、开发工具、开发平台以及采用的数据库:4、原系统的数据分布状况:包括数据范围、数据量大小等;5、原系统的业务流程:6、原系统的数据流程;7、原系统的数据结构:在了解这些要素的基础上,需要编写《前期调研分析报告》。调研报告主要包含如下一些方面:1、将所有数据表进行分类,如系统参数类、代码类、综合业务类、相关业务类等等。2、对所有数据表的数据组成、数据来源、用途等进行描述。3、并非所有的数据都是需要进行转换的,在《数据字典分析报告》中要指出那些数据表是需要进行转换的,那些是不需要进行转换的,对于不需要转换的表要说明不需要转换的原因。4、描述数据在各表中的流向,对于关键的或复杂的业务点要做详细说明。1.3.2.2转换设计阶段转换设计阶段主要是完成新旧数据字典的对照,同时明确各个表中具体数据字段的转换方式。在转换设计阶段主要是编写《数据字典对照报告》,《数据字典对照报告》主要描述新旧系统数据表间的对照关系以及代码对照关系。以新系统为准,原系统作参照,将原系统的数据字典对应到相应的系统数据字典中。在对照过程中,需要遵循数据照搬原则,数据尽量不要作处理。在数据字典对照表中需要进行转换的数据字段应该一一对应,对新旧数据表中字段的名称、类型、精度等都要有详细的描述,同时还要明确数据的转换方式。数据转换方式主要有以下几种:1.直接转换。直接转换方式是最常用的方式,就是将原表中对应字段的数据原封不动的搬到新表中来。按照“数据照搬”原则,我们应该尽量采用这种方法。2.程序转换。对那些需要进行计算才能进行转换的数据将采用程序转换方式进行。3.代码对照。某些代码字段,往往新旧系统的编码不相同,这时就需要参照代码对照表进行代码对照转换。4.类型转换。少数数据可能需要对类型进行转换,如就表以字符串‘YYYY-MM-DD’来存放日期,而新表中以DATE型来存放日期,这时就需要进行类型转换。5.常量转换。新表中某些字段可能存在缺省值,这时将采用常量转换方式,当旧表没有对应字段或旧表对应字段数据为空时,将直接在新表中写入缺省数据。6.不转换。对于旧表有但新表中没有的字段将不作任何转换。新旧系统代码对照列出了全部需要进行转换的新旧系统数据表中存在的二级代码间的对照关系,主要以二级代码对照表的形式来反映。1.3.2.3数据迁移一、数据整理策略数据整理就是将原系统数据整理为系统转换程序能够识别的数据。数据整理大致分为两个阶段:第一阶段就是将不同类型来源数据采集备份到统一的数据库中:第二阶段就是将原始数据进行整理,按照不同的要求分类进入不同的中间数据库,为数据转换提供中间数据。数据整理过程采用了以下方法:•确保原始数据的完整性在进行数据整理之间,我们先需要对原始采集数据进行备份。备份的目的有两个:一个是统一数据库,便于数据转换,另一个就是为以后数据追根溯源提供参考依据。在本系统中,我们将采用DB2作为备份统一数据库。•数据分级过滤策略数据分级过滤就是把数据按照不同的数据级别进行分类整理进入不同的中间数据库中。本系统中我们把数据分为三个级别:废弃数据、待调整数据、可转换数据。废弃数据就是该部分数据的存在对系统资源造成浪费的数据,并且会影响以后系统的运行。待调整数据就是该部分数据严重影响新系统的运行,必须进行人工调整后,方可进行数据转换。可转换数据就是该部分数据不需做任何处理,基本满足数据转换的要求或者是该部分数据新系统建议调整,但是不影响系统的运行,可以等新系统运行后再调整,这样可以为数据转换工作节省很多时间。•借助数据整理相关工具数据整理非常艰巨,涉及的数据量很大,通过人工检查是不可能完成的,因此必须编写相关的数据整理工具完成数据整理。包括数据整理工具和数据纠错工具。数据整理工具负责将原始备份数据库中的数据进行分类进入不同的中间数据库:数据纠错工具负责提供友好、方便的工具界面供用户方相关人员完善和纠正错误数据。•利用中间库作为桥梁由于原系统和新系统的数据库结构可能不一样,所以采用中间库作为衔接新旧系统数据的重要桥梁,对于建立新旧系统的对照关系很重要。一旦业务人员对新系统中某项转换数据存在疑问的情况下,就可以通过中间库的关联,顺利找出原数据。二、数据转换数据转换就是将整理后的数据,依照对照表的要求进行转换,并写入到新系统。这个过程可以通过交换系统实现。三、数据整理与转换步骤•设计数据移植方案设计数据移植方案主要包括以下几个方面工作:研究历史数据的结构、来源、数据项定义、取值等现状,研究新旧数据库结构的差异,评估和选择数据移植的软硬件平台、选择数据移植方法、选择数据备份和恢复策略、设计数据移植和测试方案等。•源数据库数据清理对于一个运行己久的数据库,主要存在三种数据库垃圾:数据库对象垃圾、数据库权限垃圾、数据垃圾。数据库对象的清理不是一件容易的工作,需有认真负责的态度,要有耐力,任何错误的清理不仅会造成前端不能运行,而且将会造成数据的丢失。所以清理数据库对象也许需要一个安全、准确,可很快恢复的方法。首先要认识数据库资源,包括数据库对象,如表、数据库事件、过程、函数,数据库结构关系,在此基础上结合运行系统,确认数据库垃圾,制定合理的垃圾清理方案,达到清理垃圾的目的。主要方法是对数据库数据进行整合和分解,整合相关数据减少数据的重复,分解,数据则可是数据团体更趋向合理,当然整合和分解要以适合新设计的数据库结构为基础,以便简化转化程序。•进行数据模拟移植根据设计的数据移植方案,建立一个模拟的数据移植环境,它既能仿真实际环境又不影响实际数据,然后在数据模拟移植环境中测试数据移植的效果。数据模拟移植前也应按备份策略备份模拟数据,以便数据移植后能按恢复策略进行恢复测试。•测试数据模拟移植根据设计的数据移植测试方案测试数据模拟移植,也就是检查数据模拟移植后数据和应用软件是否正常,主要包括:数据一致性测试、应用软件执行功能测试、性能测试、数据备份和恢复测试等。•准备实施数据移植数据模拟移植测试成功后,在正式实施数据移植前还需要做好以下几个方面工作:进行完全数据备份、确定数据移植方案、安装和配置软硬件等。•正式实施数据移植按照确定的数据移植方案,正式实施数据移植。1.3.2.4数据整理和转换的关键技术对于多源异构数据库之间的数据转换,因为目标数据库的格式和约束的限制严格,直接编写转换程序实现困难,可在原有数据库系统中编写转换程序。对于源数据库、目标数据库结构有差异的数据,建立中间过渡库,中间库在原数据库平台中建立,但结构与目标数据库的结构相同。将源数据库转入中间库的过程是一个数据的重新组合和关联的过程,将是转换的中心和重点工作,需要对源数据库与新数据库的数据关系进行深入分析,对每一个数据库写出转换策略。非空处理:对于应该非空但实际为空的记录制定处理规则。取值约束处理:对于有取值范围约束的宇段进行规范化处理,即将转换后的数据取值规范到该范围内。主键处理:重新对中间库进行编号。填写外键:每个数据库或多或少存在外键,外键越多,标明与其它库关联越多,这样的库应后处理:反之,外键越少的库应该先处理。唯一键处理:对要求唯一的数据项(主键、唯一键)进行唯一检测,并对检测出的不唯一的记录,制定处理规则。附加分散处理:对某些表中的某些字段进行数据规范化处理,即将不合规范的数据替换成规范的数据,几个表之间的关联处理,以及一些特殊处理等。数据一致性处理:对于有多个数据源的数据进行一致性检查,制定处理规则。1.3.2.5新旧系统切换第一步:编写《系统切换方案》。系统切换方案包括系统切换方法、系统切换计划等内容。第二步:组织相关人员对《系统切换方案》进行评审,如果未通过,则需要调整系统切换方案。第三步:进行业务系统数据转换。在进行业务系统数据转换前,需要先选择一个时间点进行业务系统数据采集。该时间点的选择以完成一个完