CN103729342B - 文件比对方法及装置 - Google Patents

文件比对方法及装置 Download PDF

Info

Publication number
CN103729342B
CN103729342B CN201210385557.2A CN201210385557A CN103729342B CN 103729342 B CN103729342 B CN 103729342B CN 201210385557 A CN201210385557 A CN 201210385557A CN 103729342 B CN103729342 B CN 103729342B
Authority
CN
China
Prior art keywords
file
data set
compared
comparison
swap data
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
CN201210385557.2A
Other languages
English (en)
Other versions
CN103729342A (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.)
China Unionpay Co Ltd
Original Assignee
China Unionpay 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 China Unionpay Co Ltd filed Critical China Unionpay Co Ltd
Priority to CN201210385557.2A priority Critical patent/CN103729342B/zh
Publication of CN103729342A publication Critical patent/CN103729342A/zh
Application granted granted Critical
Publication of CN103729342B publication Critical patent/CN103729342B/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)行与行之间没有约束关系,以随机形式***到文件中。在金融交易***的并行测试工作中,需要比对两批近似流水文件之间的所有不同处,以确认***的测试结果。面对动辄30G以上的海量流水文件,如何以较小的代价快速比较这些文件,成为当前测试工作中一个难题。
现有金融流水文件的比对方法是:依次把待比较的两批近似文件解压、排序、文件可视化比对工具比对(例如Beyond Compare、Diff命令),其中使用Beyond Compare还必须拷贝海量金融流水文件到Windows平台;同时为了提升速度,采用空间换取时间的方法,即使用多机服务器集群架构,利用物理机器的并行计算去解决单机计算瓶颈。现有方法对1G以内的文件比对是简洁快速的,但处理海量流水文件的比对非常慢,总共时间达到了7小时以上。现有方法还存在以下的缺点:从经济角度来看,使用服务器集群缩短近似比对的时间,但是服务器集群的运行维护成本较高,需要消耗的大量能源,所花费的代价较大;从技术角度来看,需要不必要的文件排序步骤,耗费***内存、CPU、I/O资源,步骤太多,需要过多人工干预。因此,到现在为止还没有切实可行的实用技术解决金融行业所要求的基于关键域的海量文件近似比对技术。因而,研究快速的近似比对算法和近似比对策略显得尤为重要。
发明内容
为了至少解决上述问题的一个方面,本发明提出了一种文件比对方法,包括:对于待比对的文件,使用哈希函数进行编码得到相应的变换数据集;以及比较各个变换数据集。
上述文件比对方法中所述使用哈希函数进行编码的步骤包括将所述待比对的文件的每一个中的数据对一个预定数值取余数得到取余结果数据,并在所述变换数据集中记录冲突的数目和位置。
上述文件比对方法中所述待比对的文件包括文件一和文件二,所述方法还包括:扫描文件一的变换数据集,如果其中存在和文件二的变换数据集中相同的取余结果数据,那么将所述文件一和所述文件二中的冲突的数目分别减一,否则,继续扫描文件一的变换数据集,直到文件一的变换数据集被扫描和处理完毕为止;如果最后的文件一的变换数据集的冲突数不为0,则说明文件一不是文件二的子集,文件一变换数据集中冲突数为非0所对应的行数列记录了文件一比较文件二过程中的差异行;输出文件一比较文件二的差异行;以及扫描文件二的变换数据集,如果其中存在和文件一的变换数据集中相同的取余结果数据,那么将所述文件二和所述文件一中的冲突的数目分别减一,否则,继续扫描文件二的变换数据集,直到文件二的变换数据集被扫描和处理完毕为止;如果最后的文件二的变换数据集的冲突数不为0,则说明文件二不是文件一的子集,且文件二变换数据集中冲突数为非0所对应的行数列记录了文件二比较文件一过程中的差异行,输出文件二比较文件一的差异行。
上述文件比对方法中所述使用哈希函数进行编码的步骤包括将待比对的文件中的每一行数据建立哈希散列,让哈希值均匀分布。
本发明还提出了一种文件比对方法,包括:比较待比对的文件的大小,如果所述待比对的文件的大小不一致则立即确定所述待比对的文件是不同的;否则,对于所述待比对的文件,使用哈希函数进行编码得到相应的变换数据集;比较各个变换数据集;以及如果变换数据集相同则比较待比对的文件,否则结束本轮比较。
上述文件比对方法中所述使用哈希函数进行编码的步骤包括将所述待比对的文件中的每一个的数据对一个预定数值取余数得到取余结果数据,并在所述变换数据集中记录冲突的数目和位置。
上述文件比对方法中所述待比对的文件包括文件一和文件二,所述方法还包括:扫描文件一的变换数据集,如果其中存在和文件二的变换数据集中相同的取余结果数据,那么将所述文件一和所述文件二中的冲突的数目分别减一,否则,继续扫描文件一的变换数据集,直到文件一的变换数据集被扫描和处理完毕为止;如果最后的文件一的变换数据集的冲突数不为0,则说明文件一不是文件二的子集,文件一变换数据集中冲突数为非0所对应的行数列记录了文件一比较文件二过程中的差异行;输出文件一比较文件二的差异行;以及扫描文件二的变换数据集,如果其中存在和文件一的变换数据集中相同的取余结果数据,那么将所述文件二和所述文件一中的冲突的数目分别减一,否则,继续扫描文件二的变换数据集,直到文件二的变换数据集被扫描和处理完毕为止;如果最后的文件二的变换数据集的冲突数不为0,则说明文件二不是文件一的子集,且文件二变换数据集中冲突数为非0所对应的行数列记录了文件二比较文件一过程中的差异行,输出文件二比较文件一的差异行。
上述文件比对方法中中所述使用哈希函数进行编码的步骤包括将待比对的文件中的每一行数据建立哈希散列,让哈希值均匀分布。
本发明还提出了一种文件比对装置,包括:文件大小比较设备,用于比较待比对的文件的大小,如果所述待比对的文件的大小不一致则确定所述待比对的文件是不同的;哈希函数编码设备,对于大小一致的待比对的文件,使用哈希函数进行编码得到相应的变换数据集;变换数据集比较设备,用于比较各个变换数据集;以及文件比较设备,用于在变换数据集相同时比较待比对的文件。
上述文件比对装置中所述哈希函数编码设备包括:取余数装置,用于将所述待比对的文件中的每一个的数据对一个预定数值取余数得到取余结果数据,以及记录装置,用于在所述变换数据集中记录冲突的数目和位置。
通过使用本发明,可以快速地实现大信息量文件的比对。
附图说明
为便于理解,下面参照附图通过非限定性例子来描述本发明的实施例,其中:
图1示出了一种文件比对的主要流程;
图2是一种文件比对方案的模块结构图;
图3示出了一种文件比对的流程;
图4示出了一种快速文件比对方法。
具体实施方式
除非另加具体说明,正如从以下论述中也可以认识到的那样,在本说明书的通篇中,利用诸如“处理”、“计算”、“确定”之类术语的论述表示使用诸如计算机或类似电子计算装置之类的特定设备的动作或过程。在本说明书的上下文中,计算机或者类似电子计算装置能够操纵或变换信号。这些信号在计算机或类似电子计算装置的存储器、寄存器或者其它信息存储装置、传输装置或者显示装置中通常表示为物理电子或磁量。例如,电子计算装置可以包括执行一个或更多的特定功能的一个或更多的处理器。
根据本发明的一个方面,使用哈希函数来进行文件的比对。这里的文件是金融流水文件,但也可能是其它类型的文件。对于待比对的文件,使用哈希函数进行编码得到相应的变换数据集,然后比较各个变换数据集。哈希就是把任意长度的输入通过散列算法变换成固定长度的输出。如果在结构中存在和一关键字K相等的记录,则必定在f(K)的存储位置上。由此,不需比较便可直接取得所查记录。这个对应关系就是哈希函数。
假设有待比对的两个文件,分别为文件A和文件B。根据本发明,使用哈希函数对A和B分别进行编码,得到变换数据集A1和B1。通过比较A1和B1来近似得出A和B的关系。
根据本发明的一个方面,使用哈希函数进行编码的步骤包括将待比对的文件的每一个中的数据对一个预定数值取余数,并记录冲突的数目和位置在变换数据集中。这里所称的冲突,正如本领域的技术人员所理解的那样,指的是对不同的关键字得到同一散列地址的现象。
假设待比对的文件包括文件一和文件二,要获取二者之间的关系,可以先扫描文件一的变换数据集,如果其中存在和文件二的变换数据集中相同的取余结果数据,那么将所述文件一和所述文件二中的冲突的数目分别减一。
如果没有发现相同的取余结果数据,则继续扫描文件一的变换数据集,直到文件一的变换数据集被扫描和处理完毕为止。如果最后的文件一的变换数据集的冲突数不为0,则说明文件一不是文件二的子集。文件一变换数据集中冲突数为非0的数所对应的行数列记录了文件一比较文件二过程中的差异行,可以将文件一比较文件二的差异行作为结果的一部分输出。
接着同样扫描文件二的变换数据集。如果其中存在和文件一的变换数据集中相同的取余结果数据,那么将所述文件二和所述文件一中的冲突的数目分别减一。如果没有发现相同的取余结果数据,继续扫描文件二的变换数据集,直到文件二的变换数据集被扫描和处理完毕为止。如果最后的文件二的变换数据集的冲突数不为0,则说明文件二不是文件一的子集。文件二变换数据集中冲突数为非0所对应的行数列记录了文件二比较文件一过程中的差异行,可以将文件二比较文件一的差异行作为结果的一部分输出。
其中,如果文件一的变换数据集中存在和文件二的变换数据集中相同的取余结果数据,那么将文件一和文件二中的冲突的数目分别减一,如果最终文件二的变换数据集中的冲突的数目不为零,则文件二不是文件一的子集。如果最终文件一的变换数据集中的冲突的数目不为零,则文件一不是文件二的子集。
上述方法是文件的近似比对方法,根据本发明的又一个方面,这里还提出了一种快速比对的方法。该方法如图1所示。首先进行文件大小一致性检查,大小不一致就直接返回结果,即待比对的文件是不同的。否则,如果大小一致,使用哈希函数进行编码得到相应的变换数据集并比较各个变换数据集,如果变换数据集不一致也说明待比对的文件是不同的。如果变换数据集也是一致的,则再比较待比对的文件。
根据本发明的又一个方面,这里提出了一种文件比对装置。该装置包括文件大小比较设备、哈希函数编码设备、变换数据集比较设备以及文件比较设备。其中,文件大小比较设备用于比较待比对的文件的大小,如果待比对的文件的大小不一致则确定待比对的文件是不同的。哈希函数编码设备用于对大小不一致的待比对的文件使用哈希函数进行编码得到相应的变换数据集。变换数据集比较设备用于比较各个变换数据集。文件比较设备用于在变换数据集相同时比较待比对的文件。
哈希函数编码设备可包括取余数装置和记录装置。前者用于将待比对的文件中的每一个的数据对一个预定数值取余数得到取余结果数据。后者用于在变换数据集中记录冲突的数目和位置。
图2示出了根据本发明的又一个方面,使用包括五个模块的装置来进行文件的比对的示意图。第一个模块是调度控制模块,调度控制接口。该模块支持多进程调度,文件比对任务的实时发起、暂停、终止。采用快速制胜的策略,查找目录下面文件,如果是文件首先比较两个文件的文件名和大小是否匹配,如果一致再进一步调用文件比对模块进行行数据计算哈希值建立索引比较;如果不是文件而是目录就递归调用自己。
第二个模块是文件比对模块。该模块首先遍历文件A的所有行,对文件A的行数据关键域建立索引数组,采用高效率的行压缩技术以及低耦合的散列技术在内存中建立文件A索引表;然后遍历文件B的各行,比较B中的各行数据的哈希值是否在A的索引表中存在,如果不存在,则表示该行是两个文件的不同处,输出这行的信息。如果文件A与文件B相比是一致的,则反过来用相同的方法把文件B与文件A相比。
第三个模块是任务配置模块。该模块用于设置文件白名单、文件黑名单、文件行的待比较关键域和比对策略;确定哪些文件比对,哪些文件不比对;配置文件的关键域实现了文件的近似比对功能;以及确定是否选择快速制胜的比对策略。
第四个模块是结果加工模块。该模块把文件比对模块输出的结果根据个性化设置展示给测试人员,增强结果的易读性。具体地,可以按照文件标准规范,拆分文件比对模块输出的所有不同处记录到特定文件,例如Excel文件中,并且可以将不一致的文件部分使用醒目的颜色标记。
第五个模块是日志输出模块。该模块把上述方法中所有操作的过程信息输出到日志中,方便测试人员分析查找比对过程中的详细操作记录。
图2同时示出了文件的比对方法的主要流程,包括以下几个步骤:
(1)比对任务的配置步骤:比对人员根据比对任务要求规划好程序的输入目录、输出目录;配置需要比对文件的白名单、黑名单、对文件的关键域进行匹配等设置;在控制主机上面配置比对任务不影响正在进行的比对任务,具有高度的灵活性。
(2)比对任务的执行步骤:比对人员执行配置好的比对任务,任务调度模块负责调度评估***当前的负载情况,按照任务的大小、时间敏感度来分配进程数量,并调度多个进程并发工作,记录每个进程的任务执行情况,对任务具有实时发起、暂停、终止的权力。
(3)子模块的调用步骤:调度控制接口按照各个接口参数调用其他子模块,对比对任务的过程进行监控,对其比对的结果进行确认并与其他机器的结果进行整合,反馈给进程下一项任务。
文件比对模块可以参考图3所示的技术实现方法。例如,1)以文件A比较文件B,则进行以下步骤:
取文件A,使用hash函数对A的每一行内容进行编码,hash到N行的二维数组,数组A[i]={索引值i,冲突标识cfi,行号ai}。
取文件B的每一行进行hash,同样hash到N的二维数组里面,数组B[j]={索引值j,冲突标识cfj,行号bj}。
对B[j]数来说,取索引为j到数组A里面进行查找,A[j]={索引值j,冲突标识cfj,行号aj},于是使用B文件的第bj行比较A文件的ai行,进行的是行与行的比较。完全一致的时候,继续下一次比较,这个时候删除A和B中对应的索引记录,冲突数减去1,减到0为止。读取文件B索引的最终状态,获取不一致行号并输出到B的日志文件。
查看文件B的索引表中的冲突记录数目,当cfj=0时,说明文件B中每一行内容均和文件A完全一致;当cfj!=0时,说明文件B中存在和文件A不一致的行号,并输出文件B对应的行的内容到日志文件中。
这里可以考虑四种情形:
a)B没有冲突,A没有冲突。
假设Hash函数采用f(x)=A[i]%4,那么可以得到以下比对过程:
输入数据:
A={1,2,3};
B={1};
比对过程的文件A、B的索引情况:
比对结果:
文件B中的内容是文件A的子集。
b)B没有冲突,A有冲突。
假设Hash函数采用f(x)=A[i]%4,那么可以得到以下比对过程:
输入数据:
A={1,2,3,5};
B={1};
比对过程的文件A、B的索引情况:
比对结果:
文件B中的内容是文件A的子集。
c)B有冲突,A没有冲突。
从a)而来,这种情况主要是B冲突的项目在A中始终没有找到,最后留在B的日志中。
假设Hash函数采用f(x)=A[i]%4,那么可以得到以下比对过程:
输入数据:
A={1,2,3};
B={1,5};
比对过程的文件A、B的索引情况:
比对结果:
文件B中存在和文件A不一致的行号,行号为2,输出文件B的第二行,即5,输出到日志文件中。
这里需要考虑,另外一种情况:
假设Hash函数采用f(x)=A[i]%4,那么可以得到以下比对过程
输入数据:
A={2,3,9};
B={1,5};
比对过程的文件A、B的索引情况:
比对结果:
文件B中存在和文件A不一致的行号,行号为2和1,输出文件B的第二行、第一行,即5和1,输出到日志文件中。
d)B有冲突,A有冲突。
从b)而来,这种情况主要是刚开始B的项目在A中始终没有找到,最后留在B的日志中。
假设Hash函数采用f(x)=A[i]%4,那么可以得到以下比对过程:
输入数据:
A={1,2,3,5};
B={1,5};
比对过程的文件A、B的索引情况:
比对结果:
文件B中的内容是文件A的子集。
2)文件B比较文件A。
因为文件A比较文件B最终只会获取到B中和A不一致的行,所以需要再比较一下文件A是否存在文件B中没有的行,按照上面1)所示的步骤,将文件B比较文件A并把A中不一致的写到A的日志中。
假设Hash函数采用f(x)=A[i]%3,那么可以得到以下比对过程:
输入数据:
A={4,7…3n+1};
B={1};
比对过程的文件A、B的索引情况:
比对结果是,文件B中存在和文件A不一致。
根据本发明的又一个方面,这里还提出一种快速制胜策略技术方法。如图4所示,该方法首先进行文件大小一致性检查,大小不一致就直接返回结果。然后,如果大小一致,先把文件A与文件B比较,检查Hash索引中对应的内容是否一致,发现有一处不一致就立即返回结果。接下来,如果文件A与文件B比较的内容一致,再把文件B与文件A比较,检查Hash索引中对应的内容是否一致,如果发现有一处不一致就立即返回结果。通过该策略可以快速的告诉测试人员哪些文件是有差异的。
这里所述的方法可按照特定特征或示例至少部分根据应用通过各种方式来实现。例如,这种方法可通过硬件、固件、软件或者它们的任何组合来实现。在硬件实现中,例如,装置可在一个或更多的专用集成电路(ASICs)、数字信号处理器(DSPs)、数字信号处理装置(DSPDs)、可编程逻辑器件(PLDs)、现场可编程门阵列(FPGAs)、处理器、控制器、微控制器、微处理器、电子装置或者设计成执行诸如这里所述的功能的其它装置单元或者它们的任何组合中实现。
同样,在一些实施例中,方法可采用执行这里所述功能或者它们的任何组合的模块来实现。例如,有形地具体化指令的任何机器可读介质可在实现这类方法中使用。在一实施例中,例如,软件或代码可存储在存储器中并且由处理单元来运行。存储器可在处理单元中和/或处理单元外部来实现。这里所使用的术语“存储器”表示任何类型的长期、短期、易失性、非易失性或者其它存储器,并且并不局限于存储器的任何特定类型或者存储器的数量或者存储介质的类型。
存储介质可包括可由计算机、计算平台、计算装置等等来访问的任何可用介质。作为举例而不是限制,计算机可读介质可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储、磁盘存储或者其它磁存储装置,或者可用于携带或存储采取指令或数据结构形式的期望的程序代码并且可由计算机、计算平台或计算装置来访问的其它任何介质。
虽然上文已经示出了当前被认为是示例特征的内容,但是本领域的技术人员将会理解,在不背离要求保护的主题的情况下,可以对本发明中所描述的具体实施例进行各种修改。而且,一个实施例中和其它的实施例相同的特征可能为了表述的简洁而省略,本领域的技术人员可以认识到这些省略。因此,要求保护的主题并不局限于所公开的特定示例,相反,其包括了落入所附权利要求的范围之内的所有内容。

Claims (5)

1.一种文件比对方法,包括:
对于待比对的文件,使用哈希函数进行编码得到相应的变换数据集;以及
比较各个变换数据集,
其中所述使用哈希函数进行编码的步骤包括将所述待比对的文件的每一个中的数据对一个预定数值取余数得到取余结果数据,并在所述变换数据集中记录冲突的数目和位置,
其中所述待比对的文件包括文件一和文件二,所述方法还包括:
扫描文件一的变换数据集,如果其中存在和文件二的变换数据集中相同的取余结果数据,那么将所述文件一和所述文件二中的冲突的数目分别减一,否则,继续扫描文件一的变换数据集,直到文件一的变换数据集被扫描和处理完毕为止;如果最后的文件一的变换数据集的冲突数不为0,则说明文件一不是文件二的子集,文件一变换数据集中冲突数为非0所对应的行数列记录了文件一比较文件二过程中的差异行;输出文件一比较文件二的差异行;以及
扫描文件二的变换数据集,如果其中存在和文件一的变换数据集中相同的取余结果数据,那么将所述文件二和所述文件一中的冲突的数目分别减一,否则,继续扫描文件二的变换数据集,直到文件二的变换数据集被扫描和处理完毕为止;如果最后的文件二的变换数据集的冲突数不为0,则说明文件二不是文件一的子集,且文件二变换数据集中冲突数为非0所对应的行数列记录了文件二比较文件一过程中的差异行,输出文件二比较文件一的差异行。
2.如权利要求1所述的文件比对方法,其中所述使用哈希函数进行编码的步骤包括将待比对的文件中的每一行数据建立哈希散列,让哈希值均匀分布。
3.一种文件比对方法,包括:
比较待比对的文件的大小,如果所述待比对的文件的大小不一致则立即确定所述待比对的文件是不同的;
否则,对于所述待比对的文件,使用哈希函数进行编码得到相应的变换数据集;
比较各个变换数据集;以及
如果变换数据集相同则比较待比对的文件,否则结束本轮比较,
其中所述使用哈希函数进行编码的步骤包括将所述待比对的文件的每一个中的数据对一个预定数值取余数得到取余结果数据,并在所述变换数据集中记录冲突的数目和位置,
其中所述待比对的文件包括文件一和文件二,所述方法还包括:
扫描文件一的变换数据集,如果其中存在和文件二的变换数据集中相同的取余结果数据,那么将所述文件一和所述文件二中的冲突的数目分别减一,否则,继续扫描文件一的变换数据集,直到文件一的变换数据集被扫描和处理完毕为止;如果最后的文件一的变换数据集的冲突数不为0,则说明文件一不是文件二的子集,文件一变换数据集中冲突数为非0所对应的行数列记录了文件一比较文件二过程中的差异行;输出文件一比较文件二的差异行;以及
扫描文件二的变换数据集,如果其中存在和文件一的变换数据集中相同的取余结果数据,那么将所述文件二和所述文件一中的冲突的数目分别减一,否则,继续扫描文件二的变换数据集,直到文件二的变换数据集被扫描和处理完毕为止;如果最后的文件二的变换数据集的冲突数不为0,则说明文件二不是文件一的子集,且文件二变换数据集中冲突数为非0所对应的行数列记录了文件二比较文件一过程中的差异行,输出文件二比较文件一的差异行。
4.如权利要求3所述的文件比对方法,其中所述使用哈希函数进行编码的步骤包括将待比对的文件中的每一行数据建立哈希散列,让哈希值均匀分布。
5.一种文件比对装置,包括:
文件大小比较设备,用于比较待比对的文件的大小,如果所述待比对的文件的大小不一致则确定所述待比对的文件是不同的;
哈希函数编码设备,对于大小一致的待比对的文件,使用哈希函数进行编码得到相应的变换数据集;
变换数据集比较设备,用于比较各个变换数据集;以及
文件比较设备,用于在变换数据集相同时比较待比对的文件,
其中所述哈希函数编码设备包括:
取余数装置,用于将所述待比对的文件中的每一个的数据对一个预定数值取余数得到取余结果数据,以及
记录装置,用于在所述变换数据集中记录冲突的数目和位置,其中所述待比对的文件包括文件一和文件二,
扫描文件一的变换数据集,如果其中存在和文件二的变换数据集中相同的取余结果数据,那么将所述文件一和所述文件二中的冲突的数目分别减一,否则,继续扫描文件一的变换数据集,直到文件一的变换数据集被扫描和处理完毕为止;如果最后的文件一的变换数据集的冲突数不为0,则说明文件一不是文件二的子集,文件一变换数据集中冲突数为非0所对应的行数列记录了文件一比较文件二过程中的差异行;输出文件一比较文件二的差异行;以及
扫描文件二的变换数据集,如果其中存在和文件一的变换数据集中相同的取余结果数据,那么将所述文件二和所述文件一中的冲突的数目分别减一,否则,继续扫描文件二的变换数据集,直到文件二的变换数据集被扫描和处理完毕为止;如果最后的文件二的变换数据集的冲突数不为0,则说明文件二不是文件一的子集,且文件二变换数据集中冲突数为非0所对应的行数列记录了文件二比较文件一过程中的差异行,输出文件二比较文件一的差异行。
CN201210385557.2A 2012-10-12 2012-10-12 文件比对方法及装置 Active CN103729342B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210385557.2A CN103729342B (zh) 2012-10-12 2012-10-12 文件比对方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210385557.2A CN103729342B (zh) 2012-10-12 2012-10-12 文件比对方法及装置

Publications (2)

Publication Number Publication Date
CN103729342A CN103729342A (zh) 2014-04-16
CN103729342B true CN103729342B (zh) 2016-09-28

Family

ID=50453421

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210385557.2A Active CN103729342B (zh) 2012-10-12 2012-10-12 文件比对方法及装置

Country Status (1)

Country Link
CN (1) CN103729342B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105391566B (zh) * 2014-09-04 2018-12-07 ***通信集团黑龙江有限公司 一种动态的网络设备配置比对的方法及装置
CN104639629A (zh) * 2015-01-30 2015-05-20 英华达(上海)科技有限公司 一种在客户端和云端进行文件的比较方法及比较***
CN105787041B (zh) * 2016-02-26 2019-08-13 ***股份有限公司 基于数据特征码的大文件比对方法以及比对***
CN106055692A (zh) * 2016-06-12 2016-10-26 上海爱数信息技术股份有限公司 比对文件或文件夹的自动化测试方法及***
CN108446394B (zh) * 2018-03-26 2021-02-19 网易(杭州)网络有限公司 文件差异的对比方法和装置
CN112181479A (zh) * 2020-09-23 2021-01-05 中国建设银行股份有限公司 代码文件版本间差异的确定方法、装置及电子设备
CN113505137B (zh) * 2021-07-27 2022-07-08 重庆市规划和自然资源信息中心 一种不动产空间图形更新方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2005201758B2 (en) * 2005-04-27 2008-12-18 Canon Kabushiki Kaisha Method of learning associations between documents and data sets
CN101146111B (zh) * 2007-10-19 2012-03-07 深圳市迅雷网络技术有限公司 一种文件下载的方法及设备
CN101398837B (zh) * 2008-10-23 2011-05-11 深圳市奇迹通讯有限公司 一种快速匹配短信文本的方法
CN101957858A (zh) * 2010-09-27 2011-01-26 中兴通讯股份有限公司 数据比对方法和装置
CN102467458B (zh) * 2010-11-05 2014-08-06 英业达股份有限公司 建立数据区块的索引方法

Also Published As

Publication number Publication date
CN103729342A (zh) 2014-04-16

Similar Documents

Publication Publication Date Title
CN103729342B (zh) 文件比对方法及装置
Li et al. Bitweaving: Fast scans for main memory data processing
CN102129425B (zh) 数据仓库中大对象集合表的访问方法及装置
US10783163B2 (en) Instance-based distributed data recovery method and apparatus
CN103902702A (zh) 一种数据存储***和存储方法
CN105260464B (zh) 数据存储结构的转换方法及装置
CN112052138A (zh) 业务数据质量检测方法、装置、计算机设备及存储介质
CN102169491B (zh) 一种多数据集中重复记录动态检测方法
CN104834599A (zh) Web安全检测方法和装置
US20130238939A1 (en) Method for ranking analysis tools
US10572463B2 (en) Efficient handling of sort payload in a column organized relational database
CN112990583B (zh) 一种数据预测模型的入模特征确定方法及设备
CN102455971A (zh) 应用级随机指令测试方法、***及装置
US20110264703A1 (en) Importing Tree Structure
CN107977504B (zh) 一种非对称堆芯燃料管理计算方法、装置及终端设备
CN108446989B (zh) 手续费确定方法及终端设备
CN103500224A (zh) 一种数据写入方法及装置、数据读取方法及装置
CN104123347B (zh) 一种应用于boss***的数据重删方法及***
US10114878B2 (en) Index utilization in ETL tools
CN111695153A (zh) 一种多叉树森林k-匿名方法、***、设备和可读存储介质
CN107402939A (zh) 保单处理方法和装置
CN105229668B (zh) 使用手势对线图案表示的搜索
van der Vlugt Large-scale SVD algorithms for latent semantic indexing, recommender systems and image processing
KR20150077669A (ko) 맵리듀스 방식을 이용한 데이터 분석 방법 및 시스템
CN104750714A (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
C14 Grant of patent or utility model
GR01 Patent grant