差异数据的处理方法和装置制造方法及图纸

技术编号:8161581 阅读:190 留言:0更新日期:2013-01-07 19:34
本发明专利技术公开了一种差异数据的处理方法和装置,其中,该方法包括:在需要将第一数据集更新为第二数据集的情况下,对第一数据集与第二数据集之间的差异进行分类;通过多个差异信息集表示第一数据集与第二数据集之间的差异,其中,每个差异信息集表示第一数据集与第二数据集之间一个类型的差异;根据多个差异信息集对第一数据集进行更新。本发明专利技术通过对第一数据集与第二数据集之间的差异进行分类,对多个差异信息集表示第一数据集与第二数据集之间一个类型的差异,并根据多个差异信息集对第一数据集进行更新,能够在数据量很大的情况下,快速的生成差异并完成数据的更新,提高数据更新的效率并且避免更新数据时占用大量的存储空间。

【技术实现步骤摘要】

本专利技术涉及计算机领域,具体地,涉及一种差异数据的处理方法和装置
技术介绍
随着每个公司业务的增长和规模的增大,数据量都会呈现几何级的增长;而采用传统技术导入数据和比较差异可能需要数小时或者数天,而长时间的操作在线数据库对业务影响很大,不能满足业务发展需要。在数据量很大的情况下,很难进行数据的快速导入、生成差异或更新。针对相关技术中无法快速生成差异数据并导入或更新数据的问题,目前尚未提出有效的解决方案。
技术实现思路
针对相关技术中无法快速导入数据、生成差异或更新数据的问题,本专利技术提出一种差异数据的处理方法和装置,能够在数据量很大的情况下,快速的导入数据、生成差异、或更新数据。本专利技术的技术方案是这样实现的根据本专利技术的一个方面,提供了一种差异数据的处理方法,该方法包括在需要将第一数据集更新为第二数据集的情况下,对第一数据集与第二数据集之间的差异进行分类;通过多个差异信息集表示第一数据集与第二数据集之间的差异,其中,每个差异信息集表示第一数据集与第二数据集之间一个类型的差异;根据多个差异信息集对第一数据集进行更新。其中,第一数据集与第二数据集之间的差异的分类包括以下类型之中的至少之第一类型,表示第一数据集相比于第二数据集增加的数据;第二类型,表示第一数据集相比于第二数据集缺少的数据;第三类型,表示第一数据集相比于第二数据集需要变更的数据。并且,通过多个差异信息集表示第一数据集与第二数据集之间的差异包括以下至少之一通过第一差异信息集表示第一类型的差异;通过第二差异信息集表示第二类型的差异;通过第二差异/[目息集表不第二类型的差异。该方法进一步包括通过相同信息集表示多个数据集之间彼此相同的数据。此外,通过多个差异信息集表示第一数据集与第二数据集之间的差异进一步包括将第一数据集与第二数据集之间存在差异的数据导入到多个差异信息集中。另外,在导入数据的过程中,禁止根据导入的数据生成索引和/或外键;并且,在导入数据之后,根据导入的全部数据生成该数据的索引和/或外键。并且,第一数据集为存储在数据库中的网站信息,第二数据集为更新后的网站信肩、O可选地,第一数据集可以为云端存储的网站身份证业务中的铭牌数据,第二数据集可以为更新后的铭牌数据。而且,通过列表的方式来存储每 个差异信息集。根据本专利技术的另一方面,提供了一种差异数据的处理装置。该装置包括分类模块,用于在需要将第一数据集更新为第二数据集的情况下,对第一数据集与第二数据集之间的差异进行分类;构建模块,用于构建多个差异信息集,并通过多个差异信息集表示第一数据集与第二数据集之间的差异,其中,每个差异信息集表示第一数据集与第二数据集之间一个类型的差异;更新模块,用于根据多个差异信息集对第一数据集进行更新。该装置可进一步包括导入模块,用于根据差异的类型,将第一数据集与第二数据集之间存在差异的数据导入到构建的多个差异信息集中,其中,在导入数据的过程中,导入模块禁止根据导入的数据生成索引和/或外键;并且,在导入数据之后,导入模块根据导入的全部数据生成该数据的索引和/或外键。本专利技术在需要将第一数据集更新为第二数据集的情况下,对第一数据集与第二数据集之间的差异进行分类,通过多个差异信息集表示第一数据集与第二数据集之间一个类型的差异,并根据多个差异信息集对第一数据集进行更新,能够在数据量很大的情况下,快速的生成差异并完成数据的更新,提高数据更新的效率并且避免更新数据时占用大量的存储空间。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图I是根据本专利技术实施例的差异数据的处理方法流程图;图2是根据本专利技术实施例的差异数据的处理装置的框图。具体实施例方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本专利技术保护的范围。根据本专利技术的实施例,提供了一种差异数据的处理方法。如图I所示,根据本专利技术实施例的差异数据的处理方法包括步骤S101,在需要将第一数据集更新为第二数据集的情况下,对第一数据集与第二数据集之间的差异进行分类;步骤S103,通过多个差异信息集表示第一数据集与第二数据集之间的差异,其中,每个差异信息集表示第一数据集与第二数据集之间一个类型的差异;步骤S105,根据多个差异信息集对第一数据集进行更新。其中,第一数据集与第二数据集之间的差异的分类包括以下类型之中的至少之第一类型,表示第一数据集相比于第二数据集增加的数据;第二类型,表示第一数据集相比于第二数据集缺少的数据;第三类型,表示第一数据集相比于第二数据集需要变更的数据。并且,通过多个差异信息集表示第一数据集与第二数据集之间的差异包括以下至少之一通过第一差异信息集表示第一类型的差异;通过第二差异信息集表示第二类型的差异;通过第二差异/[目息集表不第二类型的差异。该方法进一步包括通过相同信息集表示多个数据集之间彼此相同的数据。此外,通过多个差异信息集表示第一数据集与第二数据集之间的差异进一步包括将第一数据集与第二数据集之间存在差异的数据导入到多个差异信息集中。另外,在导入数据的过程中,禁止根据导入的数据生成索引和/或外键;并且,在导入数据之后,根据导入的全部数据生成该数据的索引和/或外键。因此,由于在导入数据的过程中不生成数据的索引和/或外键,并在导入之后一并生成,能够避免因为生成索引和/或外键而中断数据的导入,有效提高数据导入的速率。。并且,第一数据集为存储在数据库中的网站信息,第二数据集为更新后的网站信肩、O而且,通过列表的方式来存储每个差异信息集。例如,在实际应用中,本专利技术快速导入、生成和更新数据的具体过程如下(I)快速导入数据到数据库的步骤al)替换文件中的表名为临时表名,例如,原来的表名称为tb_a,则该处将原表名替换为 tb_a_realtime ;bl)在导入数据语句前禁用表的索引/外键等约束;Cl)在导入数据语句结束后开启表的索引/外键等约束;dl)将文件格式转换为与操作系统相同的格式,字符集为数据库中指定的字符集,以防止出现乱码;el)使用批量工具 / 命令 oracle 的 sql loader、mysql 的 mysqlimport、mysql 的命令('which mysql' -h$ {db_host} -u$ {db_user} -p$ {db_pwd} $ {db_name} < $file_name)等导入数据。通过以上步骤即可以实现快速导入数据,比普通方法(直接执行SQL、非批量等)快至少10倍。(2)快速生成差异数据的步骤a2)新建保存中间结果的表若干个(备份在线表、相同内容表、比较中间表等),全部用中间表进行操作可以避免对现网业务产生影响;b2)备份在线表和新表数据;c2)生成在线表和新表相同数据到相同内容表;d2)删除备份在线表里面在相同内容表里面的数据;e2)删除备份新表里面在相同内容表里面的数据;f2)从删除相同记录本文档来自技高网...
差异数据的处理方法和装置

【技术保护点】
一种差异数据的处理方法,其特征在于,包括:在需要将第一数据集更新为第二数据集的情况下,对所述第一数据集与所述第二数据集之间的差异进行分类;通过多个差异信息集表示所述第一数据集与所述第二数据集之间的差异,其中,每个差异信息集表示所述第一数据集与所述第二数据集之间一个类型的差异;根据多个差异信息集对所述第一数据集进行更新。

【技术特征摘要】

【专利技术属性】
技术研发人员:龙专赵武何振科
申请(专利权)人:北京奇虎科技有限公司奇智软件北京有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1