一种结构化数据的版本管理方法与流程

文档序号:11154427阅读:303来源:国知局
本发明涉及计算机
技术领域
,具体涉及一种结构化数据的版本管理方法。
背景技术
:目前很多应用系统都会要求对结构化数据提供版本管理,包括可以查看结构化数据被修改的历史痕迹;能够对比不同版本之间的结构化数据差异;查看具体某个版本结构化数据的情况等等,结构化数据是指存储在数据库里的行数据,结构化数据可以用二维表的结构来实现逻辑表达,在关系模型中,结构化数据通过二维表来表示,一个关系就是一个二维表。目前对版本管理方案中主要针对电子文档、应用程序,通过开发人员在完成对电子文档、应用程序的更新后手动的添加版本标识符的方式来实现,例如为了使用户区分不同版本的应用程序,开发人员在发布应用程序的版本包时手动的更新一下版本号。但是这种通常的版本管理方式只适用于电子文档和应用程序等这种仅面向用户时的版本区分,对于结构化数据的版本管理,如果沿用这种版本管理方案,没有考虑到结构化数据的数据内容情况,例如开发人员每次更新版本时所做的结构化数据更新,在版本管理时缺乏能够自定义的结构化数据版本管理,从而无法解决不同业务场景下的版本管理需求,无法给开发人员通过不同版本管理结构化数据带来便利性。技术实现要素:本发明的目的在于提供一种结构化数据的版本管理方法,用于实现针对不同业务提供差异化的版本管理,便于开发人员管理结构化数据的多次更新,提高开发效率。为了达到上述目的,本发明采用这样的如下技术方案:本发明提供一种结构化数据的版本管理方法,包括:步骤1、将需要纳入版本管理的结构化数据保存到数据库中,并确定所述结构化数据对应的数据库对象;步骤2、获取所述数据库对象对应的多个字段和所述多个字段分别对应的字段说明;步骤3、根据所述结构化数据的属性配置信息从所述数据库对象对应的多个字段中选择出关键字段,并在所述关键字段对应的字段说明中配置关键信息;步骤4、实时检测所述关键字段对应的关键信息是否发生更新,当所述关键信息发生更新时,对所述结构化数据当前采用的大版本标识号进行更新,保持所述结构化数据当前采用的小版本标识号不变,所述结构化数据采用大小版本标识号同时进行版本管理。采用上述技术方案后,本发明提供的技术方案将有如下优点:首先确定结构化数据保存到数据库时对应的数据库对象,然后获取数据库对象对应的多个字段和多个字段分别对应的字段说明,接下来根据结构化数据的属性配置信息从数据库对象对应的多个字段中选择出关键字段,并在关键字段对应的字段说明中配置关键信息,最后实时检测关键字段对应的关键信息是否发生更新,当关键信息发生更新时,对结构化数据当前采用的大版本标识号进行更新,保持结构化数据当前采用的小版本标识号不变。由于本发明实施例中的结构化数据采用大小版本标识号同时进行版本管理,通过数据库对象的字段说明中关键信息的更新确定结构化数据发生修改,此时可以自动的触发大版本标识号的更新,而在结构化数据中小版本标识号保持不变,开发人员能够灵活自定义数据版本管理规则,无需开发人员介入,实现业务规则调整零编码,并能够实现对关键数据的版本管理,从而可以支持复杂业务的版本管理。附图说明图1为本发明实施例提供一种结构化数据的版本管理方法的流程方框示意图;图2为本发明实施例提供的结构化数据的版本管理方法的实现原理示意图。具体实施方式本发明实施例提供了一种结构化数据的版本管理方法,用于实现针对不同业务提供差异化的版本管理,便于开发人员管理结构化数据的多次更新,提高开发效率。为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部实施例。基于本发明中的实施例,本领域的技术人员所获得的所有其他实施例,都属于本发明保护的范围。以下分别进行详细说明。本发明的方法通过引进大小数据版本的方法,解决不同业务的数据版本管理的需求,缩短开发周期,提高开发效率。本发明实施例涉及对结构化数据进行版本管理的方法,其中,结构化数据是指存储在数据库里的行数据,结构化数据是可以用二维表结构来逻辑表达实现的数据。本发明提供的结构化数据版本管理的方法,以实现对不同业务的不同版本管理的需求,缩短开发周期,提高开发效率。本发明结构化数据的版本管理方法的一个实施例,请参阅图1所示,可以包括如下步骤:步骤1、将需要纳入版本管理的结构化数据保存到数据库中,并确定结构化数据对应的数据库对象。在本发明实施例结构化数据可以根据开发人员的需要配置是否需要纳入版本管理,对于需要纳入版本管理的结构化数据保存到数据库中,并确定结构化数据对应的数据库对象。结构化数据的具体内容和配置属性可以根据具体场景来确定,结构化数据在数据库中对应的数据库对象可以有多种,例如数据库对象有:数据库(database)、表(table)、视图(view)、存储过程(proc)、触发器(trigger)、索引(index)、事务(transaction)等。举例说明,设置需要纳入版本管理的结构化数据,选择该结构化数据保存到数据库中所对应的数据库对象,并配置该对象的唯一标识。步骤2、获取数据库对象对应的多个字段和多个字段分别对应的字段说明。在本发明实施例中,数据库对象可以配置有多个字段,对于每个字段都有相应的字段说明,列出该对象对应的字段和字段说明。举例说明,数据库对象是一个数据库表,则根据该表的表结构信息,列出该表的所有字段和字段说明,然后触发步骤3执行。步骤3、根据结构化数据的属性配置信息从数据库对象对应的多个字段中选择出关键字段,并在关键字段对应的字段说明中配置关键信息。在本发明实施例中,根据开发人员对结构化数据的属性配置信息可以确定哪些字段可以是关键字段,配置需要纳入版本管理的字段即关键字段,在关键字段的字段说明中填写关键信息,根据实际情况配置数据库对象的关键信息,未配置的字段默认为非关键信息。从数据库对象对应的多个字段中选择出关键字段,该关键字段的修改涉及的是结构化数据中重要内容的更新。在本发明的一些实施例中,步骤3在关键字段对应的字段说明中配置关键信息,包括:在关键字段对应的字段说明中配置是否在页面显示关键字段、关键字段的值显示处理、关键字段的显示顺序。其中,配置需要纳入版本管理的关键字段的关键信息,根据实际情况配置该数据库对象的关键信息,未配置的字段默认为非关键信息,配置关键字段是否在页面显示该字段、字段值的显示处理、字段的显示顺序,这些关键信息的变更涉及到结构化数据中重要内容的更新,因此可以选择是否在页面显示关键字段、关键字段的值显示处理、关键字段的显示顺序作为关键信息。步骤4、实时检测关键字段对应的关键信息是否发生更新,当关键信息发生更新时,对结构化数据当前采用的大版本标识号进行更新,保持结构化数据当前采用的小版本标识号不变,结构化数据采用大小版本标识号同时进行版本管理。在本发明实施例中,对于结构化数据的更新监控可以通过对数据库对象中多个字段的实时检测来完成,结构化数据采用大小版本标识号同时进行版本管理,即在对结构化数据进行版本管理时,该结构化数据在版本标识号中可以同时配置大小版本标识号,实时检测关键字段对应的关键信息是否发生更新,当关键信息发生更新时,对结构化数据当前采用的大版本标识号进行更新,保持结构化数据当前采用的小版本标识号不变,因此开发人员通过该大版本标识号的更新就可以确定结构化数据的关键信息有更新,从而开发人员通过版本标识号的自动更新就可以确定结构化数据的内容变动情况。在本发明的一些实施例中,步骤3根据结构化数据的属性配置信息从数据库对象对应的多个字段中选择出关键字段之后,该方法还包括:选择数据库对象对应的多个字段中除关键字段以外的其它字段作为非关键字段,并在非关键字段对应的字段说明中配置非关键信息;实时检测非关键字段对应的非关键信息是否发生更新,当非关键信息发生更新时,对结构化数据当前采用的大版本标识号保持不变,对结构化数据当前采用的小版本标识号进行更新;当关键信息发生更新且非关键信息发生更新时,对结构化数据当前采用的大版本标识号进行更新,对结构化数据当前采用的小版本标识号进行更新。在本发明实施例中,根据开发人员对结构化数据的属性配置信息可以确定哪些字段可以是非关键字段,配置需要纳入版本管理的非关键字段,在非关键字段的字段说明中填写非关键信息,根据实际情况配置数据库对象的非关键信息,未配置的字段默认为非关键信息。从数据库对象对应的多个字段中选择出非关键字段,该非关键字段的修改涉及的是结构化数据中非重要内容的更新。举例说明如下:大版本标识号采用版本数字标识来完成,例如V1.0、V3.0等标识来表示不同的版本,数据版本规则为【数字+点+数字】如版本号【1.2】,其中1代表大版本标识号,2代表小版本标识号,大版本标识号是指由数据关键信息的修改引起,小版本标识号是指由非关键信息修改引起。在本发明的一些实施例中,步骤3在关键字段对应的字段说明中配置关键信息之后,该方法还包括:判断用户对结构化数据是否启动大小版本管理方式;若用户启动大小版本管理方式,获取结构化数据当前采用的大版本标识号和当前采用的小版本标识号,然后触发如下步骤执行:实时检测关键字段对应的关键信息是否发生更新。其中,本发明实施例中还可以设置大小版本管理方式的启动判断,配置是否启用大小版本管理。数据版本规则中包括大版本标识号和小版本标识号。大版本标识号是指由数据关键信息的修改引起,小版本标识号是指由非关键信息修改引起,系统可按照业务实际需求,按需启用大小版本标识号。例如,大版本标识号的更新可以是采用数字递增的方式,例如简单的从1.0升级到2.0。进一步的,在本发明的一些实施例中,判断用户对结构化数据是否启动大小版本管理方式之后,该方法还可以包括:若用户没有启动大小版本管理方式,判断用户对结构化数据是否启动大版本管理方式;若用户启动大版本管理方式,获取结构化数据当前采用的大版本标识号;实时检测关键字段对应的关键信息是否发生更新,当关键信息发生更新时,对结构化数据当前采用的大版本标识号进行更新。在本发明的一些实施例中,还可以根据用户的需要只采用大版本管理方式,则只有在关键信息发生更新时才会发生版本更新,对于涉及非关键新的更新,不需要做版本标识码的变更,适用于对结构化数据做重大修改的场景。在本发明的一些实施例中,除了执行前述场景中的步骤之外,该方法还包括:判断结构化数据是否包含关联数据信息;若结构化数据包含关联数据信息,按照步骤1至步骤4中对结构化数据的版本管理方式,根据关联数据信息对应的关键信息更新关联数据信息的大小版本标识号。其中,对于结构化数据,还可以配置该结构化数据的关联数据信息,配置是否包含该数据是否包含关联数据信息,如果包含关联数据信息,请按照步骤1到4配置相关信息。举例说明,如图2所示,结构化数据具体为业务对象为例进行说明,首先设置需要纳入版本管理的业务对象,选择该业务对象所涉及的主表,并配置该主表的主键,支持联合主键,根据该主表的表结构信息,列出该主表的所有字段和字段说明,然后配置需要纳入版本管理的关键信息,根据实际情况配置该业务的关键信息,未配置的信息项默认为非关键信息,接下来配置是否启用大小版本管理,用户可按照业务实际需求,按需同时启用大小版本,或者仅启用大版本管理。配置该主表是否包含从表信息,如果包含从表信息,请选择所包含的从表信息,并进行关联外键的配置;支持包含多个从表信息,从表包含从表的业务需求,从表的其他信息请按照步骤1到4配置相关信息。进一步的,在本发明的一些实施例中,该方法还包括:确定结构化数据包含的关联数据信息是否为多个;若结构化数据包含多个关联数据信息,按照步骤1至步骤4中对结构化数据的版本管理方式,同时更新多个关联数据信息的大小版本标识号。其中,配置结构化数据是否包含关联数据信息,如果包含关联数据信息,请选择所包含的关联数据信息,并进行数据关系的配置,支持包含多个关联数据信息,关联新包含关联信息的业务需求;关联信息的配置请按照步骤1到4进行操作。本发明实施例支持按照关键信息和非关键信息进行大小数据版本的管理,如关键信息更新版本从1.0更新为2.0,非关键信息更新,则将数据版本从1.0更新为1.1。通过引入大小版本能够区分出数据版本的变更是否是由关键信息引起,针对不同版本采用不同的管理机制,从而提高数据质量的管理。关联,关键信息对应大版本,非关键信息对应小版本。本发明的可扩展支持多种数据库,如Oracle、Sybase、SQLServer、MYSQL等,目前已经支持Oracle适配器,mysql适配器。本发明实施例支持用户自定义数据版本规则,按照数据包含的字段自定义设置关键和非关键信息,开发零编码:用户按需自定义不要业务的数据进行版本管理,规则的调整,无需开发人员介入,真正实现规则修改零编码。并能够实现对关键数据、非关键数据的版本管理;支持复杂业务的版本管理。通过前述实施例的举例说明可知,首先确定结构化数据保存到数据库时对应的数据库对象,然后获取数据库对象对应的多个字段和多个字段分别对应的字段说明,接下来根据结构化数据的属性配置信息从数据库对象对应的多个字段中选择出关键字段,并在关键字段对应的字段说明中配置关键信息,最后实时检测关键字段对应的关键信息是否发生更新,当关键信息发生更新时,对结构化数据当前采用的大版本标识号进行更新,保持结构化数据当前采用的小版本标识号不变。由于本发明实施例中的结构化数据采用大小版本标识号同时进行版本管理,通过数据库对象的字段说明中关键信息的更新确定结构化数据发生修改,此时可以自动的触发大版本标识号的更新,而在结构化数据中小版本标识号保持不变,开发人员能够灵活自定义数据版本管理规则,无需开发人员介入,实现业务规则调整零编码,并能够实现对关键数据的版本管理,从而可以支持复杂业务的版本管理。另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本发明而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘、U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。综上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照上述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对上述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1