CN116401270A - 数据查询方法、装置、计算机设备和存储介质 - Google Patents
数据查询方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN116401270A CN116401270A CN202310285471.0A CN202310285471A CN116401270A CN 116401270 A CN116401270 A CN 116401270A CN 202310285471 A CN202310285471 A CN 202310285471A CN 116401270 A CN116401270 A CN 116401270A
- Authority
- CN
- China
- Prior art keywords
- data
- data table
- query
- service record
- receiving service
- 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
- 238000000034 method Methods 0.000 title claims abstract description 59
- 238000012545 processing Methods 0.000 claims abstract description 92
- 238000013500 data storage Methods 0.000 claims description 43
- 238000012546 transfer Methods 0.000 claims description 25
- 238000004590 computer program Methods 0.000 claims description 24
- 238000005516 engineering process Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 13
- 230000005012 migration Effects 0.000 description 12
- 238000013508 migration Methods 0.000 description 12
- 239000012634 fragment Substances 0.000 description 7
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 238000007726 management method Methods 0.000 description 5
- 230000008676 import Effects 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000004140 cleaning Methods 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 239000006185 dispersion Substances 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24553—Query execution of query operations
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
-
- 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/24—Querying
- G06F16/248—Presentation of query results
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及一种数据查询方法、装置、计算机设备和存储介质,涉及计算机技术领域。可用于金融科技领域或其他相关领域。所述方法包括:响应于针对目标收单业务记录发起的数据查询请求,确定数据查询请求信息对应的数据标识;根据数据标识,确定储存有目标收单业务记录的目标数据库;获取目标收单业务记录对应的业务处理时间与当前***时间之间的第一时间差,根据第一时间差,确定针对目标数据库的数据表查询策略;按照数据表查询顺序,在数据表集合中查询出目标收单业务记录。采用本方法能够基于时间差,确定数据表查询策略,按照数据表查询策略中的数据表查询顺序,在对应的待查询数据表中便捷地查询出目标数据,进而提高数据查询效率。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种数据查询方法、装置、计算机设备、存储介质和计算机程序产品。
背景技术
银行卡收单作为签约银行向商户提供的资金结算类服务,在商户和签约银行之间发挥着重要作用,商户可以在相应的银行收单***中,通过对应操作完成收单业务的数据管理和交易处理。
当用户发起消费交易后,商户流水号可作为唯一检索号被保存在银行收单***中,但随着银行收单***交易量的不断增大,收单交易数据的数量逐渐增多,商户在查询交易数据时,交易数据的查询时间相应增加,不利于提高数据查询的效率。
发明内容
基于此,有必要针对上述技术问题,提供一种能够数据查询效率的数据查询方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种数据查询方法,所述方法包括:
响应于针对目标收单业务记录发起的数据查询请求,确定所述数据查询请求信息对应的数据标识;所述目标收单业务记录用于表征业务收单***中的业务处理数据;
根据所述数据标识,确定储存有所述目标收单业务记录的目标数据库;
获取所述目标收单业务记录对应的业务处理时间与当前***时间之间的第一时间差,根据所述第一时间差,确定针对所述目标数据库的数据表查询策略;所述数据表查询策略用于表征待查询的数据表集合和针对所述数据表集合的数据表查询顺序;
按照所述数据表查询顺序,在所述数据表集合中查询出所述目标收单业务记录。
在其中一个实施例中,所述根据所述第一时间差,确定针对所述目标数据库的数据表查询策略,包括:
在所述第一时间差等于预设的第一时间差阈值的情况下,将当前***时间对应的日志表加入所述待查询的数据表集合中,得到第一待查询数据表集合;所述第一待查询数据表集合包括第一日志表和第二日志表;所述第二日志表所存储的收单业务记录的数据储存时间长于所述第一日志表所存储的收单业务记录的数据储存时间;
确定所述第一待查询数据表集合对应的第一数据表查询顺序,根据所述第一待查询数据表集合和所述第一数据表查询顺序,确定所述数据表查询策略;所述数据表查询顺序表征所述第一日志表的查询优先级大于所述第二日志表的查询优先级。
在其中一个实施例中,所述根据所述第一时间差,确定针对所述目标数据库的数据表查询策略,还包括:
在所述第一时间差大于第一时间差阈值且小于或等于预设的第二时间差阈值的情况下,将当前***时间对应的历史表和日志表加入所述待查询的数据表集合,得到第二待查询数据表集合;所述第二待查询数据表集合包括历史表、第一日志表和第二日志表;
确定所述第二待查询数据表集合对应的第二数据表查询顺序,根据所述第二待查询数据表集合和所述第二数据表查询顺序,确定所述数据表查询策略;所述数据表查询顺序表征所述历史表的查询优先级大于所述第一日志表的查询优先级,且所述第一日志表的查询优先级大于所述第二日志表的查询优先级。
在其中一个实施例中,所述根据所述第一时间差,确定针对所述目标数据库的数据表查询策略,还包括:
在所述第一时间差大于预设的第二时间差阈值的情况下,将当前***时间对应的历史表、日志表和数据湖表加入所述待查询的数据表集合,得到第三待查询数据表集合;所述第三待查询数据表集合包括历史表、第一日志表、第二日志表和数据湖表;
确定所述第三待查询数据表集合对应的第三数据表查询顺序,根据所述第三待查询数据表集合和所述第三数据表查询顺序,确定所述数据表查询策略;所述数据表查询顺序表征所述历史表的查询优先级大于所述第一日志表的查询优先级,且所述第一日志表的查询优先级大于所述第二日志表的查询优先级,且所述第一日志表的查询优先级大于所述数据湖表的查询优先级。
在其中一个实施例中,所述方法还包括:
响应于针对待存储收单业务记录发起的数据存储请求,获取所述待存储收单业务记录对应的路由字段;所述待存储收单业务记录用于表征业务收单***中的业务处理数据;
根据所述路由字段,确定所述待存储收单业务记录对应的数据存储地址;
根据所述数据存储地址,确定所述待存储收单业务记录对应的存储数据表,将所述待存储收单业务记录存储于所述存储数据表。
在其中一个实施例中,所述方法还包括:
获取所述待存储收单业务记录对应的业务处理时间;
根据所述业务处理时间和预设的参数控制表,确定所述待存储收单业务记录对应的待存储日志表;
将所述待存储收单业务记录存储于所述待存储日志表中。
在其中一个实施例中,所述方法还包括:
获取所述待存储日志表中的待转移收单业务记录对应的业务处理时间与当前***时间之间的第二时间差;
根据所述第二时间差,确定所述待转移收单业务记录对应的转移数据表,将所述待转移收单业务记录转移至所述转移数据表。
在其中一个实施例中,所述方法还包括:
将所述第二时间差大于预设的第三时间差阈值的待转移收单业务记录作为第一待转移收单业务记录,根据预设的数据分片规则,确定所述第一待转移收单业务记录对应的待转移历史表;
将所述待存储日志表中预设的第一时间区间内的所述第一待转移收单业务记录转移至所述待转移历史表中。
在其中一个实施例中,所述方法还包括:
获取所述待转移历史表中的待转移收单业务记录对应的业务处理时间与当前***时间之间的第三时间差;
将所述第三时间差大于预设的第四时间差阈值的待转移收单业务记录作为待入湖收单业务记录,将所述待入湖收单业务记录转移至数据湖表中。
第二方面,本申请还提供了一种数据查询装置,所述装置包括:
数据标识确定模块,用于响应于针对目标收单业务记录发起的数据查询请求,确定所述数据查询请求信息对应的数据标识;所述目标收单业务记录用于表征业务收单***中的业务处理数据;
数据库确定模块,用于根据所述数据标识,确定储存有所述目标收单业务记录的目标数据库;
查询策略确定模块,用于获取所述目标收单业务记录对应的业务处理时间与当前***时间之间的第一时间差,根据所述第一时间差,确定针对所述目标数据库的数据表查询策略;所述数据表查询策略用于表征待查询的数据表集合和数据表查询顺序;
记录查询模块,用于按照所述数据表查询顺序,在所述数据表集合中查询出所述目标收单业务记录。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法的步骤。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法的步骤。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现上述的方法的步骤。
上述数据查询方法、装置、计算机设备、存储介质和计算机程序产品,通过响应于针对目标收单业务记录发起的数据查询请求,确定数据查询请求信息对应的数据标识,从而在查询业务收单***中的目标收单业务记录时,确定数据查询请求信息的数据标识,根据数据标识,确定储存有目标收单业务记录的目标数据库,从而确定目标收单业务记录所在的数据库,缩小数据检索范围,获取目标收单业务记录对应的业务处理时间与当前***时间之间的第一时间差,根据第一时间差,确定针对目标数据库的数据表查询策略,从而利用业务处理时间与当前***时间之间的第一时间差,确定目标收单业务记录可能存在的数据表所组成的数据表集合,以及确定针对数据表集合的数据表查询顺序,并按照数据表查询顺序,在数据表集合中查询出目标收单业务记录,实现通过响应于数据查询请求,确定数据查询请求信息对应的数据标识,根据数据标识确定目标收单业务记录所在的数据库,从而缩小数据查询范围,进而减少数据查询时间,通过目标收单业务记录对应的业务处理时间与当前***时间之间的第一时间差,确定针对目标数据库的数据表查询策略,并按照数据表查询策略中的数据表查询顺序,在数据表查询策略中的数据表集合中查询出目标收单业务记录,能够基于数据存储特点,在对应的数据表中按照相应的查询顺序便捷地查询出目标数据,进而提高数据查询效率。
附图说明
图1为一个实施例中一种数据查询方法的应用环境图;
图2为一个实施例中一种数据查询方法的流程示意图;
图3为一个实施例中一种收单接入平台的业务框架图;
图4为一个实施例中一种收单平台交易处理的流程图;
图5为一个实施例中一种存储商户收单流水交易数据的示意图;
图6为一个实施例中一种备份商户收单流水交易数据的示意图;
图7为一个实施例中一种查询使用商户收单流水交易数据的示意图;
图8为一个实施例中一种数据查询装置的结构框图;
图9为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的数据查询方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储***可以存储服务器104需要处理的数据。数据存储***可以集成在服务器104上,也可以放在云上或其他网络服务器上。服务器104响应于针对目标收单业务记录发起的数据查询请求,确定数据查询请求信息对应的数据标识;目标收单业务记录用于表征业务收单***中的业务处理数据;服务器104根据数据标识,确定储存有目标收单业务记录的目标数据库;服务器104获取目标收单业务记录对应的业务处理时间与当前***时间之间的第一时间差,服务器104根据第一时间差,确定针对目标数据库的数据表查询策略;数据表查询策略用于表征待查询的数据表集合和针对数据表集合的数据表查询顺序;服务器104按照数据表查询顺序,在数据表集合中查询出所述目标收单业务记录。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
可以理解的是,该方法也可以应用于服务器,还可以应用于包括终端和服务器的***,并通过终端和服务器的交互实现。
在一些实施例中,如图2所示,提供了一种数据查询方法,本实施例以该方法应用于服务器进行举例说明,可以理解的是,该方法也可以应用于终端,还可以应用于包括终端和服务器的***,并通过终端和服务器的交互实现。本实施例中,该方法包括以下步骤:
步骤S202,响应于针对目标收单业务记录发起的数据查询请求,确定数据查询请求信息对应的数据标识。
其中,目标收单业务记录可以是指用于表征业务收单***中的业务处理数据的记录,实际应用中,目标收单业务记录可以包括银行收单***中的商户收单流水。
作为一种示例,服务器接收到针对目标收单业务记录发起的数据查询请求后,服务器响应于针对目标收单业务记录发起的数据查询请求,根据数据查询请求信息确定数据查询请求信息对应的数据标识,例如:服务器响应于针对目标收单业务记录发起的数据查询请求,根据商户交易流水(唯一索引)在预设的查询关系对照表中查询出商户交易流水对应的银行***中的内部订单号。
步骤S204,根据数据标识,确定储存有目标收单业务记录的目标数据库。
其中,数据标识可以是指用于区分收单业务记录的标识,实际应用中,数据标识可以包括商户交易流水和内部订单号。
作为一种示例,服务器根据商户交易流水(唯一索引)查找对照关系,找出存储在银行***中的内部订单号,服务器根据内部订单号进行哈希算法,确定储存有目标收单业务记录的目标数据库,具体实现中,服务器可根据内部订单号进行哈希算法得出目标收单业务记录所属的数据库分片。
步骤S206,获取目标收单业务记录对应的业务处理时间与当前***时间之间的第一时间差,根据第一时间差,确定针对目标数据库的数据表查询策略。
其中,数据表查询策略用于表征待查询的数据表集合和针对数据表集合的数据表查询顺序。
其中,业务处理时间可以是指收单业务记录对应的交易时间。
作为一种示例,服务器获取目标收单业务记录对应的业务处理时间,服务器将业务处理时间和当前***时间进行比较,服务器根据业务处理时间与当前***时间,计算出业务处理时间和当前***时间之间的第一时间差,第一时间差可表示为D1,服务器根据第一时间差与预设的时间差阈值之间的关系,确定针对目标数据库的数据表查询策略,其中,数据表查询策略用于表征待查询的数据表集合和针对数据表集合的数据表查询顺序。
步骤S208,按照数据表查询顺序,在数据表集合中查询出目标收单业务记录。
作为一种示例,在服务器得到针对目标数据库的数据表查询策略后,服务器按照数据表查询策略中的数据表查询顺序,在待查询的数据表集合中进行分表查询并得到目标收单业务记录。
上述数据查询方法中,通过响应于针对目标收单业务记录发起的数据查询请求,确定数据查询请求信息对应的数据标识,从而在查询业务收单***中的目标收单业务记录时,确定数据查询请求信息的数据标识,根据数据标识,确定储存有目标收单业务记录的目标数据库,从而确定目标收单业务记录所在的数据库,缩小数据检索范围,获取目标收单业务记录对应的业务处理时间与当前***时间之间的第一时间差,根据第一时间差,确定针对目标数据库的数据表查询策略,从而利用业务处理时间与当前***时间之间的第一时间差,确定目标收单业务记录可能存在的数据表所组成的数据表集合,以及确定针对数据表集合的数据表查询顺序,并按照数据表查询顺序,在数据表集合中查询出目标收单业务记录,实现通过响应于数据查询请求,确定数据查询请求信息对应的数据标识,根据数据标识确定目标收单业务记录所在的数据库,从而缩小数据查询范围,进而减少数据查询时间,通过目标收单业务记录对应的业务处理时间与当前***时间之间的第一时间差,确定针对目标数据库的数据表查询策略,并按照数据表查询策略中的数据表查询顺序,在数据表查询策略中的数据表集合中查询出目标收单业务记录,能够基于数据存储特点,在对应的数据表中按照相应的查询顺序便捷地查询出目标数据,进而提高数据查询效率。
在一些实施例中,根据第一时间差,确定针对目标数据库的数据表查询策略,包括:在第一时间差等于预设的第一时间差阈值的情况下,将当前***时间对应的日志表加入待查询的数据表集合中,得到第一待查询数据表集合,确定第一待查询数据表集合对应的第一数据表查询顺序,根据第一待查询数据表集合和第一数据表查询顺序,确定数据表查询策略。
其中,第一待查询数据表集合可以包括第一日志表和第二日志表,实际应用中,第二日志表所存储的收单业务记录的数据储存时间长于第一日志表所存储的收单业务记录的数据储存时间。
其中,数据表查询顺序可以表征第一日志表的查询优先级大于第二日志表的查询优先级,实际应用中,第一日志表可以包括日志A表,第二日志表可以包括日志B表。
其中,第一时间差阈值可以包括0天。
作为一种示例,服务器将业务处理时间和当前***时间之间的第一时间差与预设的第一时间差阈值进行比较,当第一时间差等于预设的第一时间差阈值时,服务器将当前***时间对应的第一日志表和第二日志表加入待查询的数据表集合中,得到第一待查询数据表集合,服务器确定针对第一待查询数据表集合的第一数据表查询顺序,服务器根据第一待查询数据表集合和第一数据表查询顺序,确定数据表查询策略,例如:当服务器检测到第一时间差等于预设的第一时间差阈值(如0天)时,服务器将第一日志表和第二日志表加入待查询的数据表集合中,得到第一待查询数据表集合,服务器确定针对第一待查询数据表集合中的第一日志表和第二日志表的第一数据表查询顺序,第一数据表查询顺序具体可表征第一日志表的查询优先级大于第二日志表的查询优先级,即服务器先对第一日志表进行数据查询,若未在第一日志表中查询到目标收单业务记录,服务器再对第二日志表进行数据查询,直至查询到目标收单业务记录。
本实施例中,通过在第一时间差等于预设的第一时间差阈值的情况下,将当前***时间对应的日志表加入待查询的数据表集合中,得到第一待查询数据表集合,确定第一待查询数据表集合对应的第一数据表查询顺序,根据第一待查询数据表集合和第一数据表查询顺序,确定数据表查询策略,能够基于第一时间差和预设的时间差阈值之间的关系,在第一时间差等于预设的第一时间差阈值的情况下,确定对应的待查询数据表集合和相应的数据表查询策略,以对目标收单业务记录进行精确查找,提高数据查询效率。
在一些实施例中,根据第一时间差,确定针对目标数据库的数据表查询策略,还包括:在第一时间差大于预设的第一时间差阈值且小于或等于预设的第二时间差阈值的情况下,将当前***时间对应的历史表和日志表加入待查询的数据表集合,得到第二待查询数据表集合,确定第二待查询数据表集合对应的第二数据表查询顺序,根据第二待查询数据表集合和第二数据表查询顺序,确定数据表查询策略。
其中,第二待查询数据表集合可以包括历史表、第一日志表和第二日志表。
其中,数据表查询顺序可以表征历史表的查询优先级大于第一日志表的查询优先级,且第一日志表的查询优先级大于第二日志表的查询优先级。
其中,第二时间差阈值可以包括14天。
其中,历史表可以包括历史表1、历史表2、历史表3、历史表4、历史表5、历史表6和历史表7。
作为一种示例,服务器将业务处理时间和当前***时间之间的第一时间差与预设的第一时间差阈值和预设的第二时间差阈值进行比较,当第一时间差大于预设的第一时间差阈值且小于或等于预设的第二时间差阈值时,服务器将当前***时间对应的历史表、第一日志表和第二日志表加入待查询的数据表集合中,得到第二待查询数据表集合,服务器确定针对第二待查询数据表集合的第二数据表查询顺序,服务器根据第二待查询数据表集合和第二数据表查询顺序,确定数据表查询策略,例如:当服务器检测到第一时间差大于预设的第一时间差阈值(如0天)且小于或等于预设的第二时间差阈值(如14天)时,服务器将历史表、第一日志表和第二日志表加入待查询的数据表集合中,得到第二待查询数据表集合,服务器确定针对第二待查询数据表集合中的历史表、第一日志表和第二日志表的第二数据表查询顺序,第一数据表查询顺序具体可表征历史表的查询优先级大于第一日志表的查询优先级,且第一日志表的查询优先级大于第二日志表的查询优先级,即服务器先对历史表进行数据查询,若服务器未在历史表中查询到目标收单业务记录,服务器对第一日志表进行数据查询,若未在第一日志表中查询到目标收单业务记录,服务器对第二日志表进行数据查询,直至查询到目标收单业务记录。
本实施例中,通过在第一时间差大于预设的第一时间差阈值且小于或等于预设的第二时间差阈值的情况下,将当前***时间对应的历史表和日志表加入待查询的数据表集合,得到第二待查询数据表集合,确定第二待查询数据表集合对应的第二数据表查询顺序,根据第二待查询数据表集合和第二数据表查询顺序,确定数据表查询策略,能够基于第一时间差和预设的时间差阈值之间的关系,在第一时间差大于预设的第一时间差阈值且小于或等于预设的第二时间差阈值的情况下,确定对应的待查询数据表集合和相应的数据表查询策略,以对目标收单业务记录进行精确查找,提高数据查询效率。
在一些实施例中,根据第一时间差,确定针对目标数据库的数据表查询策略,还包括:在第一时间差大于预设的第二时间差阈值的情况下,将当前***时间对应的历史表、日志表和数据湖表加入待查询的数据表集合,得到第三待查询数据表集合;确定第三待查询数据表集合对应的第三数据表查询顺序,根据第三待查询数据表集合和第三数据表查询顺序,确定数据表查询策略。
其中,数据表查询顺序可以表征历史表的查询优先级大于第一日志表的查询优先级,且第一日志表的查询优先级大于第二日志表的查询优先级,且第一日志表的查询优先级大于数据湖表的查询优先级。
其中,第三待查询数据表集合可以包括历史表、第一日志表、第二日志表和数据湖表。
作为一种示例,服务器将业务处理时间和当前***时间之间的第一时间差与预设的第二时间差阈值进行比较,当第一时间差大于预设的第二时间差阈值时,服务器将当前***时间对应的历史表、第一日志表、第二日志表和数据湖表加入待查询的数据表集合中,得到第三待查询数据表集合,服务器确定针对第三待查询数据表集合的第三数据表查询顺序,服务器根据第三待查询数据表集合和第三数据表查询顺序,确定数据表查询策略,例如:当服务器检测到第一时间差大于预设的第二时间差阈值(如14天)时,服务器将历史表、第一日志表、第二日志表和数据湖表加入待查询的数据表集合中,得到第三待查询数据表集合,服务器确定针对第三待查询数据表集合中的历史表、第一日志表、第二日志表和数据湖表的第三数据表查询顺序,第三数据表查询顺序具体可表征历史表的查询优先级大于第一日志表的查询优先级,且第一日志表的查询优先级大于第二日志表的查询优先级,且第一日志表的查询优先级大于数据湖表的查询优先级,即服务器先对历史表进行数据查询,若服务器未在历史表中查询到目标收单业务记录,服务器对第一日志表进行数据查询,若未在第一日志表中查询到目标收单业务记录,服务器对第二日志表进行数据查询,若未在第二日志表中查询到目标收单业务记录,服务器对数据湖表进行数据查询,直至查询到目标收单业务记录,服务器在数据湖表中查询到目标收单业务记录后,服务器将目标收单业务记录回写至历史表中,可在下次对同一收单业务记录进行查询时减少查询时间。
本实施例中,通过在第一时间差大于预设的第二时间差阈值的情况下,将当前***时间对应的历史表、日志表和数据湖表加入待查询的数据表集合,得到第三待查询数据表集合;确定第三待查询数据表集合对应的第三数据表查询顺序,根据第三待查询数据表集合和第三数据表查询顺序,确定数据表查询策略,能够基于第一时间差和预设的时间差阈值之间的关系,在第一时间差大于预设的第二时间差阈值的情况下,确定对应的待查询数据表集合和相应的数据表查询策略,以对目标收单业务记录进行精确查找,提高数据查询效率。
在一些实施例中,上述方法还包括:响应于针对待存储收单业务记录发起的数据存储请求,获取待存储收单业务记录对应的路由字段,根据路由字段,确定待存储收单业务记录对应的数据存储地址,根据数据存储地址,确定待存储收单业务记录对应的存储数据表,将待存储收单业务记录存储于存储数据表。
其中,待存储收单业务记录可以表征业务收单***中的业务处理数据。
其中,数据存储地址可以包括将存储待存储收单业务记录的数据表在相关业务***中的***位置,实际应用中,数据存储地址可以包括数据库服务器地址。
其中,存储数据表可以包括日志表、历史表和数据湖表。
作为一种示例,服务器在获取到针对待存储收单业务记录发起的数据存储请求后,服务器响应于针对待存储收单业务记录发起的数据存储请求,服务器获取待存储收单业务记录对应的订单号,服务器根据订单号进行哈希算法计算出待存储收单业务记录的数据存储地址,服务器根据数据存储地址确定待存储收单业务记录对应的存储数据表,服务器将待存储收单业务记录存储于存储数据表。
在一个示例性实施例中,服务器在获取到针对待存储收单业务记录发起的数据存储请求后,服务器响应于针对待存储收单业务记录发起的数据存储请求,服务器获取待存储收单业务记录对应的分片路由字段的值,服务器根据分片路由字段的值进行一致性哈希算法,得到待存储收单业务记录所属的分片和数据存储地址,服务器根据数据存储地址确定待存储收单业务记录对应的存储数据库和存储数据表,服务器将待存储收单业务记录存储于存储数据表。
本实施例中,通过响应于针对待存储收单业务记录发起的数据存储请求,获取待存储收单业务记录对应的路由字段,根据路由字段,确定待存储收单业务记录对应的数据存储地址,根据数据存储地址,确定待存储收单业务记录对应的存储数据表,将待存储收单业务记录存储于存储数据表,能够基于待存储收单业务记录的路由字段,确定待存储收单业务记录的数据存储地址和存储数据表,实现对收单业务记录的分类存储,以便于对收单业务记录进行分类查询,提高数据查询效率。
在一些实施例中,上述方法还包括:获取待存储收单业务记录对应的业务处理时间;根据业务处理时间和预设的参数控制表,确定待存储收单业务记录对应的待存储日志表;将待存储收单业务记录存储于待存储日志表中。
其中,参数控制表可以包括***参数控制表,实际应用中,参数控制表可用于存储业务处理时间与日志表的对照关系,例如,当日业务处理时间对应日志A表,隔日业务处理时间对应日志B表。
作为一种示例,在银行收单***中的同一个数据库分片的同一类表中,服务器获取待存储收单业务记录对应的业务处理时间,由于参数控制表可存储待存储收单业务记录对应的业务处理时间与日志表的对照关系,服务器可根据业务处理时间和预设的参数控制表,确定待存储收单业务记录对应的待存储日志表,然后服务器将待存储收单业务记录存储于待存储日志表中。
本实施例中,通过获取待存储收单业务记录对应的业务处理时间;根据业务处理时间和预设的参数控制表,确定待存储收单业务记录对应的待存储日志表;将待存储收单业务记录存储于待存储日志表中,能够基于待存储收单业务记录对应的业务处理时间和参数控制表,确定待存储收单业务记录对应的待存储日志表,并将待存储收单业务记录存储于待存储日志表中,实现对收单业务记录的分类存储,以便于对收单业务记录进行分类查询,提高数据查询效率。
在一些实施例中,上述方法还包括:获取待存储日志表中的待转移收单业务记录对应的业务处理时间与当前***时间之间的第二时间差;根据第二时间差,确定待转移收单业务记录对应的转移数据表,将待转移收单业务记录转移至所述转移数据表。
其中,转移数据表可以是指转移后的收单业务记录所在的数据表。
作为一种示例,为了减少日志表和历史表的存储压力,需要对数据进行分表处理,服务器在每日日终进行对收单业务记录进行批量处理,服务器获取待存储日志表中的待转移收单业务记录对应的业务处理时间与当前***时间之间的第二时间差,服务器根据第二时间差,确定待转移收单业务记录对应的转移数据表,服务器将待转移收单业务记录转移至所述转移数据表。
本实施例中,通过获取待存储日志表中的待转移收单业务记录对应的业务处理时间与当前***时间之间的第二时间差;根据第二时间差,确定待转移收单业务记录对应的转移数据表,将待转移收单业务记录转移至所述转移数据表,能够基于待存储日志表中的待转移收单业务记录对应的业务处理时间与当前***时间之间的第二时间差,确定待转移收单业务记录对应的转移数据表,并将待转移收单业务记录转移至所述转移数据表,实现对收单业务记录的分类存储,以便于对收单业务记录进行分类查询,提高数据查询效率。
在一些实施例中,上述方法还包括:将第二时间差大于预设的第三时间差阈值的待转移收单业务记录作为第一待转移收单业务记录,根据预设的数据分片规则,确定第一待转移收单业务记录对应的待转移历史表;将待存储日志表中预设的第一时间区间内的第一待转移收单业务记录转移至待转移历史表中。
其中,第三时间差阈值可以包括2天。
其中,第一时间区间可以包括一周。
作为一种示例,为了减少日志表存储压力,需要对日志表进行数据移行,日志表数据移行是将日志A表和日志B表进行整表移行,服务器将第二时间差大于预设的第三时间差阈值(如2天)的待转移收单业务记录作为第一待转移收单业务记录,服务器根据预设的数据分片规则,确定第一待转移收单业务记录对应的待转移历史表,例如,服务器可以根据银行***的内部订单号尾号,将第一待转移收单业务记录转移到对应的0~9历史表中;服务器将待存储日志表中预设的第一时间区间(如一周)内的第一待转移收单业务记录转移至待转移历史表中,即服务器将第二时间差大于预设的第三时间差阈值(如2天)的待转移收单业务记录作为第一待转移收单业务记录,服务器将第一待转移收单业务记录进行数据移行,服务器以周为单位,将日志A表和日志B表中的数据导出并生成文件,服务器将生成的文件导入历史表进行存储,然后服务器对日志A表和日志B表进行数据清理,其中,本身存储在日志A表和日志B表中的数据要保证唯一。
本实施例中,通过将第二时间差大于预设的第三时间差阈值的待转移收单业务记录作为第一待转移收单业务记录,根据预设的数据分片规则,确定第一待转移收单业务记录对应的待转移历史表;将待存储日志表中预设的第一时间区间内的第一待转移收单业务记录转移至待转移历史表中,能够基于第二时间差和预设的时间差阈值,对收单业务记录进行数据移行,减少日志表的数据存储压力。
在一些实施例中,上述方法还包括:获取待转移历史表中的待转移收单业务记录对应的业务处理时间与当前***时间之间的第三时间差;将第三时间差大于预设的第四时间差阈值的待转移收单业务记录作为待入湖收单业务记录,将待入湖收单业务记录转移至数据湖表中。
其中,第四时间差阈值可以包括14天。
作为一种示例,为了减少历史表存储压力,需要对历史表进行数据移行,历史表数据移行是将历史表进行整表移行,服务器将第三时间差大于预设的第四时间差阈值(如14天)的待转移收单业务记录作为待入湖收单业务记录,服务器根据预设的数据分片规则,确定待入湖收单业务记录对应的数据湖表,服务器将待存储日志表中的待入湖收单业务记录转移至数据湖表中,即服务器将第三时间差大于预设的第四时间差阈值(如14天)的待转移收单业务记录作为待入湖收单业务记录,服务器将待入湖收单业务记录进行数据移行,服务器将历史表中的数据导出并生成文件,服务器将生成的文件导入数据湖表进行存储,然后服务器对历史表进行数据清理。
本实施例中,通过获取待转移历史表中的待转移收单业务记录对应的业务处理时间与当前***时间之间的第三时间差;将第三时间差大于预设的第四时间差阈值的待转移收单业务记录作为待入湖收单业务记录,将待入湖收单业务记录转移至数据湖表中,能够基于第三时间差和预设的时间差阈值,对收单业务记录进行数据移行,减少历史表的数据存储压力。
为了便于本领域技术人员理解,图3示例性地提出了一种收单接入平台的业务框架图,如图3所示,收单接入平台向非银联用户开放,为成员机构开展银行卡收单业务提供数据处理服务,成员机构通过该平台完成收单业务的管理和交易处理。接入方301是指,用户可以通过如磁条卡、指纹支付等其他介质在POS终端、MIS***、电话支付终端或第三方***上进行业务处理(包括联机业务、批处理业务、商户结算、差错处理等);收单平台302由成员机构访问的接口以及收单核心处理***两部分组成。
在一个示例性实施例中,如图4所示,提出了一种收单平台交易处理的流程图,401为成员机构访问的接口,主要包括:(1)商户管理与服务***:实现商户与终端的管理功能;(2)风险管理***:实现商户风险等级评估以及风险预警功能;(3)清算***:实现商户结算处理、报表生成、文件传输等功能;(4)差错处理***:实现机构间的差错处理;402为收单核心处理***,主要由四部分组成:(1)前端接入子***,主要负责交易合法性校验,并进行报文解析,再将通讯转入到交易处理子***;(2)交易处理子***,主要负责根据数据分片的值计算出交易路由到哪一个业务处理层,进行交易逻辑处理;(3)数据存储模块,主要负责存储交易逻辑处理后收据,例如商户流水、订单详情等重要数据;(4)后台管理子***,主要负责商户的结算处理、机构间的差错处理、以及数据统计分析报表展现等。
为了便于本领域技术人员理解,图5示例性地提出了一种存储商户收单流水交易数据的示意图,如图5所示,由于银行收单***交易量大,接入商户较多,为保障***平稳性分散压力,先将数据按照某种规则“分类”,存储在多个数据库服务器中。若按照客户群体分类,非银行客户交易(如聚合业务、数字人民币交易等)交易占比高出银行客户交易(如银行卡交易等),基于该交易特点,收单业务不适合采用客户编号进行分片。若采用商户编号作为数据分片规则,由于实际商户交易量不均,且动态变化,可能导致数据库服务器存储的交易流量不均衡,且存在无法较好支持促销、秒杀或大商户高并发等问题。基于上述缺点,银行收单***宜采用订单号作为分片规则。
交易路由层作为收单业务分布式服务接入层的服务提供者,由1-N组虚拟服务器组成,在银行收单***中,根据订单号进行哈希算法计算出交易数据路由到哪个数据库服务器进行存储。业务处理层包括联机服务器和批量服务器,联机服务器负责处理联机业务逻辑,由1-N组容器、虚拟服务器、数据库服务器组成;批量服务器进行日间或日终的批量业务逻辑处理,例如数据移行、数据处理加工、业务报表生成等。在银行收单***中,大量数据存储可通过横向分库、纵向分表进行分散处理。
如501所指,交易路由层根据分片路由字段的值进行一致性哈希算法,得出交易数据所属分片,再将交易路由到对应的数据库服务器,存储商户收单交易流水;
如502所指,在同一个数据库分片中的同一类表中,根据当前交易***日期,选择日志面AB表进行存储。在银行收单***中,***参数控制表用于存储***日期与日志面对照关系,例如当日***日期对应日志面A,隔日***日期对应日志面B;
如503所指,批量服务器在每日日终进行批量处理业务逻辑,针对存储交易数据超过2天的,进行数据移行,以周为单位,将日志面AB表数据导出生成文件并导入到历史表中存储,最后对日志面AB表数据进行清理;
如504所指,批量服务器在每日日终进行批量处理业务逻辑,针对交易数据超过14天的,进行数据移行,将历史表数据导出生成文件并导入到数据湖中存储,最后对历史表数据进行清理。
在一个示例性实施例中,如图6所示,提出了一种备份商户收单流水交易数据的示意图,每一个分片数据库采用“一主三备”的形式,三个半同步数据库服务器挂在一个主数据库服务器上,并且四台数据库虚拟服务器平均分散部署在两个物理服务器上。
如601所指为数据库半同步复制机制,Master主库将事件写入binlog后发送给Slave备库触发一个等待,直到三个备库至少有一个Slave节点接收到主库传递过来的binlog内容并写入自己的relaylog,才会通知Master主库上面的等待线程操作完毕,增强了数据的一致性。如果因为网络延迟等原因造成Slave迟迟没有返回复制成功的信息,超过Master设置的超时时长,这时半同步复制就会降级为异步复制方式,保证一部分效率。
如602所指,为防止数据库存储超过容量,批量服务器在每日日终进行批量处理业务逻辑,针对交易数据超过14天的,进行数据移行,将数据转移到数据湖中存储,分散压力。
本实施例中,通过采用一个主库三个半同步数据库备库的数据存储备份方式,可通过牺牲小部分效率,来增强***数据一致性,为数据安全性提供有力保障,提高数据安全性。
为了便于本领域技术人员理解,图7示例性地提出了一种查询使用商户收单流水交易数据的示意图,如图7所示,在银行收单***中,交易先从交易路由层接入,根据商户交易流水(唯一索引)查找对照关系,找出存储在银行***中的内部订单号,然后根据订单号进行哈希算法得出所属数据库分片,进行横向数据库分库寻库,再根据交易日期与当前***日期时间差的关系,进行纵向数据表分表查找,主要步骤包括:(1)计算当前交易日期与当前***日期时间差D;(2)若D=0天,则根据***参数控制表判断当前交易日期所属日志面,并查询对应的日志面A表或日志面B表;(3)若D<=14天,根据数据存储规则,优先查询历史表,历史表没有再查日志面表;(4)若D>14天,根据数据存储规则,优先查历史表,历史表没有查日志面表,日志面表也没有再查数据湖表;并且对于高频访问的交易,如果从数据湖中获取数据,在获取到详情后回写历史表,利于下次获取相同数据减少查询时间。
本实施例中,通过在高并发交易场景中对高频访问的超期数据(交易时间大于14天)采用回写机制,将收单业务记录回写到数据库服务器,能够减少***与数据湖交互次数,缩短查询时间,提高数据查询效率,同时,对于大量数据存储,通过横向数据库分库、纵向数据库分表的方式进行存储,可分散单个分片数据库的存储压力,提升***稳定性。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的数据查询方法的数据查询装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个数据查询装置实施例中的具体限定可以参见上文中对于数据查询方法的限定,在此不再赘述。
在一个实施例中,如图8所示,提供了一种数据查询装置,包括:数据标识确定模块802、数据库确定模块804、查询策略确定模块806和记录查询模块808,其中:
数据标识确定模块802,用于响应于针对目标收单业务记录发起的数据查询请求,确定所述数据查询请求信息对应的数据标识;所述目标收单业务记录用于表征业务收单***中的业务处理数据;
数据库确定模块804,用于根据所述数据标识,确定储存有所述目标收单业务记录的目标数据库;
查询策略确定模块806,用于获取所述目标收单业务记录对应的业务处理时间与当前***时间之间的第一时间差,根据所述第一时间差,确定针对所述目标数据库的数据表查询策略;所述数据表查询策略用于表征待查询的数据表集合和数据表查询顺序;
记录查询模块808,用于按照所述数据表查询顺序,在所述数据表集合中查询出所述目标收单业务记录。
在一个示例性实施例中,上述查询策略确定模块806具体还用于在所述第一时间差等于预设的第一时间差阈值的情况下,将当前***时间对应的日志表加入所述待查询的数据表集合中,得到第一待查询数据表集合;所述第一待查询数据表集合包括第一日志表和第二日志表;所述第二日志表所存储的收单业务记录的数据储存时间长于所述第一日志表所存储的收单业务记录的数据储存时间;确定所述第一待查询数据表集合对应的第一数据表查询顺序,根据所述第一待查询数据表集合和所述第一数据表查询顺序,确定所述数据表查询策略;所述数据表查询顺序表征所述第一日志表的查询优先级大于所述第二日志表的查询优先级。
在一个示例性实施例中,上述查询策略确定模块806具体还用于在所述第一时间差大于预设的第一时间差阈值且小于或等于预设的第二时间差阈值的情况下,将当前***时间对应的历史表和日志表加入所述待查询的数据表集合,得到第二待查询数据表集合;所述第二待查询数据表集合包括历史表、第一日志表和第二日志表;确定所述第二待查询数据表集合对应的第二数据表查询顺序,根据所述第二待查询数据表集合和所述第二数据表查询顺序,确定所述数据表查询策略;所述数据表查询顺序表征所述历史表的查询优先级大于所述第一日志表的查询优先级,且所述第一日志表的查询优先级大于所述第二日志表的查询优先级。
在一个示例性实施例中,上述查询策略确定模块806具体还用于在所述第一时间差大于预设的第二时间差阈值的情况下,将当前***时间对应的历史表、日志表和数据湖表加入所述待查询的数据表集合,得到第三待查询数据表集合;所述第三待查询数据表集合包括历史表、第一日志表、第二日志表和数据湖表;确定所述第三待查询数据表集合对应的第三数据表查询顺序,根据所述第三待查询数据表集合和所述第三数据表查询顺序,确定所述数据表查询策略;所述数据表查询顺序表征所述历史表的查询优先级大于所述第一日志表的查询优先级,且所述第一日志表的查询优先级大于所述第二日志表的查询优先级,且所述第一日志表的查询优先级大于所述数据湖表的查询优先级。
在一个示例性实施例中,上述装置还包括数据存储模块,该数据存储模块具体用于响应于针对待存储收单业务记录发起的数据存储请求,获取所述待存储收单业务记录对应的路由字段;所述待存储收单业务记录用于表征业务收单***中的业务处理数据;根据所述路由字段,确定所述待存储收单业务记录对应的数据存储地址;根据所述数据存储地址,确定所述待存储收单业务记录对应的存储数据表,将所述待存储收单业务记录存储于所述存储数据表。
在一个示例性实施例中,上述装置还包括日志表确定模块,该日志表确定模块具体用于获取所述待存储收单业务记录对应的业务处理时间;根据所述业务处理时间和预设的参数控制表,确定所述待存储收单业务记录对应的待存储日志表;将所述待存储收单业务记录存储于所述待存储日志表中。
在一个示例性实施例中,上述装置还包括第一转移模块,该第一转移模块具体用于获取所述待存储日志表中的待转移收单业务记录对应的业务处理时间与当前***时间之间的第二时间差;根据所述第二时间差,确定所述待转移收单业务记录对应的转移数据表,将所述待转移收单业务记录转移至所述转移数据表。
在一个示例性实施例中,上述装置还包括第二转移模块,该第二转移模块具体用于将所述第二时间差大于预设的第三时间差阈值的待转移收单业务记录作为第一待转移收单业务记录,根据预设的数据分片规则,确定所述第一待转移收单业务记录对应的待转移历史表;将所述待存储日志表中预设的第一时间区间内的所述第一待转移收单业务记录转移至所述待转移历史表中。
在一个示例性实施例中,上述装置还包括第三转移模块,该第三转移模块具体用于获取所述待转移历史表中的待转移收单业务记录对应的业务处理时间与当前***时间之间的第三时间差;将所述第三时间差大于预设的第四时间差阈值的待转移收单业务记录作为待入湖收单业务记录,将所述待入湖收单业务记录转移至数据湖表中。
上述数据查询装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图9所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过***总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到***总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作***和计算机程序。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种数据查询方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置。显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (13)
1.一种数据查询方法,其特征在于,所述方法包括:
响应于针对目标收单业务记录发起的数据查询请求,确定所述数据查询请求信息对应的数据标识;所述目标收单业务记录用于表征业务收单***中的业务处理数据;
根据所述数据标识,确定储存有所述目标收单业务记录的目标数据库;
获取所述目标收单业务记录对应的业务处理时间与当前***时间之间的第一时间差,根据所述第一时间差,确定针对所述目标数据库的数据表查询策略;所述数据表查询策略用于表征待查询的数据表集合和针对所述数据表集合的数据表查询顺序;
按照所述数据表查询顺序,在所述数据表集合中查询出所述目标收单业务记录。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第一时间差,确定针对所述目标数据库的数据表查询策略,包括:
在所述第一时间差等于预设的第一时间差阈值的情况下,将当前***时间对应的日志表加入所述待查询的数据表集合中,得到第一待查询数据表集合;所述第一待查询数据表集合包括第一日志表和第二日志表;所述第二日志表所存储的收单业务记录的数据储存时间长于所述第一日志表所存储的收单业务记录的数据储存时间;
确定所述第一待查询数据表集合对应的第一数据表查询顺序,根据所述第一待查询数据表集合和所述第一数据表查询顺序,确定所述数据表查询策略;所述数据表查询顺序表征所述第一日志表的查询优先级大于所述第二日志表的查询优先级。
3.根据权利要求1所述的方法,其特征在于,所述根据所述第一时间差,确定针对所述目标数据库的数据表查询策略,还包括:
在所述第一时间差大于预设的第一时间差阈值且小于或等于预设的第二时间差阈值的情况下,将当前***时间对应的历史表和日志表加入所述待查询的数据表集合,得到第二待查询数据表集合;所述第二待查询数据表集合包括历史表、第一日志表和第二日志表;
确定所述第二待查询数据表集合对应的第二数据表查询顺序,根据所述第二待查询数据表集合和所述第二数据表查询顺序,确定所述数据表查询策略;所述数据表查询顺序表征所述历史表的查询优先级大于所述第一日志表的查询优先级,且所述第一日志表的查询优先级大于所述第二日志表的查询优先级。
4.根据权利要求1所述的方法,其特征在于,所述根据所述第一时间差,确定针对所述目标数据库的数据表查询策略,还包括:
在所述第一时间差大于预设的第二时间差阈值的情况下,将当前***时间对应的历史表、日志表和数据湖表加入所述待查询的数据表集合,得到第三待查询数据表集合;所述第三待查询数据表集合包括历史表、第一日志表、第二日志表和数据湖表;
确定所述第三待查询数据表集合对应的第三数据表查询顺序,根据所述第三待查询数据表集合和所述第三数据表查询顺序,确定所述数据表查询策略;所述数据表查询顺序表征所述历史表的查询优先级大于所述第一日志表的查询优先级,且所述第一日志表的查询优先级大于所述第二日志表的查询优先级,且所述第一日志表的查询优先级大于所述数据湖表的查询优先级。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于针对待存储收单业务记录发起的数据存储请求,获取所述待存储收单业务记录对应的路由字段;所述待存储收单业务记录用于表征业务收单***中的业务处理数据;
根据所述路由字段,确定所述待存储收单业务记录对应的数据存储地址;
根据所述数据存储地址,确定所述待存储收单业务记录对应的存储数据表,将所述待存储收单业务记录存储于所述存储数据表。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
获取所述待存储收单业务记录对应的业务处理时间;
根据所述业务处理时间和预设的参数控制表,确定所述待存储收单业务记录对应的待存储日志表;
将所述待存储收单业务记录存储于所述待存储日志表中。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
获取所述待存储日志表中的待转移收单业务记录对应的业务处理时间与当前***时间之间的第二时间差;
根据所述第二时间差,确定所述待转移收单业务记录对应的转移数据表,将所述待转移收单业务记录转移至所述转移数据表。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
将所述第二时间差大于预设的第三时间差阈值的待转移收单业务记录作为第一待转移收单业务记录,根据预设的数据分片规则,确定所述第一待转移收单业务记录对应的待转移历史表;
将所述待存储日志表中预设的第一时间区间内的所述第一待转移收单业务记录转移至所述待转移历史表中。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
获取所述待转移历史表中的待转移收单业务记录对应的业务处理时间与当前***时间之间的第三时间差;
将所述第三时间差大于预设的第四时间差阈值的待转移收单业务记录作为待入湖收单业务记录,将所述待入湖收单业务记录转移至数据湖表中。
10.一种数据查询装置,其特征在于,所述装置包括:
数据标识确定模块,用于响应于针对目标收单业务记录发起的数据查询请求,确定所述数据查询请求信息对应的数据标识;所述目标收单业务记录用于表征业务收单***中的业务处理数据;
数据库确定模块,用于根据所述数据标识,确定储存有所述目标收单业务记录的目标数据库;
查询策略确定模块,用于获取所述目标收单业务记录对应的业务处理时间与当前***时间之间的第一时间差,根据所述第一时间差,确定针对所述目标数据库的数据表查询策略;所述数据表查询策略用于表征待查询的数据表集合和数据表查询顺序;
记录查询模块,用于按照所述数据表查询顺序,在所述数据表集合中查询出所述目标收单业务记录。
11.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至9中任一项所述的方法的步骤。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至9中任一项所述的方法的步骤。
13.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至9中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310285471.0A CN116401270A (zh) | 2023-03-22 | 2023-03-22 | 数据查询方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310285471.0A CN116401270A (zh) | 2023-03-22 | 2023-03-22 | 数据查询方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116401270A true CN116401270A (zh) | 2023-07-07 |
Family
ID=87017018
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310285471.0A Pending CN116401270A (zh) | 2023-03-22 | 2023-03-22 | 数据查询方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116401270A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116610680A (zh) * | 2023-07-20 | 2023-08-18 | 上海富友支付服务股份有限公司 | 高频库和使用高频库的数据分级存储和查询方法和*** |
-
2023
- 2023-03-22 CN CN202310285471.0A patent/CN116401270A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116610680A (zh) * | 2023-07-20 | 2023-08-18 | 上海富友支付服务股份有限公司 | 高频库和使用高频库的数据分级存储和查询方法和*** |
CN116610680B (zh) * | 2023-07-20 | 2023-10-13 | 上海富友支付服务股份有限公司 | 高频库和使用高频库的数据分级存储和查询方法和*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9053160B2 (en) | Distributed, real-time online analytical processing (OLAP) | |
US10725981B1 (en) | Analyzing big data | |
CN109034988B (zh) | 一种会计分录生成方法和装置 | |
KR20200067117A (ko) | 블록체인 네트워크 내에서 스마트 에셋의 원자적 전송을 위한 플랫폼 | |
US9235814B2 (en) | Machine learning memory management and distributed rule evaluation | |
KR20200067119A (ko) | 블록체인 네트워크 내에서 스마트 에셋의 원자적 전송을 위한 플랫폼 | |
CN111046237A (zh) | 用户行为数据处理方法、装置、电子设备及可读介质 | |
WO2022048356A1 (zh) | 一种云平台的数据处理方法、***、电子设备及存储介质 | |
US20210004376A1 (en) | Automatic computation of features from a data stream | |
CN116401270A (zh) | 数据查询方法、装置、计算机设备和存储介质 | |
CN116452206A (zh) | 资源处理策略的确定方法、装置、计算机设备和存储介质 | |
CN116483822B (zh) | 业务数据预警方法、装置、计算机设备、存储介质 | |
CN117035980A (zh) | 资源借调评估方法、装置、计算机设备和存储介质 | |
US11176174B2 (en) | Systems and methods for database replication | |
CN113297270A (zh) | 数据查询方法、装置、电子设备及存储介质 | |
US20240064032A1 (en) | Systems and methods for managing metrics in blockchain networks | |
CN116881245A (zh) | 业务数据拼接方法、装置、计算机设备和存储介质 | |
CN117312660A (zh) | 项目推送方法、装置、计算机设备和存储介质 | |
CN116308352A (zh) | 凭证生成方法、装置、计算机设备和存储介质 | |
CN118364030A (zh) | 基于分布式数据库的数据处理方法、装置和设备 | |
CN117390000A (zh) | 资源交换数据处理方法、***、计算机设备和存储介质 | |
CN117372002A (zh) | 账单数据处理方法、装置、计算机设备和存储介质 | |
CN116881505A (zh) | 基于图数据库的对象实时属性分析方法和装置 | |
CN118071512A (zh) | 穿透式风险分析方法、装置、计算机设备和存储介质 | |
CN117131072A (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 |