CN102855288B - 差异数据的处理方法和装置 - Google Patents

差异数据的处理方法和装置 Download PDF

Info

Publication number
CN102855288B
CN102855288B CN201210281317.8A CN201210281317A CN102855288B CN 102855288 B CN102855288 B CN 102855288B CN 201210281317 A CN201210281317 A CN 201210281317A CN 102855288 B CN102855288 B CN 102855288B
Authority
CN
China
Prior art keywords
data
data set
difference
different information
representations
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.)
Active
Application number
CN201210281317.8A
Other languages
English (en)
Other versions
CN102855288A (zh
Inventor
龙专
赵武
何振科
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qax Technology Group Inc
Original Assignee
Beijing Qianxin Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Qianxin Technology Co Ltd filed Critical Beijing Qianxin Technology Co Ltd
Priority to CN201210281317.8A priority Critical patent/CN102855288B/zh
Publication of CN102855288A publication Critical patent/CN102855288A/zh
Application granted granted Critical
Publication of CN102855288B publication Critical patent/CN102855288B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

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

Description

差异数据的处理方法和装置
技术领域
本发明涉及计算机领域,具体地,涉及一种差异数据的处理方法和装置。
背景技术
随着每个公司业务的增长和规模的增大,数据量都会呈现几何级的增长;而采用传统技术导入数据和比较差异可能需要数小时或者数天,而长时间的操作在线数据库对业务影响很大,不能满足业务发展需要。在数据量很大的情况下,很难进行数据的快速导入、生成差异或更新。
针对相关技术中无法快速生成差异数据并导入或更新数据的问题,目前尚未提出有效的解决方案。
发明内容
针对相关技术中无法快速导入数据、生成差异或更新数据的问题,本发明提出一种差异数据的处理方法和装置,能够在数据量很大的情况下,快速的导入数据、生成差异、或更新数据。
本发明的技术方案是这样实现的:
根据本发明的一个方面,提供了一种差异数据的处理方法,该方法包括:
在需要将第一数据集更新为第二数据集的情况下,对第一数据集与第二数据集之间的差异进行分类;
通过多个差异信息集表示第一数据集与第二数据集之间的差异,其中,每个差异信息集表示第一数据集与第二数据集之间一个类型的差异;
根据多个差异信息集对第一数据集进行更新。
其中,第一数据集与第二数据集之间的差异的分类包括以下类型之中 的至少之一:
第一类型,表示第一数据集相比于第二数据集增加的数据;
第二类型,表示第一数据集相比于第二数据集缺少的数据;
第三类型,表示第一数据集相比于第二数据集需要变更的数据。
并且,通过多个差异信息集表示第一数据集与第二数据集之间的差异包括以下至少之一:
通过第一差异信息集表示第一类型的差异;
通过第二差异信息集表示第二类型的差异;
通过第三差异信息集表示第三类型的差异。
该方法进一步包括:
通过相同信息集表示多个数据集之间彼此相同的数据。
此外,通过多个差异信息集表示第一数据集与第二数据集之间的差异进一步包括:
将第一数据集与第二数据集之间存在差异的数据导入到多个差异信息集中。
另外,在导入数据的过程中,禁止根据导入的数据生成索引和/或外键;并且,在导入数据之后,根据导入的全部数据生成该数据的索引和/或外键。
并且,第一数据集为存储在数据库中的网站信息,第二数据集为更新后的网站信息。
可选地,第一数据集可以为云端存储的网站身份证业务中的铭牌数据,第二数据集可以为更新后的铭牌数据。
而且,通过列表的方式来存储每个差异信息集。
根据本发明的另一方面,提供了一种差异数据的处理装置。
该装置包括:
分类模块,用于在需要将第一数据集更新为第二数据集的情况下,对第一数据集与第二数据集之间的差异进行分类;
构建模块,用于构建多个差异信息集,并通过多个差异信息集表示第一数据集与第二数据集之间的差异,其中,每个差异信息集表示第一数据集与第二数据集之间一个类型的差异;
更新模块,用于根据多个差异信息集对第一数据集进行更新。
该装置可进一步包括:
导入模块,用于根据差异的类型,将第一数据集与第二数据集之间存在差异的数据导入到构建的多个差异信息集中,其中,在导入数据的过程中,导入模块禁止根据导入的数据生成索引和/或外键;并且,在导入数据之后,导入模块根据导入的全部数据生成该数据的索引和/或外键。
本发明在需要将第一数据集更新为第二数据集的情况下,对第一数据集与第二数据集之间的差异进行分类,通过多个差异信息集表示第一数据集与第二数据集之间一个类型的差异,并根据多个差异信息集对第一数据集进行更新,能够在数据量很大的情况下,快速的生成差异并完成数据的更新,提高数据更新的效率并且避免更新数据时占用大量的存储空间。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例的差异数据的处理方法流程图;
图2是根据本发明实施例的差异数据的处理装置的框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
根据本发明的实施例,提供了一种差异数据的处理方法。
如图1所示,根据本发明实施例的差异数据的处理方法包括:
步骤S101,在需要将第一数据集更新为第二数据集的情况下,对第一数据集与第二数据集之间的差异进行分类;
步骤S103,通过多个差异信息集表示第一数据集与第二数据集之间的差异,其中,每个差异信息集表示第一数据集与第二数据集之间一个类型的差异;
步骤S105,根据多个差异信息集对第一数据集进行更新。
其中,第一数据集与第二数据集之间的差异的分类包括以下类型之中的至少之一:
第一类型,表示第一数据集相比于第二数据集增加的数据;
第二类型,表示第一数据集相比于第二数据集缺少的数据;
第三类型,表示第一数据集相比于第二数据集需要变更的数据。
并且,通过多个差异信息集表示第一数据集与第二数据集之间的差异包括以下至少之一:
通过第一差异信息集表示第一类型的差异;
通过第二差异信息集表示第二类型的差异;
通过第三差异信息集表示第三类型的差异。
该方法进一步包括:
通过相同信息集表示多个数据集之间彼此相同的数据。
此外,通过多个差异信息集表示第一数据集与第二数据集之间的差异进一步包括:
将第一数据集与第二数据集之间存在差异的数据导入到多个差异信息集中。
另外,在导入数据的过程中,禁止根据导入的数据生成索引和/或外键;并且,在导入数据之后,根据导入的全部数据生成该数据的索引和/或外键。因此,由于在导入数据的过程中不生成数据的索引和/或外键,并在导入之后一并生成,能够避免因为生成索引和/或外键而中断数据的导入,有效提高数据导入的速率。
并且,第一数据集为存储在数据库中的网站信息,第二数据集为更新后的网站信息。
而且,通过列表的方式来存储每个差异信息集。
例如,在实际应用中,本发明快速导入、生成和更新数据的具体过程 如下:
(1)快速导入数据到数据库的步骤:
a1)替换文件中的表名为临时表名,例如,原来的表名称为tb_a,则该处将原表名替换为tb_a_realtime;
b1)在导入数据语句前禁用表的索引/外键等约束;
c1)在导入数据语句结束后开启表的索引/外键等约束;
d1)将文件格式转换为与操作系统相同的格式,字符集为数据库中指定的字符集,以防止出现乱码;
e1)使用批量工具/命令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)从删除相同记录后的小记录集备份在线表和新表中生成差异数据;
g2)上述步骤b2和c2可以并行进行,d和e可以并行进行;并且使用了小表进行比较,因此极大加快了处理速度。
(3)快速更新数据的步骤:
a3)备份完整在线表数据,在出现错误的时候可恢复数据;
b3)新建保存中间结果的表若干个(备份在线表、备份新表、完全一致内容表),全部用中间表进行操作可以避免对现网业务产生影响;
c3)生成备份在线表数据;
d3)生成备份新表数据;
e3)从备份在线表和备份新表中获取完全一致内容表;
f3)删除备份在线表中在完全一致内容表中记录;
g3)删除备份新表中在完全一致内容表中记录;
h3)根据差异表中在线表需要删除的数据,删除在线表中的数据,并从备份在线表中将这部分数据删除;
i3)从差异表中获取在线表需要增加的数据插入到在线表中,并从备份新表中将这部分数据删除;
j3)将备份新表中更新单条内容数据生成到表A,更新多条内容数据生成到表B;
k3)从表A中顺序更新数据到在线表;
l3)从表B中顺序更新数据到在线表;
m3)数据更新完成后,比较在线表和新表数据,确保数据无误;
n3)上述步骤c3和d3可以并行进行,f3和g3可以并行进行,i3和j3可以并行进行,并且使用了小表进行更新,因此极大加快了处理速度,并且更新采用的是单条处理方式,不会对现网业务有影响;
具体地,本发明的上述方案可以应用与多种场景,例如,对于网站身份证(webid)业务,可以利用其中的网站域名和域名类型数据,上传到云端,实现地址栏铭牌显示用,铭牌打开后的详情就是这个数据库里面的数据;如果有最新的数据,则可以根据该最新的数据与已有数据之间的差异生成差异数据(对应于上述的差异信息集),将差异数据(删除/增加/修改)上传到云端;再根据差异数据更新现网网络内容服务商(ICP)数据。此时,第一数据集可以为云端存储的网站身份证业务中的铭牌数据,第二数据集可以为更新后的铭牌数据。因此,采用本发明的技术方案,数据的更新过程并不会影响到网站的正常业务,并且能够有效提高更新的效率。此外,由于借助于中间表(差异信息集),可以避免保存大量的相同数据(即,可以不存储相同数据集),减少存储空间的占用。
通过以上过程,可以快速的完成数据的处理时间,例如:
对于十万级的数据,导入数据、比较差异、更新数据可以在10分钟内完成;
对于百万级的数据,导入数据、比较差异、更新数据可以在1个小时内完成;
对于千万级的数据,导入数据、比较差异、更新数据可以在3个小时内完成。
因此,如上几个数量级的数据处理时间,比传统技术快很多倍。
根据本发明的实施例,还提供了一种差异数据的处理装置。
如图2所示,根据本发明实施例的差异数据的处理装置包括:
分类模块1,在需要将第一数据集更新为第二数据集的情况下,对第一数据集与第二数据集之间的差异进行分类;
构建模块2,用于构建多个差异信息集,并通过多个差异信息集表示第一数据集与第二数据集之间的差异,其中,每个差异信息集表示第一数据集与第二数据集之间一个类型的差异;
更新模块3,用于根据多个差异信息集对第一数据集进行更新。
此外,该装置可进一步包括:
导入模块(未示出),用于根据差异的类型,将第一数据集与第二数据集之间存在差异的数据导入到构建的多个差异信息集中,其中,在导入数据的过程中,导入模块禁止根据导入的数据生成索引和/或外键;并且,在导入数据之后,导入模块根据导入的全部数据生成该数据的索引和/或外键。
综上所述,借助于本发明的上述技术方案,在需要将第一数据集更新为第二数据集的情况下,对第一数据集与第二数据集之间的差异进行分类,通过多个差异信息集表示第一数据集与第二数据集之间一个类型的差异,并根据多个差异信息集对第一数据集进行更新,能够在数据量很大的情况下,快速的生成差异并完成数据的更新,提高数据更新的效率并且避免更新数据时占用大量的存储空间。本发明的技术方案能够在数据量很大的情况下,快速导入数据、生成差异或更新数据,这种做法能够保证快速导入的是最新的数据,快速比较最新数据和现在的数据并且生成差异数据,然后再根据差异数据更新现在的数据,因此,通过上述方案,可以快速的处理数据,并且处理过程对现网业务没有影响。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (8)

1.一种差异数据的处理方法,其特征在于,包括:
在需要将第一数据集更新为第二数据集的情况下,备份所述第一数据集与所述第二数据集,生成所述第一数据集和所述第二数据集相同数据到相同信息集,删除备份第一数据集中在所述相同信息集中的数据,删除备份第二数据集中在所述相同信息集中的数据,从删除相同数据后的备份第一数据集与备份第二数据集中生成差异数据,对所述第一数据集与所述第二数据集之间的差异进行分类;
将所述第一数据集与第二数据集之间存在差异的数据导入到多个差异信息集中,在导入数据的过程中,禁止根据导入的数据生成索引和/或外键;并且,在导入数据之后,根据导入的全部数据生成该数据的索引和/或外键,其中,每个差异信息集表示所述第一数据集与所述第二数据集之间一个类型的差异;
根据多个差异信息集对所述第一数据集进行更新。
2.根据权利要求1所述的处理方法,其特征在于,所述第一数据集与所述第二数据集之间的差异的分类包括以下类型之中的至少之一:
第一类型,表示所述第一数据集相比于所述第二数据集增加的数据;
第二类型,表示所述第一数据集相比于所述第二数据集缺少的数据;
第三类型,表示所述第一数据集相比于所述第二数据集需要变更的数据。
3.根据权利要求2所述的处理方法,其特征在于,通过多个差异信息集表示所述第一数据集与所述第二数据集之间的差异包括以下至少之一:
通过第一差异信息集表示所述第一类型的差异;
通过第二差异信息集表示所述第二类型的差异;
通过第三差异信息集表示所述第三类型的差异。
4.根据权利要求1所述的处理方法,其特征在于,进一步包括:
通过相同信息集表示所述多个数据集之间彼此相同的数据。
5.根据权利要求1所述的处理方法,其特征在于,所述第一数据集为存储在数据库中的网站信息,所述第二数据集为更新后的网站信息。
6.根据权利要求1所述的处理方法,其特征在于,所述第一数据集为云端存储的网站身份证业务中的铭牌数据,所述第二数据集为更新后的铭牌数据。
7.根据权利要求1所述的处理方法,其特征在于,通过列表的方式来存储每个差异信息集。
8.一种差异数据的处理装置,其特征在于,包括:
分类模块,用于在需要将第一数据集更新为第二数据集的情况下,对所述第一数据集与所述第二数据集之间的差异进行分类;
构建模块,用于构建多个差异信息集,并通过多个差异信息集表示所述第一数据集与所述第二数据集之间的差异,其中,每个差异信息集表示所述第一数据集与所述第二数据集之间一个类型的差异;
更新模块,用于根据多个差异信息集对所述第一数据集进行更新;
所述装置还用于,备份所述第一数据集与所述第二数据集,生成所述第一数据集和所述第二数据集相同数据到相同信息集,删除备份第一数据集中在所述相同信息集中的数据,删除备份第二数据集中在所述相同信息集中的数据,从删除相同数据后的备份第一数据集与备份第二数据集中生成差异数据;
导入模块,用于根据差异的类型,将所述第一数据集与第二数据集之间存在差异的数据导入到构建的所述多个差异信息集中,其中,在导入数据的过程中,所述导入模块禁止根据导入的数据生成索引和/或外键;并且,在导入数据之后,所述导入模块根据导入的全部数据生成该数据的索引和/或外键。
CN201210281317.8A 2012-08-08 2012-08-08 差异数据的处理方法和装置 Active CN102855288B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210281317.8A CN102855288B (zh) 2012-08-08 2012-08-08 差异数据的处理方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210281317.8A CN102855288B (zh) 2012-08-08 2012-08-08 差异数据的处理方法和装置

Publications (2)

Publication Number Publication Date
CN102855288A CN102855288A (zh) 2013-01-02
CN102855288B true CN102855288B (zh) 2017-11-03

Family

ID=47401876

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210281317.8A Active CN102855288B (zh) 2012-08-08 2012-08-08 差异数据的处理方法和装置

Country Status (1)

Country Link
CN (1) CN102855288B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104657170A (zh) * 2013-11-25 2015-05-27 腾讯科技(上海)有限公司 一种数据更新方法、装置及系统
CN104572420A (zh) * 2015-02-02 2015-04-29 南车株洲电力机车有限公司 一种信息处理方法及系统
CN107229621B (zh) * 2016-03-23 2020-12-04 北大方正集团有限公司 差异数据的清洗方法及装置
CN110457290B (zh) * 2019-07-09 2021-06-04 北京三快在线科技有限公司 处理数据的方法、装置、电子设备及可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1601515A (zh) * 2003-09-28 2005-03-30 华为技术有限公司 一种数据间差异性的分析比较方法
CN101611402A (zh) * 2006-12-20 2009-12-23 欧睦技术公司 用于优化数据集的变化的系统和方法
CN102033948A (zh) * 2010-12-22 2011-04-27 中国农业银行股份有限公司 一种数据更新方法和装置
CN102523620A (zh) * 2012-01-13 2012-06-27 四川奥诚科技有限责任公司 数据同步的方法、装置及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1601515A (zh) * 2003-09-28 2005-03-30 华为技术有限公司 一种数据间差异性的分析比较方法
CN101611402A (zh) * 2006-12-20 2009-12-23 欧睦技术公司 用于优化数据集的变化的系统和方法
CN102033948A (zh) * 2010-12-22 2011-04-27 中国农业银行股份有限公司 一种数据更新方法和装置
CN102523620A (zh) * 2012-01-13 2012-06-27 四川奥诚科技有限责任公司 数据同步的方法、装置及系统

Also Published As

Publication number Publication date
CN102855288A (zh) 2013-01-02

Similar Documents

Publication Publication Date Title
DE112012005037B4 (de) Verwalten von redundanten unveränderlichen Dateien unter Verwendung von Deduplizierungen in Speicher-Clouds
CN106681739A (zh) 一种智能合约的自动化生成方法
EP3321819A1 (en) Device, method and program for securely reducing an amount of records in a database
CN102855288B (zh) 差异数据的处理方法和装置
CN111382956A (zh) 企业集团关系的挖掘方法和装置
CN103455589B (zh) 产品工厂模式下的产品数据迁移方法、装置及系统
CN101763415B (zh) 一种数据库的b树索引的生成方法及装置
CN104317963B (zh) 一种数据处理方法及装置
CN101702219A (zh) 一种物料信息生成方法和装置
CN106651547A (zh) 数据处理方法及装置
CN105488471B (zh) 一种字形识别方法及装置
CN102521713B (zh) 数据处理装置和数据处理方法
CN106815232A (zh) 目录管理方法、装置及系统
CN102208061A (zh) 数据核销处理装置和数据核销处理方法
CN107609011A (zh) 一种数据库记录的维护方法和装置
CN110147350A (zh) 文件查找方法、装置、电子设备及存储介质
CN113141369B (zh) 基于人工智能的防火墙策略管理方法及相关设备
CN111340496A (zh) 一种自动优化历史交易数据的区块链系统及方法
CN110457298A (zh) 一种汽车配件编码汇总发布方法
CN110083596A (zh) 一种数据历史跟踪和数据变化历史跟踪的方法
CN110347657A (zh) 数据生成方法、装置、电子设备及存储介质
CN107392745B (zh) 一种对帐数据碎片化处理方法
CN110555682A (zh) 基于联盟链的多通道实现方法
CN114118944A (zh) 一种取证实验室分级管理方法、终端设备及存储介质
CN107491530A (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
C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20161128

Address after: 100088 Jiuxianqiao Chaoyang District Beijing Road No. 10, building 15, floor 17, layer 1701-26, 3

Applicant after: BEIJING QIANXIN TECHNOLOGY Co.,Ltd.

Address before: 100088 Beijing city Xicheng District xinjiekouwai Street 28, block D room 112 (Desheng Park)

Applicant before: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Applicant before: Qizhi software (Beijing) Co.,Ltd.

GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address

Address after: No. 32, Building 3, 102, 28 Xinjiekouwai Street, Xicheng District, Beijing

Patentee after: QAX Technology Group Inc.

Address before: Beijing Chaoyang District Jiuxianqiao Road 10, building 15, floor 17, layer 1701-26, 3

Patentee before: BEIJING QIANXIN TECHNOLOGY Co.,Ltd.

CP03 Change of name, title or address