一种大批量数据自动比对的方法及计算机可读存储介质与流程

文档序号:18102504发布日期:2019-07-06 11:26阅读:471来源:国知局
一种大批量数据自动比对的方法及计算机可读存储介质与流程

本发明涉及数据处理领域,具体涉及一种大批量数据自动比对的方法及计算机可读存储介质。



背景技术:

近些年,信息化竞争加剧,大数据成了企业争夺的战略前沿,随着“智慧经济”的崛起,采集数据、掌握数据、运用数据成了企业的核心竞争力。传统的oracle数据库已经满足不了大数据并行处理的需求,去oracle逐渐提上日程。

数据迁移作为企业提高数据运用效率的手段,也带来了数据迁移的完整性、准确性如何保障的问题。传统比对迁移前后数据的方法,每张表比对都要通过人工检查、分析,耗时长、人工投入大。随着计算机技术的发展,利用算法技术进行比对的方法也层出不穷,将主备端数据导入内存,并采用各种查找算法进行比对。

现有的公开号为cn104239301b,公开日为2018年2月13日的发明专利《一种数据比对方法和装置》,该发明提出了一种数据比对方法,包括:确定待比对的第一数据集和第二数据集,数据集中的每个比较对象包括一个或多个比较项;确定比较项的类型,所述类型至少包括:第一类比较项和非第一类比较项;对第一数据集中的比较对象和第二数据集中的比较对象进行比对,其中,如果第一数据集中的第一比较对象的第一类比较项和所述第二数据集中的第二比较对象中的对应第一类比较项相同,且第一比较对象的非第一类比较项与第二比较对象的对应非第一类比较项之间的差异满足预设条件,则判断第一比较对象和第二比较对象一致。

现有的公开号为cn107679104a,公开日为2018年2月9日的发明专利《大表流式并行高速数据比对方法》,该发明提出了一种大表流式并行高速数据比对方法,其特征是,包括如下步骤:(1-1)比对应用程序通过数据库链接配置待比对的主数据库表信息和备数据库表的信息,如果主数据库表信息和备数据库表信息结构不一致,返回无法比对;(1-2)比较主数据库表信息和备数据库表的索引字段,获取最小值min和最大值max,用于比对开始与结束标记;并设置并行比对通道数n,n动态生成,用于并行处理;(1-3)将主备数据库表的记录按索引字段递增排序,并将排序结果按并行比对通道数n进行分块,且各个通道分别流式读取数据,存于缓存中;(1-4)在各个通道中并行处理数据比对,记录比对结果。

以上发明方法至少存在以下问题:

1、目前的方法针对的是单个文件数据或小批量数据比对的方法,无法满足大量数据比对的要求;

2、目前的方法是基于文件内容的检查,耗时长、效率低,未能有效压缩比对时长;

3、对比过程中需接触到实体数据,未考虑数据安全性问题,可能存在数据泄露风险。



技术实现要素:

本发明要解决的技术问题之一,在于提供一种大批量数据自动比对的方法,通过程序对迁移前后的数据文件进行自动预处理、比对等,减少人工环节的操作,提高数据比对效率。

本发明实施例要解决的技术问题之一是这样实现的:

一种大批量数据自动比对的方法,包括如下步骤:

步骤10、对数据库配置项进行设置,自动对迁移前的数据库文件及迁移后的数据库文件分别进行拆分并导出;

步骤20、将拆分导出的迁移前的数据库文件进行预处理,得到基准文件集,将拆分导出的迁移后的数据库文件进行预处理,得到比较文件集;

步骤30、扫描所述基准文件集的文件,生成比对文件目录;

步骤40、根据所述比对文件目录将所述基准文件集中的需要比对的文件逐一与所述比较文件集中对应的文件进行md5值比对,如md5值一致则判定已对比通过,如md5值不一致则生成错误记录,供后续数据分析与追踪。

优选的,所述方法进一步包括:

对数据库配置项及使用的程序文件设置第一访问权限,对所述基准文件集和比较文件集设置第二访问权限,对所述比对文件目录和错误记录设置第三访问权限。

优选的,所述方法进一步包括:

步骤50、设置存储空间释放开关,当开关打开时,同时删除基准文件集和比较文件集中已对比通过的文件,当开关关闭时,不进行文件删除。

优选的,所述步骤20中预处理具体包括:

对文件进行数据标准化处理,包括去除无用字段、消除异构数据库存在的差异,确保两端结构一致;

将标准化处理后的数据进行排序,确保两端顺序一致。

优选的,所述步骤30具体为:定时扫描所述基准文件集的数据文件,生成比对文件目录,当文件在所述比对文件目录中不存在或已存在于比对文件目录但创建时间晚于目录中记录的创建时间时,判断文件为新文件,并将所述新文件的信息加入比对文件目录,所述比对文件目录信息包括文件路径、文件创建时间、“是否已比对”及“比对情况”。

优选的,所述步骤40具体包括:

步骤41、将比对文件目录中“是否已比对”状态为“否”的文件作为比对文件任务;

步骤42、根据所述比对文件任务将所述基准文件集中的需要比对的文件逐一与所述比较文件集中对应的文件进行比对,如md5值一致则判定已对比通过,将“是否已比对”标记为“是”、将“比对情况”标记为“md5一致”;如md5值不一致则将所述比较文件集中的比对文件与基准文件集中对应的文件进行逐行比对,将“是否已比对”标记为“是”、将“比对情况”标记为“文件比对不一致”,生成错误记录,供后续数据分析与追踪。

本发明要解决的技术问题之二,在于提供一种计算机可读存储介质,通过程序对迁移前后的数据文件进行自动预处理、比对等,减少人工环节的操作,提高数据比对效率。

本发明实施例要解决的技术问题之二是这样实现的:

一种计算机可读存储介质,其上存储有计算机程序(指令),该程序(指令)被处理器执行时实现以下步骤:

步骤10、对数据库配置项进行设置,自动对迁移前的数据库文件及迁移后的数据库文件分别进行拆分并导出;

步骤20、将拆分导出的迁移前的数据库文件进行预处理,得到基准文件集,将拆分导出的迁移后的数据库文件进行预处理,得到比较文件集;

步骤30、扫描所述基准文件集的文件,生成比对文件目录;

步骤40、根据所述比对文件任务将所述比较文件集中的需要比对的文件逐一与所述基准文件集中对应的文件进行md5值比对,如md5值一致则判定已对比通过,如md5值不一致则生成错误记录,供后续数据分析与追踪。

优选的,所述程序还执行:

对数据库配置项及使用的程序文件设置第一访问权限,对所述基准文件集和比较文件集设置第二访问权限,对所述比对文件目录和错误记录设置第三访问权限。

优选的,所述程序还执行:

步骤50、设置存储空间释放开关,当开关打开时,同时删除基准文件集和比较文件集中已对比通过的文件,当开关关闭时,不进行文件删除。

优选的,所述程序还执行:

对文件进行数据标准化处理,包括去除无用字段、消除异构数据库存在的差异,确保两端结构一致;

将标准化处理后的数据进行排序,确保两端顺序一致。

优选的,所述步骤30具体为:定时扫描所述基准文件集的数据文件,生成比对文件目录,当文件在所述比对文件目录中不存在或已存在于比对文件目录但创建时间晚于目录中记录的创建时间时,判断文件为新文件,并将所述新文件的信息加入比对文件目录,所述比对文件目录信息包括文件路径、文件创建时间、“是否已比对”及“比对情况”。

优选的,所述步骤40具体包括:

步骤41、将比对文件目录中“是否已比对”状态为“否”的文件作为比对文件任务;

步骤42、根据所述比对文件任务将所述比较文件集中的需要比对的文件逐一与所述基准文件集中对应的文件进行md5值比对,如md5值一致则判定已对比通过,将“是否已比对”标记为“是”、将“比对情况”标记为“md5一致”;如md5值不一致则将所述比较文件集中的比对文件与基准文件集中对应的文件进行逐行比对,将“是否已比对”标记为“是”、将“比对情况”标记为“文件比对不一致”,生成错误记录,供后续数据分析与追踪。

本发明具有如下优点:

1、通过程序对迁移前后的数据文件进行自动预处理、比对等,克服了现有技术无法满足大量数据比对问题,实现了大批量数据的自动化比对;

2、通过对文件md5值的比较实现文件比对,克服了目前的基于文件内容的检查,耗时长、效率低,未能有效压缩比对时长的问题,具有耗时短、效率高的优势;

3、通过对文件md5值的比对并对程序及比对文件和结果设置不同的权限,克服了对比过程中需接触到实体数据,可能存在数据泄露风险的问题,具有安全性高、易于管理数据比对情况的优势。

附图说明

下面参照附图结合实施例对本发明作进一步的说明。

图1为本发明方法执行流程图。

图2为本发明实施例数据处理流程图。

图3为本发明实施例数据比对流程图。

具体实施方式

请参阅图1至3所示,一种大批量数据自动比对的方法,包括如下步骤:

步骤10、对数据库配置项进行设置,自动对迁移前的数据库文件及迁移后的数据库文件分别进行拆分并导出;对数据库配置项进行设置后,通过数据拆分和导出程序对数据库大表文件进行拆分,确保数据文件大小得到控制,能够被程序进行处理;在数据导出前可以检查磁盘空间使用情况,当磁盘空间不足时,暂停导出,待磁盘空间释放后,继续导出。

步骤20、将拆分导出的迁移前的数据库文件进行预处理,得到基准文件集,将拆分导出的迁移后的数据库文件进行预处理,得到比较文件集;

步骤30、扫描所述基准文件集的文件,生成比对文件目录(也可以扫描比较文件集,生成比对文件目录);

步骤40、根据所述比对文件目录将所述基准文件集中的需要比对的文件逐一与所述比较文件集中对应的文件进行md5值比对(如比对文件目录是扫描比较文件集生成的,则与基准文件集中对应的文件进行md5值比对),如md5值一致则判定已对比通过,如md5值不一致则生成错误记录,供后续数据分析与追踪。

md5将整个文件当作一个大文本信息,通过其不可逆的字符串变换算法,产生了唯一的md5信息摘要。md5的典型应用是对一段信息产生信息摘要,以防止被篡改,如果任何人对文件做了任何改动,其md5值都会发生变化。因此可以通过比对基准文件集与比较文件集中一一对应的文件的md5值来判断文件是否完全一致。

在一较佳实施例中,所述方法进一步包括:

对数据库配置项(所述数据库配置项包括数据库访问地址、数据库用户名、数据密码、需导出的表及字段信息等)及使用的程序文件设置第一访问权限,对所述基准文件集和比较文件集设置第二访问权限,对所述比对文件目录和错误记录设置第三访问权限。

比如设置程序维护人员拥有第一访问权限,可维护比对程序,并对其中的数据库连接信息、数据处理规则等重要参数进行配置;设置普通测试人员:拥有第三访问权限,可访问比对结果、错误记录,便于跟踪比对情况、进度,并对不一致的数据进行初步分析和反馈;设置高级测试人员同时拥有第二访问权限和第三访问权限,可访问基准文件集、比较文件集、比对结果、错误记录,确保在发生比对不一致时,有权限对错误记录进行深入分析。

所述方法进一步包括:

步骤50、设置存储空间释放开关,当开关打开时,同时删除基准文件集和比较文件集中已对比通过的文件,当开关关闭时,不进行文件删除。

在对比数据量巨大而存储空间相对有限的情况下,为了满足海量数据的比对需求,可以将基准文件集和比较文件集中已比对通过的文件进行删除,设置一存储空间释放开关,在需要释放存储空间时开启,程序将自动删除已比对通过的基准、比对文件,以释放存储空间,为后续的待比对文件入库腾出空间。

所述步骤20中预处理具体包括:

对文件进行数据标准化处理,包括去除无用字段(比如时间戳)、消除异构数据库存在的差异,确保两端结构一致;

将标准化处理后的数据进行排序,确保两端顺序一致。

对基准文件集与比较文件集的文件进行预处理后,可以确保比对过程中不会因为数据本身以外的其它因素影响比对结果。

所述步骤30具体为:定时扫描所述基准文件集的数据文件,产生比对文件目录(也可以扫描比较文件集,生成比对文件目录),当文件在所述比对文件目录中不存在或已存在于比对文件目录但创建时间晚于目录中记录的创建时间时(目录中记录的创建时间为上一次扫描到所述文件时,该文件的创建时间),判断文件为新文件,并将所述新文件的信息加入比对文件目录,所述比对文件目录信息包括文件路径、文件创建时间、“是否已比对”(默认为“否”)及“比对情况”(默认为“待比对”)。

所述步骤40具体包括:

步骤41、将比对文件目录中“是否已比对”状态为“否”的文件作为比对文件任务;

步骤42、根据所述比对文件任务将所述比较文件集中的需要比对的文件逐一与所述基准文件集中对应的文件进行md5值比对,如md5值一致则判定已对比通过,将“是否已比对”标记为“是”、将“比对情况”标记为“md5一致”;如md5值不一致则将所述比较文件集中的比对文件与基准文件集中对应的文件进行逐行比对,将“是否已比对”标记为“是”、将“比对情况”标记为“文件比对不一致”,生成错误记录,供后续数据分析与追踪;如比较文件集中不存在与所述需要比对的文件一一对应的文件,则不作处理,继续执行下一项比对任务。

在一较佳实施例中,逐行比对的同时记录不一致的行的内容,当不一致行数过多时,可以仅记录前10行的内容,并生成错误记录,测试人员可通过访问错误记录的具体内容,分析不一致的情况,并根据实际需要对数据库文件进行操作。

请再参考图1至3所示,一种计算机可读存储介质,其上存储有计算机程序(指令),该程序(指令)被处理器执行时实现以下步骤:

步骤10、对数据库配置项进行设置,自动对迁移前的数据库文件及迁移后的数据库文件分别进行拆分并导出;对数据库配置项进行设置后,通过数据拆分和导出程序对数据库大表文件进行拆分,确保数据文件大小得到控制,能够被程序进行处理;在数据导出前可以检查磁盘空间使用情况,当磁盘空间不足时,暂停导出,待磁盘空间释放后,继续导出;

步骤20、将拆分导出的迁移前的数据库文件进行预处理,得到基准文件集,将拆分导出的迁移后的数据库文件进行预处理,得到比较文件集;

步骤30、扫描所述基准文件集的文件,生成比对文件目录;

步骤40、根据所述比对文件任务将所述比较文件集中的需要比对的文件逐一与所述基准文件集中对应的文件进行md5值比对,如md5值一致则判定已对比通过,如md5值不一致则生成错误记录,供后续数据分析与追踪。

md5将整个文件当作一个大文本信息,通过其不可逆的字符串变换算法,产生了唯一的md5信息摘要。md5的典型应用是对一段信息产生信息摘要,以防止被篡改,如果任何人对文件做了任何改动,其md5值都会发生变化。因此可以通过比对基准文件集与比较文件集中一一对应的文件的md5值来判断文件是否完全一致。

在一较佳实施例中,所述程序还执行:

对数据库配置项(所述数据库配置项包括数据库访问地址、数据库用户名、数据密码、需导出的表及字段信息等)及使用的程序文件设置第一访问权限,对所述基准文件集和比较文件集设置第二访问权限,对所述比对文件目录和错误记录设置第三访问权限。

比如设置程序维护人员拥有第一访问权限,可维护比对程序,并对其中的数据库连接信息、数据处理规则等重要参数进行配置;设置普通测试人员:拥有第三访问权限,可访问比对结果、错误记录,便于跟踪比对情况、进度,并对不一致的数据进行初步分析和反馈;设置高级测试人员同时拥有第二访问权限和第三访问权限,可访问基准文件集、比较文件集、比对结果、错误记录,确保在发生比对不一致时,有权限对错误记录进行深入分析。

所述程序还执行:

步骤50、设置存储空间释放开关,当开关打开时,同时删除基准文件集和比较文件集中已对比通过的文件,当开关关闭时,不进行文件删除。

在对比数据量巨大而存储空间相对有限的情况下,为了满足海量数据的比对需求,可以将基准文件集和比较文件集中已比对通过的文件进行删除,设置一存储空间释放开关,在需要释放存储空间时开启,程序将自动删除已比对通过的基准、比对文件,以释放存储空间,为后续的待比对文件入库腾出空间。

所述程序还执行:

对文件进行数据标准化处理,包括去除无用字段(比如时间戳)、消除异构数据库存在的差异,确保两端结构一致;

将标准化处理后的数据进行排序,确保两端顺序一致。

对基准文件集与比较文件集的文件进行预处理后,可以确保比对过程中不会因为数据本身以外的其它因素影响比对结果。

所述步骤30具体为:定时扫描所述基准文件集的数据文件,生成比对文件目录,当文件在所述比对文件目录中不存在或已存在于比对文件目录但创建时间晚于目录中记录的创建时间时(目录中记录的创建时间为上一次扫描到所述文件时,该文件的创建时间),判断文件为新文件,并将所述新文件的信息加入比对文件目录,所述比对文件目录信息包括文件路径、文件创建时间、“是否已比对”(默认为“否”)及“比对情况”(默认为“待比对”)。

所述步骤40具体包括:

步骤41、将比对文件目录中“是否已比对”状态为“否”的文件作为比对文件任务;

步骤42、根据所述比对文件任务将所述比较文件集中的需要比对的文件逐一与所述基准文件集中对应的文件进行md5值比对,如md5值一致则判定已对比通过,将“是否已比对”标记为“是”、将“比对情况”标记为“md5一致”;如md5值不一致则将所述比较文件集中的比对文件与基准文件集中对应的文件进行逐行比对,将“是否已比对”标记为“是”、将“比对情况”标记为“文件比对不一致”,生成错误记录,供后续数据分析与追踪;如比较文件集中不存在与所述需要比对的文件一一对应的文件,则不作处理,继续执行下一项比对任务。

在一较佳实施例中,逐行比对的同时记录不一致的行的内容,当不一致行数过多时,可以仅记录前10行的内容,并生成错误记录,测试人员可通过访问错误记录的具体内容,分析不一致的情况,并根据实际需要对数据库文件进行操作。

本发明通过程序对迁移前后的数据文件进行自动预处理、比对等,克服了现有技术无法满足大量数据比对问题,实现了大批量数据的自动化比对;通过对文件md5值的比较实现文件比对,克服了目前的基于文件内容的检查,耗时长、效率低,未能有效压缩比对时长的问题,具有耗时短、效率高的优势;通过对文件md5值的比对并对程序及比对文件和结果设置不同的权限,克服了对比过程中需接触到实体数据,可能存在数据泄露风险的问题,具有安全性高、易于管理数据比对情况的优势。

虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1