CN107943988B - 一种数据拼接方法及装置 - Google Patents
一种数据拼接方法及装置 Download PDFInfo
- Publication number
- CN107943988B CN107943988B CN201711246243.3A CN201711246243A CN107943988B CN 107943988 B CN107943988 B CN 107943988B CN 201711246243 A CN201711246243 A CN 201711246243A CN 107943988 B CN107943988 B CN 107943988B
- Authority
- CN
- China
- Prior art keywords
- file
- classified
- data
- records
- temporary
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/14—Details of searching files based on file metadata
- G06F16/148—File search processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/02—Banking, e.g. interest calculation or account maintenance
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Library & Information Science (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据拼接方法及装置,该方法包括:获取数据主文件和分类文件,其中数据主文件为增量数据文件,分类文件为全量数据文件;从数据主文件中抽取出与分类文件拼接的关联字段;按照第一预设规则,将关联字段与分类文件组成第一临时文件;按照第二预设规则,从第一临时文件中筛选出第二临时文件;从第二临时文件中筛选出所有分类文件记录;将数据主文件与分类文件记录进行拼接。采用本发明提供的方案,在拼接之前根据数据主文件记录,从分类文件中抽取出所有键值与数据主文件一致的记录组成第二临时文件来再跟数据主文件的记录拼接,在拼接处理时由于两个文件的键值相同,大小相同,排序和筛选IO会大大减少,从而达到提高处理效率的目的。
Description
技术领域
本发明涉及软件编程技术领域,特别是涉及一种方法及装置。
背景技术
随着银行业务的迅速增长,各行数据大集中是目前国内各行普遍通行的系统架构。对于这样的系统架构,各行的核心系统和其外围系统之间不会是直连的关系,因为随着后续业务的发展,各外围系统可能会不断地增加,核心系统要保持相对地稳定性,不可能不断地增加外围接口。
面对这样的需求,有些银行主要是通过数据采集来满足各外围系统的数据查询需求。而在数据采集实现技术中,作为采集的前提和基础,数据排序、拆分和拼接等处理则是整个数据采集的基础性工作。其效率的高低是满足银行数据服务需求的关键。
因此,亟需一种能够快速实现数据拼接的方法。
发明内容
为解决上述技术问题,本发明实施例提供了一种数据拼接方法及装置,技术方案如下:
一种数据拼接方法,包括:
获取数据主文件和分类文件,其中数据主文件为增量数据文件,分类文件为全量数据文件;
从所述数据主文件中抽取出与所述分类文件拼接的关联字段;
按照第一预设规则,将所述关联字段与所述分类文件组成第一临时文件;
按照第二预设规则,从所述第一临时文件中筛选出第二临时文件;
从所述第二临时文件中筛选出所有分类文件记录;
将所述数据主文件与所述分类文件记录进行拼接。
优选地,按照第一预设规则,将所述关联字段与所述分类文件组成第一临时文件,包括:
按照将所述关联字段与所述分类文件中的关联字段位置对齐、其他位置置空的规则,将所述关联字段与所述分类文件组成第一临时文件。
优选地,按照第二预设规则,从所述第一临时文件中筛选出第二临时文件,包括:
从所述第一临时文件中抽取出重复键值的记录;
由抽取的重复键值的记录组成所述第二临时文件。
优选地,从所述第二临时文件中筛选出所有分类文件记录,包括:
采用DFSORT工具从所述第二临时文件中筛选出所有分类文件记录。
优选地,所述分类文件为KSDS文件。
一种数据拼接装置,包括:
获取单元,用于获取数据主文件和分类文件,其中,数据主文件为增量数据文件,分类文件为全量数据文件;
第一抽取单元,用于从所述数据主文件中抽取出与所述分类文件拼接的关联字段;
第一组成单元,用于按照第一预设规则,将所述关联字段与所述分类文件组成第一临时文件;
第一筛选单元,用于按照第二预设规则,从所述第一临时文件中筛选出第二临时文件;
第二筛选单元,用于从所述第二临时文件中筛选出所有分类文件记录;
拼接单元,用于将所述数据主文件与所述分类文件记录进行拼接。
优选地,所述第一组成单元,包括:
组成子单元,用于按照将所述关联字段与所述分类文件中的关联字段位置对齐、其他位置置空的规则,将所述关联字段与所述分类文件组成第一临时文件。
优选地,所述第一筛选单元,包括:
第二抽取单元,用于从所述第一临时文件中抽取出重复键值的记录;
第二组成单元,用于由抽取的重复键值的记录组成所述第二临时文件。
优选地,所述第二筛选单元,包括:
筛选子单元,用于采用DFSORT工具从所述第二临时文件中筛选出所有分类文件记录。
优选地,所述分类文件为KSDS文件。
传统的技术实现方案,在数据主文件表记录和分类文件记录的数量级都很大的情况下,大量的IO和处理时间会浪费在查找分类文件记录上,不能充分的利用系统资源,造成批量时间过长。而采用本发明实施例提供的技术方案,在拼接之前根据数据主文件记录,从分类文件中抽取出所有键值与数据主文件一致的记录组成第二临时文件来再跟数据主文件的记录拼接,在拼接处理时由于两个文件的键值相同,大小相同,排序和筛选IO会大大减少,从而达到提高处理效率的目的。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例所提供的一种数据拼接方法的一种流程示意图;
图2为本发明实施例所提供的一种数据拼接装置的一种结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,图1为本发明实施例提供的一种拼接方法的一种实现流程图,所述方法包括:
步骤S101、获取数据主文件和分类文件。
其中数据主文件为增量数据文件,分类文件为全量数据文件。
其中,全量数据就是表中所有的数据,增量数据是上次导出之后的新数据。
以账号为例,若某个行所有账号与分类信息的记录总和为分类文件,则数据主文件可以为某一天改行所有动账账号的存款信息。
步骤S102、从所述数据主文件中抽取出与所述分类文件拼接的关联字段。
步骤S103、按照将所述关联字段与所述分类文件中的关联字段位置对齐、其他位置置空的规则,将所述关联字段与所述分类文件组成第一临时文件。
其中,步骤S102及步骤S103描述的是生成第一临时文件的过程,具体地,按照分类文件的格式,从数据主文件记录中抽取出跟分类文件拼接的关联字段,按照与分类文件关联字段位置对齐,其他位置置空的规则,追加到分类文件记录的后面合并组成第一临时文件。
步骤S104、从所述第一临时文件中抽取出重复键值的记录。
步骤S105、由抽取的重复键值的记录组成所述第二临时文件。
其中,步骤S104及步骤S105描述的是生成第二临时文件的过程,具体地,当从第一临时文件中抽取出重复键值的记录后,可以将抽取的记录复制到第二临时文件中。
步骤S106、采用DFSORT工具从所述第二临时文件中筛选出所有分类文件记录。
第二临时文件包含的记录由两部分组成,数据主文件的记录和分类文件的记录。用DFSORT筛选出第二临时文件中所有的分类文件记录。
步骤S107、将所述数据主文件与所述分类文件记录进行拼接。
将从第二临时文件中筛选出的所有分类文件记录作为一个mini的分类文件跟数据主文件做拼接形成一个所有记录都含有分类信息的新数据文件,为后续的分类处理做准备。
以下以表一、表二为例具体说明本发明的实现:
其中,表一为数据主文件,表二为分类文件,表三为第一临时文件,表四为第二临时文件,表五为从第二临时文件中筛选出所有分类文件记录,表六为将依据步骤S107得到的拼接后的文件。
表一与表二的关联字段分别为表一中的字段A与表二中的字段1。
表一:
表三:
Z0001 | 字段1 | 分省信息 | 分客户信息 |
Z0002 | |||
………. | |||
U0001 | 字段A | ||
U0002 | |||
………. |
表四:
Z000N | 字段1 | 分省信息 | 分客户信息 |
………. | |||
U0001 | 字段A | ||
………. |
表五:
传统的技术实现方案,在数据主文件表记录和分类文件记录的数量级都很大的情况下,大量的IO和处理时间会浪费在查找分类文件记录上,不能充分的利用系统资源,造成批量时间过长。而采用本发明实施例提供的技术方案,在拼接之前根据数据主文件记录,从分类文件中抽取出所有键值与数据主文件一致的记录组成第二临时文件来再跟数据主文件的记录拼接,在拼接处理时由于两个文件的键值相同,大小相同,排序和筛选IO会大大减少,从而达到提高处理效率的目的。
请参阅图2,图2为本发明实施例提供的数据拼接装置的一种结构示意图,该装置结构示意图中的各单元的工作过程参照图1对应的实施例中方法的执行过程,该装置包括:
获取单元210,用于获取数据主文件和分类文件,其中,数据主文件为增量数据文件,分类文件为全量数据文件;
第一抽取单元220,用于从所述数据主文件中抽取出与所述分类文件拼接的关联字段;
组成子单元230,用于按照将所述关联字段与所述分类文件中的关联字段位置对齐、其他位置置空的规则,将所述关联字段与所述分类文件组成第一临时文件;
第二抽取单元240,用于从所述第一临时文件中抽取出重复键值的记录;
第二组成单元250,用于由抽取的重复键值的记录组成所述第二临时文件;
筛选子单元260,用于采用DFSORT工具从所述第二临时文件中筛选出所有分类文件记录;
拼接单元270,用于将所述数据主文件与所述分类文件记录进行拼接。
传统的技术实现方案,在数据主文件表记录和分类文件记录的数量级都很大的情况下,大量的IO和处理时间会浪费在查找分类文件记录上,不能充分的利用系统资源,造成批量时间过长。而采用本发明实施例提供的技术方案,在拼接之前根据数据主文件记录,从分类文件中抽取出所有键值与数据主文件一致的记录组成第二临时文件来再跟数据主文件的记录拼接,在拼接处理时由于两个文件的键值相同,大小相同,排序和筛选IO会大大减少,从而达到提高处理效率的目的。
另外,在实际应用中,可将数据拼接装置的各个功能在硬件上采用模块化设计。通过模块划分可以提高模块利用率,具体地,数据拼接装置包括:合并处理模块,数据筛选处理模块,数据拼接处理模块。
其中:
合并处理模块用于:
获取数据主文件的所有关联主键,按照分类文件关联字段的位置,其他位置置空的规则,组织新的记录,与分类文件合并到临时文件A中
数据筛选处理模块用于:
对于临时文件A中键值重复的记录,筛选所有含分类信息的分类文件记录到新的临时文件B中,此时的临时文件B是含分类信息的分类文件的子集。
数据拼接处理模块用于:
根据拼接后的数据文件结构,将需要拼接的字段按照关联关系将数据文件和临时文件B的分类信息字段拼接形成新文件的记录输出到结果文件,为后续的拆分处理作准备。
上述模块之间是顺序执行,前一个模块是后一个模块的输入,后一个模块是前一个模块的输出。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
对于装置或系统实施例而言,由于其基本相应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置或系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,在没有超过本发明的精神和范围内,可以通过其他的方式实现。当前的实施例只是一种示范性的例子,不应该作为限制,所给出的具体内容不应该限制本发明的目的。例如,所述单元或子单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或多个子单元结合一起。另外,多个单元可以或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
另外,所描述系统,装置和方法以及不同实施例的示意图,在不超出本发明的范围内,可以与其它系统,模块,技术或方法结合或集成。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
以上所述仅是本发明的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (6)
1.一种数据拼接方法,其特征在于,包括:
获取数据主文件和分类文件,其中数据主文件为增量数据文件,分类文件为全量数据文件;
从所述数据主文件中抽取出与所述分类文件拼接的关联字段;
按照将所述关联字段与所述分类文件中的关联字段位置对齐、其他位置置空的规则,将所述关联字段与所述分类文件组成第一临时文件;
从所述第一临时文件中抽取出重复键值的记录;
由抽取的重复键值的记录组成第二临时文件;
从所述第二临时文件中筛选出所有分类文件记录;
将所述数据主文件与所述分类文件记录除所述关联字段之外的其余字段进行拼接,得到拼接后的文件。
2.根据权利要求1所述的方法,其特征在于,从所述第二临时文件中筛选出所有分类文件记录,包括:
采用DFSORT工具从所述第二临时文件中筛选出所有分类文件记录。
3.根据权利要求1-2任一项所述的方法,其特征在于,所述分类文件为KSDS文件。
4.一种数据拼接装置,其特征在于,包括:
获取单元,用于获取数据主文件和分类文件,其中,数据主文件为增量数据文件,分类文件为全量数据文件;
第一抽取单元,用于从所述数据主文件中抽取出与所述分类文件拼接的关联字段;
第一组成单元,用于用于按照将所述关联字段与所述分类文件中的关联字段位置对齐、其他位置置空的规则,将所述关联字段与所述分类文件组成第一临时文件;
第一筛选单元,用于按照第二预设规则,从所述第一临时文件中筛选出第二临时文件;
第二筛选单元,用于从所述第二临时文件中筛选出所有分类文件记录;
拼接单元,用于将所述数据主文件与所述分类文件记录除所述关联字段之外的其余字段进行拼接,得到拼接后的文件;
其中,所述第一筛选单元,包括:
第二抽取单元,用于从所述第一临时文件中抽取出重复键值的记录;
第二组成单元,用于由抽取的重复键值的记录组成所述第二临时文件。
5.根据权利要求4所述的装置,其特征在于,所述第二筛选单元,包括:
筛选子单元,用于采用DFSORT工具从所述第二临时文件中筛选出所有分类文件记录。
6.根据权利要求4-5任一项所述的装置,其特征在于,所述分类文件为KSDS文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711246243.3A CN107943988B (zh) | 2017-12-01 | 2017-12-01 | 一种数据拼接方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711246243.3A CN107943988B (zh) | 2017-12-01 | 2017-12-01 | 一种数据拼接方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107943988A CN107943988A (zh) | 2018-04-20 |
CN107943988B true CN107943988B (zh) | 2021-10-19 |
Family
ID=61947208
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711246243.3A Active CN107943988B (zh) | 2017-12-01 | 2017-12-01 | 一种数据拼接方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107943988B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116089436B (zh) * | 2022-11-29 | 2023-11-07 | 荣耀终端有限公司 | 一种大数据量的数据稽核方法和电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101799807A (zh) * | 2009-02-10 | 2010-08-11 | 中国移动通信集团公司 | 一种异构数据表的合并方法及其系统 |
CN103678392A (zh) * | 2012-09-20 | 2014-03-26 | 阿里巴巴集团控股有限公司 | 一种数据增量合并的方法及其装置 |
CN103744628A (zh) * | 2014-01-27 | 2014-04-23 | 北京奇虎科技有限公司 | SSTable文件存储方法及装置 |
CN106445968A (zh) * | 2015-08-11 | 2017-02-22 | 阿里巴巴集团控股有限公司 | 一种数据合并方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9411859B2 (en) * | 2009-12-14 | 2016-08-09 | Lexisnexis Risk Solutions Fl Inc | External linking based on hierarchical level weightings |
-
2017
- 2017-12-01 CN CN201711246243.3A patent/CN107943988B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101799807A (zh) * | 2009-02-10 | 2010-08-11 | 中国移动通信集团公司 | 一种异构数据表的合并方法及其系统 |
CN103678392A (zh) * | 2012-09-20 | 2014-03-26 | 阿里巴巴集团控股有限公司 | 一种数据增量合并的方法及其装置 |
CN103744628A (zh) * | 2014-01-27 | 2014-04-23 | 北京奇虎科技有限公司 | SSTable文件存储方法及装置 |
CN106445968A (zh) * | 2015-08-11 | 2017-02-22 | 阿里巴巴集团控股有限公司 | 一种数据合并方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN107943988A (zh) | 2018-04-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103631969B (zh) | 一种报表数据的生成方法及装置 | |
CN101276364B (zh) | 一种分布式计算数据合并方法、系统及其装置 | |
CN101772760B (zh) | 计算机执行方法以及计算机执行装置 | |
CN110674154B (zh) | 一种基于Spark的对Hive中数据进行插入、更新和删除的方法 | |
CN104572735B (zh) | 一种图片标注词推荐方法及装置 | |
CN103345484A (zh) | 基于动态域的报表处理系统及方法 | |
CN103246549B (zh) | 一种数据转存的方法及系统 | |
CN101697216A (zh) | 产品数据管理数据的导入方法和企业资源计划系统 | |
CN107103035A (zh) | 本地表数据更新方法及装置 | |
CN104298736A (zh) | 数据集合连接方法、装置及数据库系统 | |
CN110147361A (zh) | 大数据环境下实现主数据编码规则维护功能的系统及其方法 | |
CN106126522A (zh) | 一种会计报表的处理系统 | |
CN107665464A (zh) | 生成征信报文的方法、装置、设备及计算机可读存储介质 | |
CN106557307A (zh) | 业务数据的处理方法及处理系统 | |
CN110728123A (zh) | 一种报表生成方法、系统及相关设备 | |
CN101751397B (zh) | 一种将文件导入数据库的方法及装置 | |
CN107943988B (zh) | 一种数据拼接方法及装置 | |
CN102521356A (zh) | 基于确定有限状态自动机的正则表达式匹配设备和方法 | |
CN104123376B (zh) | 一种基于列模板的智能文本数据采集方法和系统 | |
CN107133327A (zh) | 一种支持多数据类型的数据交换方法及系统 | |
CN109271448A (zh) | 基于数据库为平台的数据同步系统及方法 | |
CN107045538A (zh) | 一种基于kettle的web端交换管理方法 | |
CN106686025A (zh) | 收集数据的方法和装置 | |
CN110222286A (zh) | 信息获取方法、装置、终端和计算机可读存储介质 | |
CN105930323A (zh) | 一种文件生成方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |