CN112581277A - 一种数据处理方法及装置 - Google Patents
一种数据处理方法及装置 Download PDFInfo
- Publication number
- CN112581277A CN112581277A CN202011549423.0A CN202011549423A CN112581277A CN 112581277 A CN112581277 A CN 112581277A CN 202011549423 A CN202011549423 A CN 202011549423A CN 112581277 A CN112581277 A CN 112581277A
- Authority
- CN
- China
- Prior art keywords
- transaction information
- transaction
- data processing
- key
- party
- 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.)
- Pending
Links
Images
Classifications
-
- 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/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2358—Change logging, detection, and notification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
-
- 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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/389—Keeping log of transactions for guaranteeing non-repudiation of a transaction
-
- 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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Accounting & Taxation (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Finance (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Technology Law (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供一种数据处理方法及装置,该方法包括:所述数据处理系统获取联机方的第一交易信息,以及渠道方的第二交易信息,所述第一交易信息和所述第二交易信息为键值型交易信息;所述数据处理系统将主键相同的第一交易信息和第二交易信息分配至同一算法容器;所述数据处理系统通过所述算法容器将所述算法容器中的第一交易信息和第二交易信息进行匹配,获取交易信息匹配结果。上述方法中,能够加快数据处理速度,提高数据处理的时效性,以及消除交易信息分块规则与业务逻辑的耦合,增加交易信息分块的灵活性。
Description
技术领域
本申请涉及数据处理技术领域,尤其涉及一种数据处理方法及装置。
背景技术
在会计电算化环境下,系统提供自动对账功能,即系统根据用户设置的对账条件进行逐笔检查;对达到对账标准的交易信息进行标记为相平交易信息,对未达到对账标准的交易信息进行标记为不平交易信息,未进行对账的交易信息进行标记为暂存交易信息。系统进行自动对账的条件一般包括交易发生的日期、结算式、结算票号、发生金额相同等。
现有技术的通过第三方支付软件支付的交易场景中,银行机构会将联机生成的交易信息存储,并发送至第三方支付机构的对应渠道,第三方支付机构的对应渠道可以是支付宝、微信等支付软件对应的数据库或文件等。为保证银行机构与第三方支付机构的交易信息一致,则需要定期进行第三方支付机构和银行机构对账。其中,银行机构的交易平台根据交易信息分块规则,为联机交易信息分配分块号;第三方支付机构也依据相同的交易信息分块规则,为渠道交易信息分配分块号;对账系统获取相同分块号的联机交易信息分块和渠道交易信息分块,进行匹配获取匹配结果。但当收到营销等活动的影响而导致交易量剧增时,根据交易信息分块规则确定的联机交易信息分块和渠道交易信息分块所包含的交易信息数量也对应剧增,相应的,导致交易信息匹配速度降低和时效性差;且该交易信息分块规则因为与业务逻辑耦合,导致规则更新工作复杂,浪费人力物力。
因此,现在亟需一种数据处理方法及装置,能够加快数据处理速度,提高数据处理的时效性,以及消除交易信息分块规则与业务逻辑的耦合,增加交易信息分块的灵活性。
发明内容
本发明实施例提供一种数据处理方法及装置,能够加快数据处理速度,提高数据处理的时效性,以及消除交易信息分块规则与业务逻辑的耦合,增加交易信息分块的灵活性。
第一方面,本发明实施例提供一种数据处理方法,适用于包含至少一个算法容器的数据处理系统,该方法包括:
所述数据处理系统获取联机方的第一交易信息,以及渠道方的第二交易信息,所述第一交易信息和所述第二交易信息为键值型交易信息;
所述数据处理系统将主键相同的第一交易信息和第二交易信息分配至同一算法容器;
所述数据处理系统通过所述算法容器将所述算法容器中的第一交易信息和第二交易信息进行匹配,获取交易信息匹配结果。
上述方法中,第一交易信息和第二交易信息为键值型交易信息。如此,可以快速获取主键相同的第一交易信息和第二交易信息,并进行分配,加快交易信息分配速度。且由于交易信息的格式相同,可以实现快速匹配。另外,上述方法在数据处理系统中设置分配规则,相比于现有技术的通过与业务逻辑耦合的交易信息分块规则,获取联机方交易信息分块和渠道方交易信息分块进行匹配来说;可以将分配规则与业务逻辑解耦,降低更改分配规则的成本,增加设置分配规则的灵活性。如,现有技术的对账系统中的对账并行进程数量一定,当大量交易出现的时候,根据业务逻辑耦合的交易信息分块规则进行分块,每个分块中的交易信息数量也会相应增加,例如,同一商户原来分块的交易信息有100条,交易信息暴增的时候,分块的交易信息变成1000条;因此需要在业务逻辑中更改交易信息分块规则,保持分块中的交易信息不要过多而降低对账速度;但交易信息分块规则的更改需要涉及业务逻辑的变动,而业务逻辑的复杂,因此增加大量人力成本。因此,本申请将现有技术中的交易信息分块规则与业务逻辑解耦,在数据处理系统中设置分配规则,即降低更改交易信息分块规则的成本,又增加设置分配规则的灵活性。
可选的,获取联机方的第一交易信息,以及渠道方的第二交易信息之前,还包括:获取所述第一交易信息的数量和/或所述第二交易信息的数量;根据所述第一交易信息的数量和/或所述第二交易信息的数量对所述数据处理系统中的算法容器集群进行扩容或缩容。
上述方法中,根据第一交易信息的数量和/或第二交易信息的数量,灵活的对数据处理系统中的算法容器集群进行扩容或缩容,可以在不浪费算法容器的资源的前提下,使用足够的算法容器对第一交易信息和第二交易信息进行对账,保证了数据处理的速度。
可选的,获取联机方的第一交易信息,以及渠道方的第二交易信息,包括:从所述联机方的第一交易明细记录中获取包含以下状态的交易信息作为所述第一交易信息:未对账状态、暂存已对账状态、需要重新对账的相平已对账状态、需要重新对账的不平已对账状态;从所述渠道方的第二交易明细记录中获取包含以下状态的交易信息作为所述第二交易信息:暂存已对账状态、需要重新对账的相平已对账状态、需要重新对账的不平已对账状态的交易信息,以及所述第二交易明细记录中未记录的交易信息。
上述方法中,示例性的,交易明细记录中未对账状态指的是上一周期没有进行对账的交易信息的状态,可以是对账窗口期新增的交易信息的状态;暂存已对账状态:上次对账没有获取到相同主键的交易信息的交易信息的状态;需要重新对账的相平已对账状态:上次对账中第一交易信息和第二交易信息的匹配内容符合预设条件的交易信息的状态,但是渠道方认为对账结果存疑,要求重新对账;需要重新对账的不平已对账状态,上次对账的交易金额、商户名称等信息有出入的,即,上次对账中第一交易信息和第二交易信息的匹配内容不符合预设条件的交易信息的状态,渠道方认为对账结果存疑,要求重新对账。其中,由于第二交易明细记录中的交易信息是根据交易信息匹配结果记录的,因此,对账窗口期新增的交易信息为第二交易明细记录中未记录的交易信息,当前对账需要获取并对账。
可选的,所述数据处理系统还包含调度器和数据转移工具,获取联机方的第一交易信息之前,还包括:所述数据处理系统通过所述调度器获取所述联机方的第三交易信息;所述数据处理系统通过所述数据转移工具将所述第三交易信息转换为键值型交易信息,得到所述第一交易明细记录,将所述第一交易明细记录存储在键值型数据库中。
上述方法中,数据处理系统通过调度器获取联机方的第三交易信息,并通过数据转移工具将第三交易信息转换为键值型交易信息,获取第一交易明细记录,存储于键值型数据库中。如此,当数据处理系统进行对账时,可以直接从键值型数据库中获取第一交易明细记录,而不会直接访问联机方的数据源,可以对应保证用户交易的正常运行和数据处理系统获取交易信息的准确性。这里,若是数据处理系统直接从联机方的数据源中获取交易信息,由于联机方的数据源联机实时进行交易信息的写入与输出,并发资源较大,相应的数据写入与输出压力大;若直接从联机方的数据源获取大量交易信息,则有可能导致联机方的数据源出现故障,导致交易信息写入与输出的准确性降低。
可选的,获取所述联机方的第一交易信息,以及渠道方的第二交易信息之后,还包括:将所述第一交易信息的状态信息转换为未对账状态;将所述第二交易信息的状态信息转换为未对账状态,并将所述第二交易信息转换为键值型交易信息。
上述方法中,若算法容器可以通过识别交易信息的状态来判断该交易信息是否需要进行对账,则若交易信息不是未对账状态,算法容器不会对交易信息进行对账。因此,在获取到交易信息后,先将原来的状态均清洗为未对账状态。
可选的,所述数据处理系统通过所述算法容器将所述算法容器中的第一交易信息和第二交易信息进行匹配,获取交易信息匹配结果,包括:针对同一主键的第一交易信息和第二交易信息,确定预设键值字段在所述第一交易信息的第一键值与所述预设键值字段在所述第二交易信息的第二键值是否相同;若均相同,则将所述第一交易信息和所述第二交易信息分别标记为相平已对账状态;若存在至少一个键值字段的键值不同,则将所述第一交易信息和所述第二交易信息分别标记为不平已对账状态;若存在无相同主键的第一交易信息或第二交易信息,则将所述无相同主键的第一交易信息或第二交易信息易标记为暂存已对账状态。
上述方法中,通过设置预设条件,如,预设键值字段;若第一交易信息和第二交易信息的预设键值字段相同,则第一交易信息和第二交易信息对应的交易信息没有错误为相平已对账状态,否则有错误为不平未对账状态,若第一交易信息或第二交易信息匹配不到相同主键的交易信息,则标记为暂存已对账状态。如此,标记完对应状态的交易匹配结果返回至联机方和渠道方,便于下次对账时,可以根据状态确定哪些交易信息需要重新对账,哪些可以无需进行再次对账。
可选的,获取交易信息匹配结果之后,还包括:根据带标记状态的第二交易信息更新第二交易明细记录;并根据带标记状态后的第一交易信息更新第一交易明细记录。
上述方法中,保证联机方的第一交易明细记录和渠道方的第二交易明细记录的实时性和准确性。
第二方面,本发明实施例提供一种数据处理装置,适用于包含至少一个算法容器的数据处理系统,该装置包括:
收发模块,用于获取联机方的第一交易信息,以及渠道方的第二交易信息,所述第一交易信息和所述第二交易信息为键值型交易信息;
处理模块,用于将主键相同的第一交易信息和第二交易信息分配至同一算法容器;
所述处理模块还用于,通过所述算法容器将所述算法容器中的第一交易信息和第二交易信息进行匹配,获取交易信息匹配结果。
第三方面,本申请实施例还提供一种计算设备,包括:存储器,用于存储程序;处理器,用于调用所述存储器中存储的程序,按照获得的程序执行如第一方面的各种可能的设计中所述的方法。
第四方面,本申请实施例还提供一种计算机可读非易失性存储介质,包括计算机可读程序,当计算机读取并执行所述计算机可读程序时,使得计算机执行如第一方面的各种可能的设计中所述的方法。
本申请的这些实现方式或其他实现方式在以下实施例的描述中会更加简明易懂。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种数据处理的架构示意图;
图2为本发明实施例提供的一种数据处理方法的流程示意图;
图3为本发明实施例提供的一种数据处理方法的流程示意图;
图4为本发明实施例提供的一种数据处理装置示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
图1为本发明实施例提供的一种数据处理的系统架构,如图1所示,联机方将接收的第三交易信息存储在不同存储形式的数据源中,如,关系型数据库、文件等,并将对应的交易信息发送至渠道方,存储在渠道方的不同存储形式的数据源中,如,关系型数据库、文件等。数据处理系统通过数据转移模块中的调度器,获取联机方的各不同存储形式的数据源中的第三交易信息,通过数据转移模块将各不同存储形式的数据源中的交易信息转换为键值型交易信息,得到第一交易明细记录,并将第一交易明细记录存储在键值型数据库中。数据处理系统根据联机方的第一交易明细记录确定需要进行对账的第一交易信息的数量,根据第一交易信息的数量对算法容器集群进行相应的扩容或缩容。数据处理系统获取联机方需要进行对账的第一交易信息和渠道方需要进行对账的第二交易信息,并将渠道方的第二交易信息转换为键值型交易信息,使得第一交易信息和第二交易信息均为主键包含交易流水号、键值包含交易金额的键值型交易信息。通过数据清洗模块将同为键值型交易信息的第一交易信息和第二交易信息的状态信息转换为未对账状态。通过数据分配模块将主键中交易流水号相同的第一交易信息和第二交易信息分配至同一算法容器中。通过算法容器对第一交易信息和第二交易信息进行对账,针对同一主键的第一交易信息和第二交易信息,确定预设键值字段在第一交易信息的第一键值与预设键值字段在第二交易信息的第二键值是否相同;若均相同,则将第一交易信息和第二交易信息分别标记为相平已对账状态;若存在至少一个键值字段的键值不同,则将所述第一交易信息和所述第二交易信息分别标记为不平已对账状态;若存在无相同主键的第一交易信息或第二交易信息,则将所述无相同主键的第一交易信息或第二交易信息标记为暂存已对账状态。如此获取交易匹配结果。数据处理系统根据交易匹配结果更新联机方第一交易明细记录中的第一交易信息的状态信息,将交易匹配结果中的第二交易信息的状态信息写入渠道方的第二交易明细记录中。其中,从渠道方的第二交易明细记录中获取第二交易信息时,将第二交易明细记录中的第二交易信息的记录删除,以防止同一笔交易信息在第二交易明细记录中存在两条记录。
基于此,本申请实施例提供了一种数据处理方法的流程,适用于包含至少一个算法容器的数据处理系统,如图2所示,包括:
步骤201、所述数据处理系统获取联机方的第一交易信息,以及渠道方的第二交易信息,所述第一交易信息和所述第二交易信息为键值型交易信息;
此处,键值型交易信息可以为Key-Value形式,其中,主键Key中可以包含交易流水号、盐值、时间戳。交易流水号是交易信息的唯一标识,交易流水号相同的第一交易信息和第二交易信息属于同一笔交易,主键Key也可以是用于关联第一交易信息和第二交易信息的其它作为唯一标识的相关字段,如,该字段可以以交易流水号、盐值、时间戳的原字段的变换、压缩等形式进行存储。盐值可以由交易流水号哈希取余获得,位于key值的首端,生成方法包含但不限于单向哈希算法;时间戳可以为交易清算时间。这里对主键的描述仅是一种实例,对主键的具体内容不做限定。
其中,键值Value可以包含:联机方名称、渠道方名称、商户名称、商品种类、商品数量、交易金额、交易状态、对账时间等等。其中,联机方名称可以为银行机构名称,渠道方名称可以为第三方支付机构名称。这里对键值的描述仅是一种实例,对主键的具体内容不做限定。
步骤202、所述数据处理系统将主键相同的第一交易信息和第二交易信息分配至同一算法容器;
此处,第一交易信息和第二交易信息的主键相同,第一交易信息和第二交易信息属于同一笔交易,则第一交易信息和第二交易信息需要进行对账,则需要将第一交易信息和第二交易信息分配到同一算法容器中。这里第一交易信息和第二交易信息分配所应用的算法包含但不限于MapReduce(一种编程模型,用于大规模数据集(大于1TB)的并行运算。概念"Map(映射)"和"Reduce(归约)")计算任务机制、Spark(一种并行计算框架)、Flink(由Apache软件基金会开发的开源流处理框架,其核心是用Java和Scala编写的分布式流数据流引擎。Flink以数据并行和流水线方式执行任意流数据程序,Flink的流水线运行时系统可以执行批处理和流处理程序)。
步骤203、所述数据处理系统通过所述算法容器将所述算法容器中的第一交易信息和第二交易信息进行匹配,获取交易信息匹配结果。
上述方法中,第一交易信息和第二交易信息为键值型交易信息。如此,可以快速获取主键相同的第一交易信息和第二交易信息,并进行分配,加快交易信息分配速度。且由于交易信息的格式相同,可以实现快速匹配。另外,上述方法在数据处理系统中设置分配规则,相比于现有技术的通过与业务逻辑耦合的交易信息分块规则,获取联机方交易信息分块和渠道方交易信息分块进行匹配来说;可以将分配规则与业务逻辑解耦,降低更改分配规则的成本,增加设置分配规则的灵活性。如,现有技术的对账系统中的对账并行进程数量一定,当大量交易出现的时候,根据业务逻辑耦合的交易信息分块规则进行分块,每个分块中的交易信息数量也会相应增加,例如,同一商户原来分块的交易信息有100条,交易信息暴增的时候,分块的交易信息变成1000条;因此需要在业务逻辑中更改交易信息分块规则,保持分块中的交易信息不要过多而降低对账速度;但交易信息分块规则的更改需要涉及业务逻辑的变动,而业务逻辑的复杂,因此增加大量人力成本。因此,本申请将现有技术中的交易信息分块规则与业务逻辑解耦,在数据处理系统中设置分配规则,即降低更改交易信息分块规则的成本,又增加设置分配规则的灵活性。
本申请实施例提供了一种算法容器集群扩容和缩容方法,获取联机方的第一交易信息,以及渠道方的第二交易信息之前,还包括:获取所述第一交易信息的数量和/或所述第二交易信息的数量;根据所述第一交易信息的数量和/或所述第二交易信息的数量对所述数据处理系统中的算法容器集群进行扩容或缩容。也就是说,在对账之前,根据第一交易信息的数量和/或第二交易信息的数量对数据处理系统中的算法容器集群进行扩容或缩容。如此,数据处理系统在不浪费资源的基础上,建立足够的算法容器,以保证对账速度。这里还有一种优选的方式,即,根据第一交易信息的数量确定算法容器增加或减少数量。如此,由于第一交易明细记录为联机方在对账之前就已经生成的,因此,可以直接根据第一交易明细记录即可以确定第一交易信息的数量,获取第一交易信息的数量的速度快。而渠道方的第二交易明细记录是根据交易匹配结果确定的,因此,若获取第二交易信息数量,还要统计第二交易明细记录以外的第二交易信息,使得获取第二交易信息的数量的速度表较慢。
本申请实施例还提供了一种第一交易信息和第二交易信息的方法,获取联机方的第一交易信息,以及渠道方的第二交易信息,包括:从所述联机方的第一交易明细记录中获取包含以下状态的交易信息作为所述第一交易信息:未对账状态、暂存已对账状态、需要重新对账的相平已对账状态、需要重新对账的不平已对账状态;从所述渠道方的第二交易明细记录中获取包含以下状态的交易信息作为所述第二交易信息:暂存已对账状态、需要重新对账的相平已对账状态、需要重新对账的不平已对账状态的交易信息,以及所述第二交易明细记录中未记录的交易信息。也就是说,交易明细记录中新增的交易信息、上一次没有获取到相同主键的对应交易信息的交易信息、虽然已经确定联机方和渠道方的交易信息符合匹配条件,但仍需要重新对账的交易信息、虽然确定联机方和渠道方的交易信息不符合匹配条件,但仍需要重新对账的交易信息,这些第一交易明细记录和第二交易明细记录中的交易信息被确认为需要进行对账的第一交易信息和第二交易信息。对应渠道方还需要获取第二交易明细记录中未记录的交易信息。总的来说,第一交易信息和第二交易信息为未对账过的交易信息以及对账过,但还需要重新对账的交易信息。如此,保证了每一笔交易都进行了对账处理,提高第一交易明细记录和第二交易明细记录中对账结果的准确性。其中,若交易信息在联机方和/或渠道方中为暂存已对账状态,且在联机方和/或渠道方各自预先设置的时间内,仍未获取到相同主键的对应交易信息的交易信息进行对账,则联机方和/或渠道方将该交易信息的状态更新为不平已对账状态。
本申请实施例提供了一种数据转移方法,所述数据处理系统还包含调度器和数据转移工具,获取联机方的第一交易信息之前,还包括:所述数据处理系统通过所述调度器获取所述联机方的第三交易信息;所述数据处理系统通过所述数据转移工具将所述第三交易信息转换为键值型交易信息,得到所述第一交易明细记录,将所述第一交易明细记录存储在键值型数据库中。也就是说,进行对账前,先通过数据处理系统的调度器获取联机方的不同存储方式的各数据源中的第三交易信息。通过数据处理系统的数据转移工具,将第三交易信息转换为键值型交易信息,并生成第一交易明细记录,存储在键值型数据库。如此,可以保证各数据源无需直接提供第三交易信息给数据处理系统,保证各数据源联机资源的正常运行,进一步保证数据处理系统获取第一交易信息的准确性,以及各数据源通过联机资源获取的第三交易信息的准确性。这里的数据转移工具可以是Sqoop工具(一个用来将Hadoop和关系型数据库中的数据相互转移的工具,可以将一个关系型数据库(例如:MySQL、Oracle、Postgres等)中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中),这仅是为了便于描述方案所列举的一种示例,并不对具体实施做限制。
本申请实施例提供了一种数据清洗方法,获取所述联机方的第一交易信息,以及渠道方的第二交易信息之后,还包括:将所述第一交易信息的状态信息转换为未对账状态;将所述第二交易信息的状态信息转换为未对账状态,并将所述第二交易信息转换为键值型交易信息。也就是说,在获取到第一交易信息和第二交易信息后,第一交易信息和第二交易信息中还包含对账状态信息,则需要将对账状态信息全部清洗为未对账状态,防止出现算法容器读取到对账状态信息为已对账状态,而不对该交易信息进行对账的情况,保证对账正常进行。另外,该数据清洗流程在对账过程中可以重复进行,多次数据清洗获得的清洗结果相同,并不对数据清洗的结果造成影响。
本申请实施例提供了一种第一交易信息和第二交易信息匹配方法,所述数据处理系统通过所述算法容器将所述算法容器中的第一交易信息和第二交易信息进行匹配,获取交易信息匹配结果,包括:针对同一主键的第一交易信息和第二交易信息,确定预设键值字段在所述第一交易信息的第一键值与所述预设键值字段在所述第二交易信息的第二键值是否相同;若均相同,则将所述第一交易信息和所述第二交易信息分别标记为相平已对账状态;若存在至少一个键值字段的键值不同,则将所述第一交易信息和所述第二交易信息分别标记为不平已对账状态;若存在无相同主键的第一交易信息或第二交易信息,则将所述无相同主键的第一交易信息或第二交易信息易标记为暂存已对账状态。其中,预设键值字段可以为交易金额、商户名称、消费者标识等等。假若,预设键值字段为交易金额、商户名称、消费者标识,第一交易信息的键值中包含交易金额、商户名称、消费者标识、银行机构名称、第三方机构名称,与该第一交易信息主键相同的第二交易信息的键值中包含交易金额、商户名称、消费者标识、银行机构名称、第三方机构名称、商品类型、商品名称、商品数量;则在对同一主键的第一交易信息和第二交易信息进行匹配时,可以只获取第一交易信息和第二交易信息中预设键值字段的对应键值字段的第一键值和第二键值进行匹配,即,交易金额、商户名称、消费者标识;若均相同,则将第一交易信息和第二交易信息分别标记为相平已对账状态;否则分别标记为不平已对账状态;若存在无相同主键的第一交易信息或第二交易信息,则将该第一交易信息或第二交易信息易标记为暂存已对账状态,以暂存等候下一次对账。这里进行对账的交易信息,还可以根据具体业务需求设置为包括其他类型的第一交易信息和第二交易信息,上述方法仅是为了清晰描述本方案,并不对本方案做限制。
本申请实施例还提供了一种交易信息匹配结果的记录方法,获取交易信息匹配结果之后,还包括:根据带标记状态的第二交易信息更新第二交易明细记录;并根据带标记状态后的第一交易信息更新第一交易明细记录。这里需要说明的是,联机方的第一交易明细记录是在进行数据转移时生成的,因此,第一交易明细记录中包含所有联机方的交易信息,数据处理系统在获取到交易信息匹配结果后,在联机方的第一交易明细记录中根据交易信息匹配结果直接更新对应交易信息的对账状态信息即可;而由于渠道方的第二交易明细记录由于是将交易信息匹配结果写入生成的,因此,在一笔第二交易信息的交易信息匹配结果写入之前,需要将该第二交易信息上次对账的交易信息匹配结果删除,防止第二交易明细记录中对应同一笔第二交易信息,存在新旧多次对账产生的交易信息匹配结果,而导致的第二交易明细记录不准确的情况。这里可以通过键值型数据库对应的BulkLoad(一种可以对大量数据批量写入的工具)的方式将交易信息匹配结果写入第二交易明细记录中。
基于上述流程,本申请实施例提供了一种数据处理方法的流程,如图3所示,包括:
步骤301、将联机方的各数据源中的第三交易信息转换为键值型交易信息,以交易流水号和时间戳,以及盐值等为主键,以商户名称、消费者身份证号、银行卡号、交易金额等为键值;生成第一交易明细记录,并将第一交易明细记录存储至键值型数据库。
步骤302、获取联机方的第一交易信息的数量或者渠道方的第二交易信息的数量,根据第一交易信息的数量或者第二交易信息的数量确定所需要的算法容器数量,对算法容器集群进行扩容或缩容。
步骤303、获取联机方的键值型数据库中第一交易明细记录中的第一交易信息和渠道方的第二交易信息。其中,第一交易信息为第一交易明细记录中为未对账状态和/或暂存已对账状态和/或需要重新对账的相平已对账状态和/或需要重新对账的不平已对账状态的交易信息;第二交易信息为第二交易明细记录中为暂存已对账状态和/或需要重新对账的相平已对账状态和/或需要重新对账的不平已对账状态的交易信息,以及第二交易明细记录中不包含的交易信息。
步骤304、删除第二交易明细记录中第二交易信息的记录。
步骤305、将所述第一交易信息和第二交易信息的状态均清洗为未对账状态。
步骤306、将第二交易信息转换为键值型交易信息。
步骤307、将主键相同的第一交易信息和第二交易信息分配至同一算法容器。
步骤308、通过算法容器将第一交易信息和转换为键值型交易信息的第二交易信息匹配,确定第一交易信息和第二交易信息的相平已对账状态/不平已对账状态/暂存已对账状态,生成交易信息匹配结果。
步骤309、根据匹配结果更新第一交易明细记录,以及在第二交易明细记录中记录匹配结果。
步骤310、统计第一交易明细记录或第二交易明细记录中的交易信息匹配结果,生成对账汇总文件。对账汇总文件可以设置相应的粒度进行汇总,例如,同一个商家的各子公司对应的子对账汇总文件,以及该商家的所有子公司的对账汇总文件。
这里需要说明的是,上述流程步骤并不唯一,例如,步骤306可以在步骤305之前执行;步骤304可以在步骤303至步骤309中任一步骤中执行;步骤310可以执行,也可以不执行;上述流程步骤只是一种实例,并不对数据处理方法做限定。
基于同样的构思,本发明实施例提供一种数据处理装置,适用于包含至少一个算法容器的数据处理系统,图4为本申请实施例提供的一种数据处理装置示意图,如图4示,包括:
收发模块401,用于获取联机方的第一交易信息,以及渠道方的第二交易信息,所述第一交易信息和所述第二交易信息为键值型交易信息;
处理模块402,用于将主键相同的第一交易信息和第二交易信息分配至同一算法容器;
所述处理模块402还用于,通过所述算法容器将所述算法容器中的第一交易信息和第二交易信息进行匹配,获取交易信息匹配结果。
可选的,所述收发模块401还用于,获取所述第一交易信息的数量和/或所述第二交易信息的数量;所述处理模块402还用于,根据所述第一交易信息的数量和/或所述第二交易信息的数量对所述数据处理系统中的算法容器集群进行扩容或缩容。
可选的,所述收发模块401具体用于,从所述联机方的第一交易明细记录中获取包含以下状态的交易信息作为所述第一交易信息:未对账状态、暂存已对账状态、需要重新对账的相平已对账状态、需要重新对账的不平已对账状态;从所述渠道方的第二交易明细记录中获取包含以下状态的交易信息作为所述第二交易信息:暂存已对账状态、需要重新对账的相平已对账状态、需要重新对账的不平已对账状态的交易信息,以及所述第二交易明细记录中未记录的交易信息。
可选的,所述收发模块401还用于,通过所述调度器获取所述联机方的第三交易信息;所述处理模块402还用于,通过所述数据转移工具将所述第三交易信息转换为键值型交易信息,得到所述第一交易明细记录,将所述第一交易明细记录存储在键值型数据库中。
可选的,所述处理模块402还用于,将所述第一交易信息的状态信息转换为未对账状态;
将所述第二交易信息的状态信息转换为未对账状态,并将所述第二交易信息转换为键值型交易信息。
可选的,所述处理模块402具体用于,针对同一主键的第一交易信息和第二交易信息,确定预设键值字段在所述第一交易信息的第一键值与所述预设键值字段在所述第二交易信息的第二键值是否相同;若均相同,则将所述第一交易信息和所述第二交易信息分别标记为相平已对账状态;若存在至少一个键值字段的键值不同,则将所述第一交易信息和所述第二交易信息分别标记为不平已对账状态;若存在无相同主键的第一交易信息或第二交易信息,则将所述无相同主键的第一交易信息或第二交易信息易标记为暂存已对账状态。
可选的,所述处理模块402还用于,根据带标记状态的第二交易信息更新第二交易明细记录;并根据带标记状态后的第一交易信息更新第一交易明细记录。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种数据处理方法,其特征在于,适用于包含至少一个算法容器的数据处理系统,所述方法包括:
所述数据处理系统获取联机方的第一交易信息,以及渠道方的第二交易信息,所述第一交易信息和所述第二交易信息为键值型交易信息;
所述数据处理系统将主键相同的第一交易信息和第二交易信息分配至同一算法容器;
所述数据处理系统通过所述算法容器将所述算法容器中的第一交易信息和第二交易信息进行匹配,获取交易信息匹配结果。
2.如权利要求1所述的方法,其特征在于,获取联机方的第一交易信息,以及渠道方的第二交易信息之前,还包括:
获取所述第一交易信息的数量和/或所述第二交易信息的数量;
根据所述第一交易信息的数量和/或所述第二交易信息的数量对所述数据处理系统中的算法容器集群进行扩容或缩容。
3.如权利要求1所述的方法,其特征在于,获取联机方的第一交易信息,以及渠道方的第二交易信息,包括:
从所述联机方的第一交易明细记录中获取包含以下状态的交易信息作为所述第一交易信息:未对账状态、暂存已对账状态、需要重新对账的相平已对账状态、需要重新对账的不平已对账状态;
从所述渠道方的第二交易明细记录中获取包含以下状态的交易信息作为所述第二交易信息:暂存已对账状态、需要重新对账的相平已对账状态、需要重新对账的不平已对账状态的交易信息,以及所述第二交易明细记录中未记录的交易信息。
4.如权利要求1所述的方法,其特征在于,所述数据处理系统还包含调度器和数据转移工具,获取联机方的第一交易信息之前,还包括:
所述数据处理系统通过所述调度器获取所述联机方的第三交易信息;
所述数据处理系统通过所述数据转移工具将所述第三交易信息转换为键值型交易信息,得到所述第一交易明细记录,将所述第一交易明细记录存储在键值型数据库中。
5.如权利要求1所述的方法,其特征在于,获取所述联机方的第一交易信息,以及渠道方的第二交易信息之后,还包括:
将所述第一交易信息的状态信息转换为未对账状态;
将所述第二交易信息的状态信息转换为未对账状态,并将所述第二交易信息转换为键值型交易信息。
6.如权利要求1所述的方法,其特征在于,所述数据处理系统通过所述算法容器将所述算法容器中的第一交易信息和第二交易信息进行匹配,获取交易信息匹配结果,包括:
针对同一主键的第一交易信息和第二交易信息,确定预设键值字段在所述第一交易信息的第一键值与所述预设键值字段在所述第二交易信息的第二键值是否相同;若均相同,则将所述第一交易信息和所述第二交易信息分别标记为相平已对账状态;若存在至少一个键值字段的键值不同,则将所述第一交易信息和所述第二交易信息分别标记为不平已对账状态;
若存在无相同主键的第一交易信息或第二交易信息,则将所述无相同主键的第一交易信息或第二交易信息易标记为暂存已对账状态。
7.如权利要求6所述的方法,其特征在于,获取交易信息匹配结果之后,还包括:
根据带标记状态的第二交易信息更新第二交易明细记录;
并根据带标记状态后的第一交易信息更新第一交易明细记录。
8.一种数据处理装置,其特征在于,适用于包含至少一个算法容器的数据处理系统,所述装置包括:
收发模块,用于获取联机方的第一交易信息,以及渠道方的第二交易信息,所述第一交易信息和所述第二交易信息为键值型交易信息;
处理模块,用于将主键相同的第一交易信息和第二交易信息分配至同一算法容器;
所述处理模块还用于,通过所述算法容器将所述算法容器中的第一交易信息和第二交易信息进行匹配,获取交易信息匹配结果。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有程序,当所述程序在计算机上运行时,使得计算机实现执行权利要求1至7中任一项所述的方法。
10.一种计算机设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于调用所述存储器中存储的计算机程序,按照获得的程序执行如权利要求1至7任一权利要求所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011549423.0A CN112581277A (zh) | 2020-12-24 | 2020-12-24 | 一种数据处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011549423.0A CN112581277A (zh) | 2020-12-24 | 2020-12-24 | 一种数据处理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112581277A true CN112581277A (zh) | 2021-03-30 |
Family
ID=75140453
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011549423.0A Pending CN112581277A (zh) | 2020-12-24 | 2020-12-24 | 一种数据处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112581277A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101996380A (zh) * | 2009-08-11 | 2011-03-30 | 中国工商银行股份有限公司 | 一种查找错账的方法、装置及系统 |
CN105303437A (zh) * | 2015-10-15 | 2016-02-03 | 中国民生银行股份有限公司 | 对账的处理方法及装置 |
CN108734457A (zh) * | 2018-04-04 | 2018-11-02 | 首汽租赁有限责任公司 | 一种统一收银系统下的退款方法 |
CN109615495A (zh) * | 2018-10-11 | 2019-04-12 | 阿里巴巴集团控股有限公司 | 一种数据的对账方法、装置、设备及系统 |
CN109711840A (zh) * | 2018-12-26 | 2019-05-03 | 咪咕文化科技有限公司 | 一种交易数据处理方法、装置及存储介质 |
CN110245116A (zh) * | 2019-06-06 | 2019-09-17 | 深圳前海微众银行股份有限公司 | 对账数据处理方法、装置、设备及计算机可读存储介质 |
-
2020
- 2020-12-24 CN CN202011549423.0A patent/CN112581277A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101996380A (zh) * | 2009-08-11 | 2011-03-30 | 中国工商银行股份有限公司 | 一种查找错账的方法、装置及系统 |
CN105303437A (zh) * | 2015-10-15 | 2016-02-03 | 中国民生银行股份有限公司 | 对账的处理方法及装置 |
CN108734457A (zh) * | 2018-04-04 | 2018-11-02 | 首汽租赁有限责任公司 | 一种统一收银系统下的退款方法 |
CN109615495A (zh) * | 2018-10-11 | 2019-04-12 | 阿里巴巴集团控股有限公司 | 一种数据的对账方法、装置、设备及系统 |
CN109711840A (zh) * | 2018-12-26 | 2019-05-03 | 咪咕文化科技有限公司 | 一种交易数据处理方法、装置及存储介质 |
CN110245116A (zh) * | 2019-06-06 | 2019-09-17 | 深圳前海微众银行股份有限公司 | 对账数据处理方法、装置、设备及计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6946435B2 (ja) | スマートコントラクトへ、確認済みで、監査可能で且つ不変の入力を提供する方法及びシステム | |
JP6975101B2 (ja) | ブロックチェーンにおけるトランザクションの実行および妥当性確認のための方法、装置ならびに非一時的コンピュータ可読記憶媒体(ブロックチェーンにおけるトランザクション実行および妥当性確認) | |
CN108985742B (zh) | 交易处理方法、装置及区块链系统 | |
CN108446975B (zh) | 一种额度管理方法及装置 | |
CN106649828B (zh) | 一种数据查询方法及系统 | |
CN110032598B (zh) | 字段更新方法及装置、电子设备 | |
CN111966538B (zh) | 一种区块链数据的恢复方法和装置 | |
CN110188112A (zh) | 一种区块链智能合约的变更记录的追溯方法及装置 | |
CN112330181A (zh) | 基于区块链的企业信用评价方法及装置 | |
CN102208061A (zh) | 数据核销处理装置和数据核销处理方法 | |
US11188981B1 (en) | Identifying matching transfer transactions | |
CN110489418B (zh) | 一种数据聚合方法和系统 | |
CN109472680A (zh) | 一种账务处理方法及系统 | |
CN111984677B (zh) | 资源数据核对方法、装置、计算机设备和存储介质 | |
CN112581277A (zh) | 一种数据处理方法及装置 | |
CN111209283A (zh) | 一种数据处理方法及装置 | |
WO2017114243A1 (zh) | 一种卡号数据的处理方法及装置 | |
CN109614386B (zh) | 数据处理方法、装置、服务器及计算机可读存储介质 | |
CN111967994A (zh) | 一种智能合约的创建方法和装置 | |
CN113112272A (zh) | 基于区块链的外汇业务处理方法及装置 | |
CN107563888B (zh) | 统一管理在线票据的系统及其方法 | |
CN111752978A (zh) | 基于分布式缓存的卡bin路由选择方法、装置及系统 | |
CN117350880B (zh) | 基于雪花算法的全链路对账方法、装置、设备及介质 | |
CN112579605B (zh) | 一种数据存储方法、装置、存储介质及服务器 | |
CN115203486A (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 |