CN104375939A - 一种版本控制的方法及系统 - Google Patents
一种版本控制的方法及系统 Download PDFInfo
- Publication number
- CN104375939A CN104375939A CN201410686951.9A CN201410686951A CN104375939A CN 104375939 A CN104375939 A CN 104375939A CN 201410686951 A CN201410686951 A CN 201410686951A CN 104375939 A CN104375939 A CN 104375939A
- Authority
- CN
- China
- Prior art keywords
- logical partition
- program
- parameter information
- described logical
- version control
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Stored Programmes (AREA)
Abstract
本申请提供了一种版本控制的方法,包括:创建至少一个逻辑分区,所述逻辑分区对当前版本进行逻辑划分;定义每个所述逻辑分区的使用功能以及所述逻辑分区之间的流转顺序;获取每个所述逻辑分区中程序的参数信息;比较所述逻辑分区之间的程序的参数信息,若所述参数信息超过预设阈值范围,则通过设置参数控制程序变更路径,并按照所述变更路径对每个所述逻辑分区中的程序逐层提升和验证,进行版本控制。本申请还提供了一种核心系统投产变更过程中版本控制的系统。可以有效的实现版本控制。
Description
技术领域
本申请涉及系统更新领域,特别涉及一种版本控制的方法及系统。
背景技术
随着计算机技术的不断提高,农行新一代核心银行综合业务系统使用类4GL的高级开发语言进行系统版本的开发和更新,且新一代核心系统采用统一架构和建模研发方式,系统内部高耦合、低内聚,程序关联复杂。
采用传统的配置管理工具进行农行新一代核心系统变更过程中的版本控制时,将类4GL语言通过代码生成器解析成Cobol等常用代码,导入至传统配置管理工具中,只能实现程序中间过程的管理,无法还原至源代码及其对照关系,不能有效的对农行新一代核心系统变更过程进行版本控制。
因此,如何对农行新一代核心系统变更过程进行有效的版本控制是本领域技术人员目前需要解决的技术问题。
发明内容
本申请所要解决的技术问题是提供一种版本控制的方法及系统,解决了现有技术中不能有效的进行版本控制的问题。
其具体方案如下:
一种版本控制的方法,该方法包括:
创建至少一个逻辑分区,所述逻辑分区用于对当前版本进行逻辑划分;
定义每个所述逻辑分区的使用功能以及所述逻辑分区之间的流转顺序;
获取每个所述逻辑分区中程序的参数信息;
比较所述逻辑分区之间的程序的参数信息,若所述参数信息超过预设阈值范围,则通过设置参数控制程序变更路径,并按照所述变更路径对每个所述逻辑分区中的程序逐层提升和验证,进行版本控制。
上述的方法,优选的,所述获取逻辑分区中程序的参数信息,包括:
存储每个所述逻辑分区的信息以及每个所述逻辑分区中程序的参数信息;
标记和跟踪每个所述逻辑分区中程序的测试状态,并存储相应的参数信息;
查询所述存储的程序的参数信息。
上述的方法,优选的,还包括:
为每个所述逻辑分区分配唯一的键值。
上述的方法,优选的,所述查询存储的程序的参数信息是根据每个所述逻辑分区的唯一键值进行查询的。
上述的方法,优选的,所述创建至少一个逻辑分区是按照标准项目的生命周期进行创建的。
上述的方法,优选的,每个所述逻辑分区用字段version标识。
上述的方法,优选的,所述获取每个所述逻辑分区中程序的参数信息具体包括获取每个所述逻辑分区中程序的修改时间和编译状态。
上述的方法,优选的,还包括保存和备份每个所述逻辑分区中的程序的源码、属性或关联关系。
一种版本控制的系统,该系统包括:
创建单元:用于创建至少一个逻辑分区,所述逻辑分区是对当前版本进行逻辑划分;
定义单元:用于定义每个所述逻辑分区的使用功能以及所述逻辑分区之间的流转顺序;
获取单元:用于获取每个所述逻辑分区中程序的参数信息;
比较单元:用于比较所述逻辑分区之间的程序的参数信息,若所述参数信息超过预设阈值范围,则通过设置参数控制程序变更路径,并按照所述变更路径对每个所述逻辑分区中的程序逐层提升和验证,进行版本控制。
上述的系统,优选的,所述获取单元包括:
存储单元:用于存储每个所述逻辑分区的信息以及每个所述逻辑分区中程序的参数信息;
标记和跟踪单元:标记和跟踪每个所述逻辑分区中程序的测试状态,并存储相应的参数信息;
查询单元:查询所述存储的程序的参数信息。
本申请提供的核心系统投产变更过程中版本控制的方法,通过创建逻辑分区,定义逻辑分区的使用功能及流转顺序,获取每个逻辑分区中程序的参数信息,比较各个逻辑分区之间的参数信息,若参数信息超过预设阈值范围,则通过设置参数控制程序变更路径,并按照所述变更路径对每个所述逻辑分区中的程序逐层提升和验证,可以有效的实现变更过程中的版本控制。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请的一种版本控制方法实施例1的流程图;
图2是本申请的一种版本控制方法实施例2的流程图;
图3是本申请的一种版本控制方法实施例1具体应用;
图4是本申请的一种版本控制系统实施例1的示意图;
图5是本申请的一种版本控制系统实施例2的示意图。
具体实施方式
本发明的核心是提供一种版本控制的方法及系统,解决了现有技术中不能有效的进行版本控制的问题。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
参考图1,示出了本申请一种版本控制方法实施例1的流程图,可以包括以下步骤:
步骤S101:创建至少一个逻辑分区,所述逻辑分区用于对当前版本进行逻辑划分;
本申请中的版本控制是维护工程蓝图的标准作法,能追踪工程蓝图从诞生一直到定案的过程。此外,版本控制也是一种软件工程技巧,借此能在软件开发的过程中,确保由不同人所编辑的同一程式档案都得到同步。
大型企业的核心系统如银行的核心系统的所有相关数据和程序均存储在主机资源存储库中,主机资源存储库的研发过程为:先将待操作的存储库中的资源下载到本地存储库中,在本地计算机上对待操作的资源进行更新等操作,操作完成后,将更新完的资源上传到服务器。
所述的主机资源存储库采用的是数据库,主机资源存储库中的程序的源码、属性或关联关系等重要信息均保存在数据库中。本申请中的数据库是指以一定方式储存在一起、能为多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。用户可以对文件中的数据进行新增、截取、更新、删除等操作。
本申请中的数据库具体采用的是DB2数据库,DB2数据库具有较好的可伸缩性,可支持从大型机到单用户环境,应用于OS/2、Windows等平台下。DB2提供了高层次的数据利用性、完整性、安全性、可恢复性,以及小规模到大规模应用程序的执行能力,具有与平台无关的基本功能和SQL命令。DB2采用了数据分级技术,能够使大型机数据很方便地下载到LAN数据库服务器,使得客户机/服务器用户和基于LAN的应用程序可以访问大型机数据,并使数据库本地化及远程连接透明化。它以拥有一个非常完备的查询优化器而著称,其外部连接改善了查询性能,并支持多任务并行查询。DB2具有很好的网络支持能力,每个子系统可以连接十几万个分布式用户,可同时激活上千个活动线程,对大型分布式应用系统尤为适用。
所述在主机资源存储库中创建多个逻辑分区是按照标准项目的生命周期进行创建的。标准项目的生命周期是一个项目从开始到结束的全过程,大致分为四个阶段:概念阶段、规划阶段、实施阶段和结束阶段。
所述在主机资源存储库中创建的逻辑分区是根据当前版本的需要任意划分的,个数也是根据需要定的,并不局限于固定的划分方式或固定的划分数目。
步骤S102:定义每个所述逻辑分区的使用功能以及所述逻辑分区之间的流转顺序;
一般情况下,创建的各个逻辑分区的使用功能不同,创建完成后,要人为的为创建的各个逻辑分区进行使用功能的分配,以方便不同功能程序的分类和控制,且各个分区中的程序是相对独立的,完整的。
在定义各个逻辑分区的使用功能时,也要同时定义各个逻辑分区的流转顺序,以便保证程序版本获取路径的唯一性。
步骤S103:获取每个所述逻辑分区中程序的参数信息;
所述获取的每个逻辑分区中程序的参数信息一般包括程序的修改时间和编译状态等重要信息。
步骤S104:比较所述逻辑分区之间的程序的参数信息,若所述参数信息超过预设阈值范围,则通过设置参数控制程序变更路径,并按照所述变更路径对每个所述逻辑分区中的程序逐层提升和验证,进行版本控制。
系统对从不同逻辑分区中查询的程序的参数信息进行比较,如果不同逻辑分区之间的查询信息出现差异,超过预设阈值范围,则说明对应的程序有所改变,程序有修改、更新或删除等操作,这时则通过设置参数控制程序变更路径,并按照变更的路径对各个逻辑分区中的程序进行逐层提升和验证,实现版本控制。
本实施例中,利用共用数据库中程序的参数信息的共享,预先进行每个逻辑分区的使用功能定义,在数据库表中增加各个逻辑分区的字段标识;在当前版本投产变更前对数据库表中存储的程序参数信息的查询比较,能够有效的实现核心系统变更过程中版本的控制。
参考图2,示出了本申请一种版本控制方法实施例2的流程图,可以包括以下步骤:
步骤S105:存储每个所述逻辑分区的信息以及每个所述逻辑分区中程序的参数信息;
每个所述逻辑分区在数据库表中一般使用字段version标识,例如有3个逻辑分区,那么在数据库表中分别使用字段V1、V2和V3标识。
步骤S106:标记和跟踪每个所述逻辑分区中程序的测试状态,并存储相应的参数信息;
实时标记和跟踪各个逻辑分区中程序的测试状态,对各个逻辑分区中的程序进行实时监控,并将相应的测试信息如测试结果、程序更改信息等存储到所述数据库表中。
步骤S107:查询所述存储的程序的参数信息。
核心系统自动的为数据库表中存储的各个逻辑分区分配地址,各个逻辑分区的地址是不同的,唯一的,系统默认将自动分配的地址作为数据库表中的唯一键值,系统根据这个唯一的键值查询对应逻辑分区中的程序的参数信息。
为每个逻辑分区增加逻辑分区字段标识,并为每个逻辑分区分配唯一的键值,方便在数据库表中查询所需要的逻辑分区的信息,也可以在任意时点执行不同生命周期阶段程序的版本比较,操作简单,相应效率快。
参考图3,示出了本申请一种版本控制方法实施例1的实际应用,本实施例在实际应用中,根据需要,可以在主机资源存储库中创建6个逻辑分区,分别为:开发测试环境、集成测试环境、系统测试环境、准生产环境、生产环境和应急修复环境。
定义的这6个逻辑分区的流转顺序为:开发测试环境→集成测试环境→系统测试环境→准生产环境→生产环境→应急修复环境→生产环境。
在数据库表中,这6个逻辑分区的标识分别为:V1、V2、V3、V4、V5和V6。
对划分的6个逻辑分区中的程序分别进行测试,在测试过程中标记和跟踪每个逻辑分区中的程序的测试状态,包括程序的测试进展和测试结果等参数信息,然后对逻辑分区之间的程序的测试结果等参数信息进行比较,若得到的参数信息出现差异,且差异超过允许的差异范围,则说明程序有改变,此时需要设置参数控制程序更改路径,然后按照新更改的路径对每个逻辑分区中的程序进行更新,并验证更新程序的可靠性,从而实现对核心系统版本的控制。
在本申请中,除了应用上述方法进行版本控制外,还可以采购或研发使用农行新一代核心银行综合业务系统的配置管理工具。
与上述本申请一种版本控制的方法实施例1所提供的方法相对应,参考图4,本申请还提供了一种版本控制的系统实施例1,在本实施例中,该系统包括:
创建单元101:用于创建至少一个逻辑分区,所述逻辑分区是对当前版本进行逻辑划分;
定义单元102:用于定义每个所述逻辑分区的使用功能以及所述逻辑分区之间的流转顺序;
获取单元103:用于获取每个所述逻辑分区中程序的参数信息;
比较单元104:用于比较所述逻辑分区之间的程序的参数信息,若所述参数信息超过预设阈值范围,则通过设置参数控制程序变更路径,并按照所述变更路径对每个所述逻辑分区中的程序逐层提升和验证,进行版本控制。
参考图5,本申请还提供了一种版本控制的系统实施例2,在本实施例中,所述获取单元103包括:
存储单元104:用于存储每个所述逻辑分区的信息以及每个所述逻辑分区中程序的参数信息;
标记和跟踪单元105:标记和跟踪每个所述逻辑分区中程序的测试状态,并存储相应的参数信息;
查询单元106:查询所述存储的程序的参数信息。
综上所述,本申请提供的一种版本控制的方法及系统采用数据库,能够有效的进行版本控制。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于系统类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本申请所提供的一种版本控制的方法及系统进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种版本控制的方法,其特征在于,该方法包括:
创建至少一个逻辑分区,所述逻辑分区用于对当前版本进行逻辑划分;
定义每个所述逻辑分区的使用功能以及所述逻辑分区之间的流转顺序;
获取每个所述逻辑分区中程序的参数信息;
比较所述逻辑分区之间的程序的参数信息,若所述参数信息超过预设阈值范围,则通过设置参数控制程序变更路径,并按照所述变更路径对每个所述逻辑分区中的程序逐层提升和验证,进行版本控制。
2.根据权利要求1所述的版本控制的方法,其特征在于,所述获取逻辑分区中程序的参数信息,包括:
存储每个所述逻辑分区的信息以及每个所述逻辑分区中程序的参数信息;
标记和跟踪每个所述逻辑分区中程序的测试状态,并存储相应的参数信息;
查询所述存储的程序的参数信息。
3.根据权利要求2所述的版本控制的方法,其特征在于,还包括:
为每个所述逻辑分区分配唯一的键值。
4.根据权利要求3所述的版本控制的方法,其特征在于,所述查询存储的程序的参数信息是根据每个所述逻辑分区的唯一键值进行查询的。
5.根据权利要求1所述的版本控制方法,其特征在于,所述创建至少一个逻辑分区是按照标准项目的生命周期进行创建的。
6.根据权利要求1所述的版本控制方法,其特征在于,每个所述逻辑分区用字段version标识。
7.根据权利要求1所述的版本控制方法,其特征在于,所述获取每个所述逻辑分区中程序的参数信息具体包括获取每个所述逻辑分区中程序的修改时间和编译状态。
8.根据权利要求2所述的版本控制方法,其特征在于,还包括保存和备份每个所述逻辑分区中的程序的源码、属性或关联关系。
9.一种版本控制的系统,其特征在于,该系统包括:
创建单元:用于创建至少一个逻辑分区,所述逻辑分区是对当前版本进行逻辑划分;
定义单元:用于定义每个所述逻辑分区的使用功能以及所述逻辑分区之间的流转顺序;
获取单元:用于获取每个所述逻辑分区中程序的参数信息;
比较单元:用于比较所述逻辑分区之间的程序的参数信息,若所述参数信息超过预设阈值范围,则通过设置参数控制程序变更路径,并按照所述变更路径对每个所述逻辑分区中的程序逐层提升和验证,进行版本控制。
10.根据权利要求9所述的版本控制系统,其特征在于,所述获取单元包括:
存储单元:用于存储每个所述逻辑分区的信息以及每个所述逻辑分区中程序的参数信息;
标记和跟踪单元:标记和跟踪每个所述逻辑分区中程序的测试状态,并存储相应的参数信息;
查询单元:查询所述存储的程序的参数信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410686951.9A CN104375939B (zh) | 2014-11-25 | 2014-11-25 | 一种版本控制的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410686951.9A CN104375939B (zh) | 2014-11-25 | 2014-11-25 | 一种版本控制的方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104375939A true CN104375939A (zh) | 2015-02-25 |
CN104375939B CN104375939B (zh) | 2017-05-31 |
Family
ID=52554874
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410686951.9A Active CN104375939B (zh) | 2014-11-25 | 2014-11-25 | 一种版本控制的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104375939B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111124459A (zh) * | 2018-10-31 | 2020-05-08 | 阿里巴巴集团控股有限公司 | 一种fpga云服务器服务逻辑的更新方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101068180A (zh) * | 2007-06-15 | 2007-11-07 | 腾讯科技(深圳)有限公司 | 网络游戏的主控系统、管理系统及管理方法 |
CN101876983A (zh) * | 2009-04-30 | 2010-11-03 | 国际商业机器公司 | 数据库分区方法与系统 |
US8725689B1 (en) * | 2007-10-11 | 2014-05-13 | Parallels IP Holdings GmbH | Method and system for creation, analysis and navigation of virtual snapshots |
-
2014
- 2014-11-25 CN CN201410686951.9A patent/CN104375939B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101068180A (zh) * | 2007-06-15 | 2007-11-07 | 腾讯科技(深圳)有限公司 | 网络游戏的主控系统、管理系统及管理方法 |
US8725689B1 (en) * | 2007-10-11 | 2014-05-13 | Parallels IP Holdings GmbH | Method and system for creation, analysis and navigation of virtual snapshots |
CN101876983A (zh) * | 2009-04-30 | 2010-11-03 | 国际商业机器公司 | 数据库分区方法与系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111124459A (zh) * | 2018-10-31 | 2020-05-08 | 阿里巴巴集团控股有限公司 | 一种fpga云服务器服务逻辑的更新方法及装置 |
CN111124459B (zh) * | 2018-10-31 | 2023-04-07 | 阿里巴巴集团控股有限公司 | 一种fpga云服务器服务逻辑的更新方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN104375939B (zh) | 2017-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11734293B2 (en) | System and method for client-side calculation in a multidimensional database environment | |
US11316742B2 (en) | Stateless resource management | |
Fosu et al. | Integration of Building Information Modeling (BIM) and Geographic Information Systems (GIS)–a literature review and future needs | |
Bird et al. | Update of the Computing Models of the WLCG and the LHC Experiments | |
US8719782B2 (en) | Integrated package development and machine configuration management | |
CN105094818A (zh) | 基于soa的自然资源综合应用构建方法及系统 | |
CN104423960A (zh) | 一种项目持续集成的方法及系统 | |
CN107515952A (zh) | 点云数据存储、并行计算和实时检索的方法及其系统 | |
CN105630988A (zh) | 一种快速检测空间数据变化并更新的方法及系统 | |
CN107533569A (zh) | 用于多维数据库环境中的沙箱支持的系统和方法 | |
CN104965735A (zh) | 用于生成升级sql脚本的装置 | |
CN103761189A (zh) | 一种测试用例管理方法及系统 | |
CN109716321B (zh) | N路散列连接 | |
US20160239544A1 (en) | Collaborative planning for accelerating analytic queries | |
US20170132545A1 (en) | Recency-based identification of area paths for target components | |
CN101719934B (zh) | 一种分布式数据统一汇总报表展示的方法、系统及装置 | |
Fisun et al. | Query parsing in order to optimize distributed DB structure | |
CN105630571A (zh) | 一种创建虚拟机的方法及装置 | |
CN105051681A (zh) | 利用平台层协调应用程序部署 | |
CN109150964B (zh) | 一种可迁移的数据管理方法及服务迁移方法 | |
CN104216731A (zh) | 实时更新 | |
CN104503751B (zh) | 基于soa的数据源切换方法和基于soa的数据源切换系统 | |
CN103971211A (zh) | 一种信息处理方法及装置 | |
CN110912982A (zh) | 芯片设计云计算系统及方法 | |
CN105446824A (zh) | 表增量获取方法及异地数据备份方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |