广东工业大学计算机学院

上传人:gb****c 文档编号:242966790 上传时间:2024-09-13 格式:PPT 页数:101 大小:124.50KB
返回 下载 相关 举报
广东工业大学计算机学院_第1页
第1页 / 共101页
广东工业大学计算机学院_第2页
第2页 / 共101页
广东工业大学计算机学院_第3页
第3页 / 共101页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,*,*,软件工程设计,Software Engineering Design,2024年9月13日,1,第,11,章 数据迁移设计,11.1,省征管系统介绍,11.2,异构数据迁移途径的选择,11.3,数据迁移的总体规划,11.4,数据迁移的详细实现,11.5,数据迁移的实施要点,2024/9/13,2,某国税的征管系统有一个地级市使用总局综合征管软件,1.05,版,其它地级市使用某省国家税务局自行开发的征管软件。由于原各地市征管系统使用的数据库均是,SYBASE,,总局综合征管软件使用的数据库是,ORACLE,,所以是异构数据迁移。,2024/9/13,3,迁移的数据包括纳税人档案资料、税款数据、税款余额、文书、发票资料、申报表、税票、稽查案件和违法违章信息等,即包括征管过程数据。,2024/9/13,4,11.1,省征管系统介绍,省征管软件系统是某省国家税务局组织本系统人员自行开发的税收征收管理系统。省征管系统从,2001,年在某某省全省国税系统全面推广使用,并在,2002,年全面完成地级市数据集中,地级市数据集中后,主要的业务数据通过,SYBASE,复制服务复制到省局,形成省级集中库,省级集中库用来查询等,地级市的服务器才是业务生产数据库。,2024/9/13,5,某某地区市国税系统在,2004,年作为国家税务总局综合征管软件,1.05,版的试点城市,上线运行了总局综合征管软件,1.05,版。我们所描述的数据转换和数据迁移范围均不包括某某和某某地区国税系统,我们所描述的省征管系统是指除某某和某某地区市国税系统外的某某省其他地市应用的省征管软件系统,。,2024/9/13,6,省征管系统主要有,15,个模块:税务登记、纳税人管理、申报征收、计会统日常业务、会计核算、入库单位会计核算、税票管理、发票管理、稽核管理、稽查管理、统计报表、综合查询、分析监控、系统管理和计划任务管理。 省征管软件系统的系统结构是客户机,/,服务器模式结构,后台数据库为,SYBASE 12.5,,开发工具为,POWERBUILDER9.0,。,2024/9/13,7,1,、总局综合征管软件介绍,总局综合征管软件也叫中国税收征管信息系统,(China Taxation Administration Information System,,英文简称,CTAIS),,是国家税务总局世界银行贷款项目,是由国家税务总局直接组织领导,神州数码(中国)有限公司负责开发实施的第一套全国统一的税收征管主体软件。,2024/9/13,8,包括管理服务、征收监控、税务稽查、税收法制、税收执行等子系统,涵盖了国税部门目前所有的征管业务,并兼顾了对地税业务的可扩充性。系统集分析、管理、监控于一身,是一个以基层征管为核心、以广域网为背景的大型应用系统。,2024/9/13,9,随着应用的逐步深入,,1.0,版本系统需要升级和完善主要有两大方面的驱动。其一,是业务推动。包括税收征管系统长期的积累需求需要升华、宏观形势及需求发展的驱动、信息系统整合目标的客观需要以及技术发展的驱动。,2024/9/13,10,其二,就是技术拉动。随着,WEB,技术的日益成熟和应用范围的日益广泛,,B/S(,浏览器,/,服务器模式,),三层结构技术开始逐渐取代以往的,C/S(,即客户机,/,服务器模式,),两层结构软件。,2024/9/13,11,基于三,(N),层体系结构上的,以运维监控平台为辅助的全新的税收核心征管信息系统也就成为了大势所趋。通过加大推广力度和技术支持力度,以及对系统数据质量情况进行调研等手段,总结了现行系统的问题与不足,并在此基础上,从解决问题、补充功能和改进效率的角度进行了版本升级。,2024/9/13,12,新总局综合征管软件整个设计开发过程运用了面向对象设计等方法,其目标是以原总局综合征管软件系统为基础,以税务业务为核心,搭建“以资源整合为目的、面向税务行业应用的多层次、构件化、可复用的系统框架,Smart Platform”,,继而基于框架开发“适合税务集约化管理、多元化服务、柔性工作流等发展趋势的新一代税收征管信息系统”,即总局综合征管软件,2.0,版本,2024/9/13,13,总局综合征管软件,2.0,的推广运行,提高了税务机关的综合管理能力和监控水平,主要体现在如下几个方面:一是强化了税收行政的执法监督。二是强化了对税源变化的有效监控。三是巩固并加快了税收征管信息化建设的步伐。四是提高了决策依据的准确性和可靠性。五是为税收征管专业化分工提供了有力的支持。,2024/9/13,14,2.,系统差异性分析,省征管软件系统和总局综合征管软件系统都是不同设计人员设计的,使用的数据库不一样,系统体系结构不一样,且后台数据库中存放数据的表结构差异也非常大。只有把这两个系统的差异性分析出来,并把这两个系统的后台数据表结构的含义弄懂弄清楚才能实现数据迁移,进行差异性分析是第一步工作。,2024/9/13,15,差异分析工作十分重要,它既关系到新系统的顺利运转,也是制定推广应用计划的重要依据。在差异分析工作的基础上,编写省级集中推广应用工作方案和工作计划。差异分析工作需要从前台操作、业务处理、技术实现等方面进行分析,整个分析工作包括搭建模拟运行环境、新系统培训、差异分析、编写分析报告等几项内容。其中进行数据迁移最关注的是总局综合征管软件系统,2.0,版的技术实现,包括数据结构、代码体系、系统接口标准等。,2024/9/13,16,主要从以下几个方面分析:,(,1,)数据结构的差异。,(,2,)总局综合征管软件系统,2.0,版代码与省征管软件的代码差异性,需要逐个代码表进行对比。,(,3,)总局综合征管软件系统,2.0,版所提供的接口标准,与我们现在使用的接口标准进行比较,提出初步的解决方案。,通过差异分析,提交,技术实现差异分析报告,及专题分析报告。,2024/9/13,17,差异分析前,需要对两个系统的数据结构等进行培训,由于数据迁移小组人员大部分均是省征管软件系统的开发人员,所以对省征管软件系统很熟悉,只需要培训总局综合征管软件系统,2.0,版的数据结构和技术实现过程。通过培训和实施差异性分析,两个系统共有的可实现的业务虽然存在差异,仍可实现转换和迁移。,2024/9/13,18,培训内容包括:,(,1,)管理服务,包括税务登记、认定管理、发票管理、证件管理、文书管理等。管理服务系统是整个系统运转的起始点,它依据纳税人提供的各种资料进行征收前有关基础信息的管理,为申报征收和稽查管理提供基础信息,并接收申报征收和稽查管理的信息以加强管理服务工作。,2024/9/13,19,(,2,)征收监控,包括申报表、税票、税款余额、税款发生的流水帐等。征收监控系统是总局综合征管软件系统的核心,包括申报征收、税收计划(含重点税源分析)、税收会计、税收统计和通用报表。它根据各环节提供的信息,针对纳税人的申报、征收信息进行各种核算、分析。,2024/9/13,20,(,3,)税务稽查,包括稽查选案、稽查实施、稽查审理等。税务稽查系统根据征管子系统所提供的信息对选案、实施、审理和执行全过程实行管理,从管理服务、申报征收取得纳税人的基础数据开始,通过分析比较,加工整理,确定稽查对象,实施检查,经过审理环节最终到达执行环节。,2024/9/13,21,(,4,)税收法制,包括税务违法违章管理及行政处罚等。,(,5,)税务执行,包括一般执行、税收保全、强制执行等。,(,6,)代码体系,国标的代码如注册类型等基本上一致,但其他代码表则有较大的差异。,2024/9/13,22,112 异构数据迁移途径的选择,11.2.1,数据转换途径的选择,省征管软件系统数据库结构和总局综合征管软件的结构有比较大的差异,其转换是数据迁移中最重要的,工作量也是最大的。把我省征管软件系统的数据迁移到总局综合征管软件有两个途径,:,2024/9/13,23,一是在,SYBASE,数据库环境先把我省征管软件系统的数据转换成总局综合征管软件的数据库结构,再把,SYBASE,版本的总局综合征管软件软件迁移到,ORACLE,版本的总局综合征管软件。,2024/9/13,24,二是在,SYBASE,数据库环境先把我省征管软件系统的数据迁移到,ORACLE,数据库,保持我省征管软件系统的结构,再在,ORACLE,数据库环境下转换成总局综合征管软件的数据库结构。,2024/9/13,25,由于数据迁移技术人员大部分是省征管软件的开发人员,对,SYBASE,较熟悉,使用最熟悉的数据库环境,最熟悉的,sql,语法,更有利于加快开发进度,提高工作效率,而且更有利于对程序的调试,对正确性更有把握。而且部分技术人员是,ORACLE,初学者,假如在,ORACLE,环境下开发转换程序,则面临边学边开发,提高程序性能方面遇到困难,需要花更大力气去解决。,2024/9/13,26,基于上述原因,所以选择了在,SYBASE,环境下完成从我省省征管软件系统数据库结构转换到总局综合征管软件的结构,即选择了采用第一个途径。,2024/9/13,27,11.2.2,数据迁移方法的选择,选定了,SYBASE,数据库环境下开发数据转换程序,完成从我省省征管软件系统数据库结构转换到总局综合征管软件的结构。数据转换完成后,则需要把,SYBASE,数据库的数据迁移,ORACLE,数据库,把,SYBASE,数据库环境下的数据迁移到,ORACLE,数据库环境,可以使用以下几种方法:,2024/9/13,28,一、使用,POWERBUILDER,的数据管道迁移。,可以使用,POWERBUILDER,的数据管道进行迁移,源数据源指向省征管软件系统的,SYBASE,数据库,目标数据源指向总局征管软件系统的,ORACLE,数据库,这需要每一个表都建立数据管道。,2024/9/13,29,优点:简单,易懂,使用灵活,支持,TEXT,文本的迁移。,缺点:需要对每个表进行编程,建立管道,迁移运行速度较慢。,2024/9/13,30,二、使用,ORACLE,公司提供的透明网关编写,SQL,语句完成迁移。,通过从,ORACLE,到,SYBASE,的网关可以直接在,ORACLE,数据库访问,SYBASE,数据库。例如:直接执行,insert into DJ_NSRXX select * from DJ_NSRXXSYBASE,就可以完成,DJ_NSRXX,表数据的迁移。,2024/9/13,31,优点:运行速度快、使用方便。,缺点:不支持,text,文本的迁移。,2024/9/13,32,三、使用,SYBASE,的,BCP,实用工具导出数据成文本格式,然后使用,ORACLE,的,SQL LOADER,实用工具导入,ORACLE,数据库。,用,SYBASE,的,BCP,工具把数据导出,导出到文本文件,然后使用,ORACLE,的,SQL LOADER,实用工具把数据导入到,ORACLE,数据库。,2024/9/13,33,优点:运行速度较快。,缺点:需要建,ORACLE,的,control,文件,较麻烦,表结构不一致、,text,超长时不能处理。,2024/9/13,34,四、利用微软,DTS,专门移植工具来进行迁移。,微软,DTS,工具可以将各种各样的数据源导入到各种各样的数据库。,2024/9/13,35,优点:微软,DTS,在数据转换方面简单易学,功能强大,不仅可以使用,VBSCRIPT,与,JSCRIPT,脚本进行数据合并、分解、转换、统计,还可以用包的方式存储在服务器上,通过代理服务多次,/,定时,/,调度地执行。并且,DTS,承袭了微软的易学易用的优良传统,对使用者的要求很低,经过短时间培训,一般人员都可以使用,DTS,导入导出数据。,2024/9/13,36,五、利用,ORACLE,公司的,ORACLE Migration Workbanch,来进行迁移。,优点:使用方便,可以很方便的把,tabels,、,views,、,triger,、,procedure,、,shortnaps,、,users,等完全转到,ORACLE,中去。,缺点:对中文,TEXT,文本支持得不够好。,2024/9/13,37,由于微软的,DTS,没有使用过,没有使用经验,而通过比较采用第三种方法有总局综合征管软件开发商的技术支持,并且在其他省份的系统移植中成功采用过,效果不错,故选择了第三种方法迁移数据。当采用第三种方法迁移不成功的数据再使用第一或第二种方法迁移。,2024/9/13,38,11.3,数据迁移的总体规划,整个数据迁移包括把,SYBASE,数据库环境下的省征管软件结构转换为总局综合征管软件的结构,并把数据从,SYBASE,环境平移到,ORACLE,数据库环境。具体步骤为:,2024/9/13,39,一、某某省国家税务局建立工作环境,(一)搭建数据库服务器。,准备两台小型机,分别安装,SYBASE12.5,数据库和,ORACLE9.2.0.6,数据库。,(二)建立应用数据库。,1,、在,SYBASE,数据库上建立可容纳待迁移的省征管软件,2.0,版数据库大小的空白数据库。,2024/9/13,40,2,、在,SYBASE,数据库上建立总局综合征管软件,2.0,版的空库,即数据表结构和,ORACLE,版本的总局综合征管软件,2.0,版一致,但内容只有数据库结构和一些定编的代码数据。,2024/9/13,41,3,、在,ORACLE,数据库上建立总局综合征管软件,2.0,版的空库。如果已有部分单位已上线运行总局综合征管软件,2.0,版,则该步不用建立,使用运行总局综合征管软件,2.0,版的生产库。该步建立的数据库即为转换后的,ORACLE,数据库。,4,、在,SYBASE,数据库的总局综合征管软件,2.0,版的空库建立新旧系统代码对应表。由于代码体系不同,描述同一业务的代码不同,代码体系的差异是数据转换要处理最主要的问题之一。,2024/9/13,42,二、地级市进行迁移前的数据检查,检查数据库是否可以满足迁移要求。,(一)统一省征管软件的版本。,通过检查比对系统版本号,确认省统一征管软件的数据库后台已经升级到省局所要求的最新版本。还没有升级到最新版本的必须升级才能继续,2024/9/13,43,(二)迁移前确认以下业务按要求完成。,1,、所有文书都必须终审完毕,不允许在流转中。由于对文书审批流转的处理不同,未终审的文书不能转换,否则转换后不能正常流转。,2024/9/13,44,2,、柜台发票退回库房,各级税务机关发票库房进行盘点。两个系统机关发票库房发放发票到柜台和从柜台上缴到库房的机制不同,必须在总局综合征管软件上线后重新下发。,3,、当月记账完毕。记帐完成,代表完成该月业务,下月新发生的业务使用新系统操作,这样便于核对数据,以及方便作正确性验证。,2024/9/13,45,(三)备份省征管软件数据库,并传送到省局。备份时,使用,dump database SWGL20 to compress:/,地市简称,.dmp,把数据库压缩备份,这样减少网络传输时间,离省局距离近的地级市也可使用专车送到省局。,2024/9/13,46,三、省局对上报的省征管软件数据库进行检查,确认数据库可以满足转换的要求。检查数据的正确性是一项很重要的工作,是数据迁移转换是必不可少的环节,是保证数据转换能正常运行的必然步骤。对于没有符合数据质量提升要求的,需要逐一调整到符合要求为止,并重新上报数据。,2024/9/13,47,四、把上报的省征管软件数据库即待迁移的数据库装载到数据迁移,SYBASE,服务器。省局接到地市的数据文件后,通过,load database SWGL_,地市,from compress:/,地市简称,.dmp,把数据加载到数据迁移,SYBASE,服务器。,2024/9/13,48,五、运行数据转换程序,把数据转换到基于总局综合征管软件,2.0,版结构的,SYBASE,数据库中。转换程序运行过程中,会根据程序运行情况,记录每一步骤发生的时间、成功或错误信息。,2024/9/13,49,六、运行转换后的数据检查程序,检查转换的正确性。,(一)查看转换日志,评估转换过程中出现的错误可能造成的影响,对需要重新执行的程序重新执行。,(二)运行数据检查程序,对总局征管软件结构的,SYBASE,数据库的业务数据和转换前的省征管软件数据进行比对,确定转换是否正确。,2024/9/13,50,七、数据迁移合并。,(一)停止已经上线总局综合征管软件,2.0,版的单位的业务。如果已有部分单位已上线运行总局综合征管软件,2.0,版,则需要停止系统运行。,(二)备份总局综合征管软件,2.0,版数据库,以防出错时恢复数据。,2024/9/13,51,(三)禁止总局综合征管软件,2.0,版数据库的触发器和外键,触发器会引起数据混乱错误,外键有可能会使数据导不进去,并影响数据导入的效率。,(四)使用,SYBASE,的,BCP,工具把,SYBASE,数据库环境下的总局综合征管软件,2.0,结构的数据导出为文本文件。,2024/9/13,52,(五)使用,ORACLE,的,SQL LOADER,工具把导出的文本数据导入到,ORACLE,版本的总局综合征管软件,2.0,数据库。,八、迁移合并数据检查。,分别统计迁移前的每个表的记录数和迁移后的每个表的记录,核对迁移的结果。,2024/9/13,53,九、恢复环境,进行业务试操作。,(一)恢复总局综合征管软件,2.0,数据库的触发器、外键,进行索引优化分析。,(二)进行总局综合征管软件,2.0,的系统初始化设置。,2024/9/13,54,(三)备份总局综合征管软件,2.0,数据库。这是完成数据迁移的其中一个点。,(四)业务部门进行实际业务测试,进一步检验数据迁移是否成功。,2024/9/13,55,11.3.1,数据迁移范围,按照省局确定的,轻装上阵,干净上线,的原则,数据迁移的时间范围确定从,2006,年,1,月,1,日后发生的业务数据才转换到总局综合征管软件,即是,2006,年,1,月,1,日后纳税正常户、停业户以及税务登记证件未失效的非正常户发生的征管数据,以及上述纳税人在这一时点之前发生但在这一时点之后具有延续性的征管数据。内容具体包括:,2024/9/13,56,一、管理服务,(,一,),税务登记,包括基本档案、税种登记、停业登记、注销登记、非正常认定登记、纳税人状态库。,(,二,),文书,2024/9/13,57,(,三,),发票:包括纳税人票种核定、发票销售情况、纳税人未验旧发票、发票各级库房结存情况、发票验旧情况、印有企业衔头发票情况、代开发票等。,二、征收监控,(,一,),申报:增值税、营业税、消费税、内资企业所得税、外商投资企业所得税、代征代扣等各种申报表。,2024/9/13,58,(,二,),征收,(,三,),会计核算和报表,三、税务稽查:包括稽查选案、稽查实施、稽查审理等内容,和各相关决定性文书内容。,四、税收法制:包括税务违法违章管理及行政处罚文书等。,五、税务执行:包括一般执行、税收保全、强制执行文书等。,2024/9/13,59,11.3.2,提升省征管软件的数据质量,为了保证现有数据的正确性和一致性,确保数据能够高质量地迁移至总局综合征管软件系统,2.0,版,必须对我省现有征管数据进行数据质量提升工作,把数据质量提高到符合软件设计逻辑和业务逻辑。,2024/9/13,60,结合当前我省各市数据的实际情况,数据质量提升工作的具体内容分类如下:,一、处理当前系统与实际信息不相符的数据,二、处理历史遗留的问题数据,三、处理逻辑关系异常的问题数据,四、核实和补充新系统需要的指标,2024/9/13,61,11.3.3 数据迁移的运行框架,1 SYBASE,环境下的数据转换,一、硬件环境,如表,11,1,。,服务器名称,型号,CPU,内存,网卡,存储,SYBASE,数据库服务器,IBM P595,2,个,4 G,千兆,EMC DMX2000 RAID0+1,ORACLE,数据库服务器,IBM P595,16,个,64 G,千兆,EMC DMX2000 RAID0+1,2024/9/13,62,二、软件环境。,IBM P595 AIX5.3,SYBASE 12.5,ORACLE9.2.0.6,三、开发工具,PowerBuilder 9.0,2024/9/13,63,四、实现思路,数据转换的框架可以归纳为:,调度程序,SQL,语句监控程序,2024/9/13,64,(一),SQL,语句,:sql,的文件命名规则为,序号,+,目标表名,+,说明,+ .sql “,(二)调度程序,选取,sql,文件存放的目录;,读取目录下所有,sql,文件的文件名,并以文件名升序排序;,读取第一个,sql,文件的内容;,2024/9/13,65,读取该,sql,文件的第一句,sql,语句;,记录时间;,执行,sql,语句;,记录,sql,语句完成时间和执行,sql,语句况;,读取该,sql,文件的下一语句;转到直至该,sql,文件执行完毕;,读取下一,sql,文件,转到,直至所有,sql,文件执行完毕。,2024/9/13,66,三)监控程序,监控程序利用调度程序所记录的日志展现出来,主要展现执行序号、,sql,文件名、,sql,语句、执行开始时间、执行结束时间、执行返回信息,并统计执行每个,sql,语句和,sql,文件的执行时间。监控程序定时刷新屏幕,展现最新的日志,随时监控调度程序的执行情况,以便及时发现异常情况,作出及时处理。,2024/9/13,67,2 SYBASE,环境下的数据迁移到,ORACLE,数据库,使用,SYBASE,的,Bcp,命令导出的数据是文本格式的文本文件。得到文本文件后,使用,ORACLE,的,SQL LOADER,工具,将,Bcp,产生的文本导入到,ORACLE,数据库中。,2024/9/13,68,11.3.4,新旧系统代码的对应,总局综合征管软件的编码内容确定后,开始进行新旧系统代码的对应。代码内容的对应,必须满足以下基本要求:多个旧系统代码内容可对应一个新系统代码;但一个旧系统代码不能对应多个新系统代码。,2024/9/13,69,11.3.5,新旧系统流水号的对应,总局综合征管软件的业务表,如纳税人档案、征收信息等,业务表的主键都是数字型,为数据库节点号(,4,位,由国家税务总局分配)年号(,2,位,不含世纪)顺序号(,12,位),共,18,位。,顺序号的产生方式可以利用,sybase,表的,identity,字段生成,把数据写入含有,identity,字段的表中,,identity,字段会形成唯一的序号。,2024/9/13,70,11.3.6,数据迁移的技术验证,为了数据迁移的正确,采取必要的技术手段是必须的。技术验证也是从两个方面考虑:数据转换和数据平移。,一、数据转换,对省征管软件数据和总局征管软件结构的,SYBASE,数据库的业务数据进行比对,确定转换是否正确。,2024/9/13,71,二、数据平移,统计迁移前的每个表的记录数和迁移后的每个表的记录,核对迁移的结果,确定数据平移过程中是否发生数据丢失。,2024/9/13,72,11.3.7,数据迁移的业务验证,业务验证主要是为了数据迁移到总局综合征管软件后,是否符合总局综合征管软件的业务逻辑,纳税人的当前资料和税款余额是否和实施数据迁移前一致,以及新业务发生时,具有延续性的资料能否正常的延续。,2024/9/13,73,一、核对纳税人和税款清册。通过清册和总局综合征管软件相关的查询功能查询出来数据进行核对。,二、记帐产表和省征管软件原已生成的报表进行核对。,三、模拟运行。,2024/9/13,74,11.4,数据迁移的详细实现,11.4.1,新旧系统流水号对应的实现,一、对于某项业务在省征管软件数据来源只有一个,则可以通过建立含有,identity,字段的表来产生新系统的流水号。,2024/9/13,75,二、对于某项业务在省征管软件中有多个数据来源,多个数据来源表中的主键既有字符型,也有数值型的,可通过建立既含有字符型,也含有数值型的表来实现,大家一起往这个表写入数据,申请顺序号。,2024/9/13,76,11.4.2新旧系统代码对应的实现,新旧系统代码表的对应,可通过建立含有新旧系统的代码的对应表,以省征管软件的代码为主键,一个表的主键的值只能是唯一的。这样就可以保证代码只能是一对一或多对一的情况。,2024/9/13,77,11.4.3 调度程序的设计,调度程序的流程:,选取,sql,文件存放的目录;,读取目录下所有,sql,文件的文件名,并以文件名升序排序;,读取第一个,sql,文件的内容;,读取该,sql,文件的第一句,sql,语句;,2024/9/13,78,记录时间;,执行,sql,语句;,记录,sql,语句完成时间和执行,sql,语句情况;,读取该,sql,文件的下一语句;转到,直至该,sql,文件执行完毕;,读取下一,sql,文件,转到,直至所有,sql,文件执行完毕。,2024/9/13,79,假设将传入的文件读到一个字符串并返回的功能设计为:,public function string wf_read_file (string as_file),;把传入的字符串,as_sql,从,ai_pos,开始的位置取出有效的一句,SQL(,以,;,号隔开,),的功能设计为:,public function string wf_get_sql (string as_sql, ref long ai_pos),。,2024/9/13,80,11.4.4监控程序的设计,建一数据窗口,显示执行出错的情况,建一数据窗口,显示所有,sql,执行的情况,建一窗口,把上述两数据窗口对象放置在窗口上,利用窗口的,timer,事件定时检索,就可以达到监控的目的。,2024/9/13,81,11.4.5,数据导出的实现,使用,SYBASE,的,BCP,工具导出数据,可通过,SYBASE,的,sql,语句产生,BCP,命令。,2024/9/13,82,select echo + name + out.log + char(10)+ bcp ctais.dbo. + name + out ,+ name+ .dat -U sa P -S -c -t ,+ + # + + -r + + |n+ + out.log from sysobjects,where type=U,其中导出的文件是以“,#”,为分隔符,2024/9/13,83,11.4.6,数据导入,ORACLE,的实现,1,、编写,ctl,文件,可以编写小程序批量产生。,2,、通过,sql,语句编写,sql loader,命令。,2024/9/13,84,11.4.7,一个税款迁移例子的设计,为了程序可以多次运行,先把表中原有数据删除。插入数据时源数据表和流水号对应表、代码对应表进行表关联,取得其对应的值。,2024/9/13,85,11.5,数据迁移的实施要点,数据迁移是一个复杂而繁琐的过程,并不是一次就可以成功的。数据迁移的程序须经过多次反复修改,修正错误,不断完善的。在这当中有可能碰到困难,需要积极面对。有时候碰到程序错误,有时候为使程序运行效率更高,仍在不停的思索,寻求解决方案。在数据迁移的实施过程中,有许多容易忽视但却有效地提高质量和效率的地方。,2024/9/13,86,11.5.1,数据迁移的质量保证计划,为确保数据迁移的质量,需要制定质量保证计划。主要有三个方面:,一、规范编写数据迁移程序,,sql,语句、表名、,sql,文件的命名、变量的命名等须按照制订的规范编写。,2024/9/13,87,二、在编写数据转换程序前,建立对照文档,把省征管软件的哪一指标转换为总局综合征管软件的哪一指标,必须要有完整的文档,并交与领导和总局综合征管软件的开发商共同审核通过,才能据此指标对应关系开始编写数据转换程序。,2024/9/13,88,三、每一次的调试、完善,需要修改程序的,都必须加以注释,标明修改人,修改时间以及修改原因等,方便跟踪,以及查找错误原因。,2024/9/13,89,11.5.2,数据迁移的正确性验证,数据迁移的正确性验证可以通过技术上进行验证,但更主要还是进行业务上的验证,只有业务上的验证通过了,才可以正式地实施数据迁移。,2024/9/13,90,11.5.3,提高数据转换的性能,省征管软件通过数据积累,个别表达到,4000,万条记录。要缩短数据转换的时间,必须提高数据转换程序的效率。另外,提高,sql loader,的效率,可以缩短数据导入,ORACLE,的时间,2024/9/13,91,一 主机系统,(一)主要设置异步,I/O,:使用,smitty,启用异步,I/O,。,(二)存储设备:磁盘阵列设置为,RAID 0,1,(,RAID,,为,Redundant Arrays of Independent Disks,的简称,中文为廉价冗余磁盘阵列)。,2024/9/13,92,二 数据库,1,、加大了数据缓存(,data cache,) 和存储过程缓存(,procedure cache,),2,、配置最大在线,CPU,数目,3,、加大,ASE,的对象描述的缓存数(,number of open objects,)为,8000,。,2024/9/13,93,4,、加大,ASE,的索引描述的缓存数(,number of open indexes,)为,3500,。,5,、由于有超长,SQL,,加大数据库堆栈的大小(,stack size,)。,6,、截断事务,清除日志,防止日志满而挂起执行进程。,2024/9/13,94,7,、原地级市的征管软件数据库是复制有效的,是要把数据复制到省局,所以必须使用,dbcc settrunc(ltm,ignore),设置忽略复制事务,防止日志满而挂起执行进程。,2024/9/13,95,三 算法,硬件环境和软件环境基本确定后,另一个提高数据转换效率的办法就是改进数据转换程序的算法。,1,、把数据库从一个数据库备份后,然后恢复到另一个数据库,表统计信息可能无效,需要更新表统计信息。,2024/9/13,96,2,、数据转换程序编写的初始阶段,是使用存储过程的。,3,、受第,2,点的启发,把大部分存储过程修改为一句句,sql,语句,使得每个事务大为缩小,一个,sql,语句就是一个事务,使得系统效率进一步提高。,4,、把,sql,语句中条件中含有,in,的语句改为含有,EXISTS,的语句。,2024/9/13,97,5,、检索数据,最快速的办法利用有效索引。,6,、有些大表的数据某部分数据需要经常用到,其他数据不会使用到,这样可以把大表数据按一定条件检索要转换的数据建成中间表,减少运算扫描大表的时间,需要使用时检索中间表就可以了。,2024/9/13,98,6.4,提高数据导入的性能,为提高,sql loader,导入数据的速度,采用了:,1,、把,sql loader,命令拆分为,3,到,6,个任务,尽量做到每个任务需要导入的数据量相当,这样几个任务同时运行,加快数据导入速度。经过测试,导入速度可以提高,3,到,6,倍。,2024/9/13,99,2,、导入数据前,先把原表的索引、外键删除,以减少建立索引的时间,减少外键关系的检测,数据导入后再重建索引和外键。重建索引和外键时加上,nolog,选项,抑制日志的产生。,3,、加大,ORACLE,重做日志的大小,原只有,100M,,加大到,500M,,减少数据日志交换。,2024/9/13,100,谢谢,2024/9/13,101,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 大学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!