CN110554895A - 一种数据调用的方法和装置 - Google Patents

一种数据调用的方法和装置 Download PDF

Info

Publication number
CN110554895A
CN110554895A CN201810552460.3A CN201810552460A CN110554895A CN 110554895 A CN110554895 A CN 110554895A CN 201810552460 A CN201810552460 A CN 201810552460A CN 110554895 A CN110554895 A CN 110554895A
Authority
CN
China
Prior art keywords
data
training data
training
historical
real
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
Application number
CN201810552460.3A
Other languages
English (en)
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.)
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Original Assignee
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology 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 Beijing Jingdong Century Trading Co Ltd, Beijing Jingdong Shangke Information Technology Co Ltd filed Critical Beijing Jingdong Century Trading Co Ltd
Priority to CN201810552460.3A priority Critical patent/CN110554895A/zh
Publication of CN110554895A publication Critical patent/CN110554895A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种数据调用的方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:监听用户对应用界面的点击操作,基于点击操作生成相应的数据调用请求;传输数据调用请求至第三方接口,当接收到第三方接口反馈的调用失败信息时,基于数据调用请求,在本地训练数据记录中进行查询;当查询存在与数据调用请求相应的训练数据时,提取所查询到的训练数据并输出。该实施方式作为第三方接口异常的应急策略,针对于第三方接口异常、甚至不可用的情况,其数据是可以在本地获取的,便于客户端继续后续业务流程,降低了对第三方接口的依赖性。

Description

一种数据调用的方法和装置
技术领域
本发明涉及计算机技术领域,尤其涉及一种数据调用的方法和装置。
背景技术
系统在解决业务问题时,常需要依赖第三方接口获取相关业务信息,例如,电子面单依赖第三方承运商获取相关信息,订单售后操作依赖订单中间文件信息。
但在实现本发明的过程中,发明人发现现有技术至少存在如下问题:当出现网络异常或者第三方接口不可用的情况时,会造成系统调用接口的可用率降低,影响作业生产,且对系统操作人员造成极大的时间浪费。
发明内容
有鉴于此,本发明实施例提供一种数据调用的方法和装置,至少能够解决现有技术中对于第三方接口的依赖程度高,当调用第三方接口失败时,无法获取数据,导致无法进行后续进程的情况。
为实现上述目的,根据本发明实施例的一个方面,提供了一种数据调用的方法,包括:
监听用户对应用界面的点击操作,基于点击操作生成相应的数据调用请求;
传输数据调用请求至第三方接口,当接收到第三方接口反馈的调用失败信息时,基于数据调用请求,在本地训练数据记录中进行查询;
当查询存在与数据调用请求相应的训练数据时,提取所查询到的训练数据并输出。
可选的,训练数据记录包括历史训练数据;
在监听用户对应用界面的点击操作,基于点击操作生成相应的数据调用请求之前,还包括:
获取历史数据,确定每个历史数据的地址信息;基于每个地址信息,生成相应的第一数据调用请求,传输所生成的第一数据调用请求至第三方接口;接收第三方接口所反馈的第一数据,提取与所接收的第一数据相匹配的历史数据,确定所提取的历史数据为历史训练数据,以基于所确定的历史训练数据更新所述训练数据记录。
可选的,获取历史数据,确定每个历史数据的地址信息,包括:获取历史数据,确定每个历史数据的地址信息,根据预定的地址拆分方式,拆分每个地址信息为五级地址信息。
可选的,训练数据记录包括前置训练数据;
在监听用户对应用界面的点击操作,基于点击操作生成相应的数据调用请求之前,还包括:
获取前置数据,确定每个前置数据的参数信息;其中,前置数据为已生成、但未达到调用所述第三方接口周期的数据;基于预定的校验方式,对每个前置数据中的参数信息进行校验,提取符合校验规则的前置数据;确定所提取的前置数据为前置训练数据,添加前置训练数据至训练数据记录中,以更新训练数据记录。
可选的,前置数据为订单数据,参数信息至少包括订单类型以及订单承运商信息;
基于预定的校验方式,对每个前置数据中的参数信息进行校验,提取符合校验规则的前置数据,包括:获取预定的订单类型表,当在订单类型表中查询到订单类型时,检测订单承运商信息是否过期,提取订单承运商信息未过期的订单数据。
可选的,训练数据记录包括实时训练数据;
在监听用户对应用界面的点击操作,基于点击操作生成相应的数据调用请求之前,还包括:
获取实时数据,遍历训练数据记录;当不存在与实时数据相匹配的训练数据时,确定实时数据为实时训练数据;添加实时训练数据至训练数据记录中,以更新训练数据记录。
为实现上述目的,根据本发明实施例的另一方面,提供了一种数据调用的装置,包括:
请求生成模块,用于:监听用户对应用界面的点击操作,基于点击操作生成相应的数据调用请求;
请求传输模块,用于:传输数据调用请求至第三方接口,当接收到第三方接口反馈的调用失败信息时,基于数据调用请求,在本地训练数据记录中进行查询;
数据获取模块,用于:当查询存在与数据调用请求相应的训练数据时,提取所查询到的训练数据并输出。
可选的,训练数据记录包括历史训练数据;
装置还包括历史数据训练模块,用于:
获取历史数据,确定每个历史数据的地址信息;基于每个地址信息,生成相应的第一数据调用请求,传输所生成的第一数据调用请求至第三方接口;接收第三方接口所反馈的第一数据,提取与所接收的第一数据相匹配的历史数据,确定所提取的历史数据为历史训练数据,以基于所确定的历史训练数据更新训练数据记录。
可选的,历史数据训练模块,用于:获取历史数据,确定每个历史数据的地址信息,根据预定的地址拆分方式,拆分每个地址信息为五级地址信息。
可选的,训练数据记录包括前置训练数据;
装置还包括前置数据训练模块,用于:获取前置数据,确定每个前置数据的参数信息;其中,前置数据为已生成、但未达到调用第三方接口周期的数据;基于预定的校验方式,对每个前置数据中的参数信息进行校验,提取符合校验规则的前置数据;确定所提取的前置数据为前置训练数据,添加前置训练数据至训练数据记录中,以更新训练数据记录。
可选的,前置数据为订单数据,参数信息至少包括订单类型以及订单承运商信息;
前置数据训练模块,用于:获取预定的订单类型表,当在订单类型表中查询到订单类型时,检测订单承运商信息是否过期,提取订单承运商信息未过期的订单数据。
可选的,训练数据记录包括实时训练数据;
装置还包括实时数据训练模块,用于:获取实时数据,遍历训练数据记录;当不存在与实时数据相匹配的训练数据时,确定实时数据为实时训练数据;添加实时训练数据至训练数据记录中,以更新训练数据记录。
为实现上述目的,根据本发明实施例的再一方面,提供了一种数据调用的电子设备。
本发明实施例的电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述任一所述的数据调用的方法。
为实现上述目的,根据本发明实施例的再一方面,提供了一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现上述任一所述的数据调用的方法。
根据本发明所述提供的方案,上述发明中的一个实施例具有如下优点或有益效果:通过针对性训练实时数据、历史数据以及前置数据,可以实现多维度数据的训练操作。当调用第三方接口失败时,可以通过本地已训练的数据进行匹配查询,从而降低了因为第三方接口异常所导致的自身业务处理问题。另外,通过对流水日志中的匹配量、匹配率进行分析,可以更好的对所训练的数据进行监控。
上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
图1是根据本发明实施例的一种数据调用的方法的主要流程示意图;
图2是根据本发明实施例的一种可选的数据调用的方法的流程示意图;
图3是根据本发明实施例的另一种可选的数据调用的方法的流程示意图;
图4是根据本发明实施例的又一种可选的数据调用的方法的流程示意图;
图5是根据本发明实施例的一具体地数据调用的方法的流程示意图;
图6是根据本发明实施例的一种数据调用的装置的主要模块示意图;
图7是本发明实施例可以应用于其中的示例性系统架构图;
图8是适于用来实现本发明实施例的移动设备或服务器的计算机系统的结构示意图。
具体实施方式
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
需要说明的是,本发明实施例可视为是在调用第三方接口失败时的一个备选方案。当第三方接口出现异常时,通过本发明,可以保证大部分数据调用的可靠性。
对于本发明所涉及的名词,统计做解释如下:
电子面单:指由快递公司向卖家提供的一种通过热敏纸打印输出纸质物流面单的物流服务。
第三方承运商:即承运人,是指订立水上货物或旅客运输合同或者实际执行其中全部或一部分运输的一方当事人,可理解为物流承运商。
五级地址:省、市、区县、街道和乡镇、道路/村落/小区/楼栋等赋予唯一通用的识别编码,类似于每栋楼都有一个“邮编”。
Pop:第三方销售的统一叫法。
Sop:利用电商平台销售商家的产品,并提供给商家一个独立操作的后台,要求订单产生后12小时内发货,由商家承担所有的服务。
binlog日志:即二进制日志,记录了数据库上的所有改变,并以二进制的形式保存在磁盘中;可用来查看数据库的变更历史、数据库增量备份和恢复等。
参见图1,示出的是本发明实施例提供的一种数据调用的方法的主要流程图,包括如下步骤:
S101:监听用户对应用界面的点击操作,基于点击操作生成相应的数据调用请求。
S102:传输数据调用请求至第三方接口,当接收到第三方接口反馈的调用失败信息时,基于数据调用请求,在本地训练数据记录中进行查询。
S103:当查询存在与数据调用请求相应的训练数据时,提取所查询到的训练数据并输出。
上述实施方式中,对于步骤S101,对于数据调用请求,可以基于用户对应用业务界面的点击操作所生成,例如,需要打印电子面单的时候。
对于步骤S102,第三方接口有可用以及不可用的情况,因此对于数据调用,同样有成功与失败之分。如果成功,则直接将调用结果返回给客户端,便于客户端进行后续业务处理流程。
但对于调用失败的情况,则需要从本地训练数据记录中进行匹配查询。该训练数据可以包含多种,例如历史训练数据、实时训练数据、前置训练数据等,具体参见后续图2~图4的描述。
对于步骤S103,在训练数据记录中,如果存在与数据调用请求相应的训练数据,则直接返回该查询结果,例如数据调用请求1-训练数据1,同时基于本次匹配情况更新数据库缓存,便于后续查询操作。
若查询不存在,可能是网络异常或其他原因所导致,需将本次异常调用记录下来,例如待处理任务信息,以进入等待队列进行下次调用。例如,通过worker轮训方式再对此数据调用请求进行重新调用,以提高整体数据的完整性。
需要说明的是,对于非网络故障原因导致本地查询结果不存在的情况,其所调用的数据还是需要依据第三方接口获得,但若第三方接口一直不能用,则需要通过相关人员修整该接口。
上述实施例所提供的方法,针对于第三方接口异常、甚至不可用的情况,部分数据是可以在本地获取的,便于客户端可以继续后续业务流程,且降低因第三方接口异常所导致客户端本身的系统问题。
参见图2,示出了根据本发明实施例的一种可选的数据调用的方法流程示意图,包括如下步骤:
S201:获取历史数据,确定每个历史数据的地址信息。
S202:基于每个地址信息,生成相应的第一数据调用请求,传输所生成的第一数据调用请求至第三方接口。
S203:接收第三方接口所反馈的第一数据。
S204:提取与所接收的第一数据相匹配的历史数据,确定所提取的历史数据为历史训练数据,以基于所确定的历史训练数据更新所述训练数据记录。
S205:监听用户对应用界面的点击操作,基于点击操作生成相应的数据调用请求。
S206:传输数据调用请求至第三方接口,当接收到第三方接口反馈的调用失败信息时,基于数据调用请求,在本地训练数据记录中进行查询。
S207:当查询存在与数据调用请求相应的训练数据时,提取所查询到的训练数据并输出。
上述实施方式中,步骤S205~S207可分别参见图1所示步骤S101~S103的描述,在此不再赘述。
历史训练数据主要是对原有历史数据进行再次匹配,目的在于生成训练数据记录,便于后续数据调用得出更多真实可靠的结果。
上述实施方式中,对于步骤S201,对于历史数据的训练,主要基于其地址信息进行。基于地址信息的唯一性,所得寻址数据较为准确。
进一步的,为了使得寻址结果更为精准,可以对其地址进行五级拆分,具体到小区、楼栋等,可以降低因为地址相似导致的数据混淆的情况。
对于步骤S202,worker遍历所有已知的历史数据,该已知的历史数据,可以是数据库中已存的所有数据。
基于历史数据的地址信息,传输相应的第一数据调用请求(例如,历史数据调用请求)至第三方接口。若调用成功则对已有训练数据记录进行判断,但若调用失败则进入等待队列进行下次调用,若一直调用不成功,则需要人工干预。
对于步骤S203以及S204,训练数据记录中对于相同的数据,只会存在一条,但可能会关联多个流水日志,各流水日志分别记录该数据的更新替换情况。
对于历史数据的训练,其实就是对历史已知数据进行遍历整理的过程,具体依据其地址信息进行遍历。
将当前从第三方接口获得的数据与原历史数据进行比较,结果可能有两种情况:
1)两者不相匹配,证明与该地址信息相应的数据后续后变更等操作,为降低后续因数据错误导致业务处理异常的情况,可以不生成相应的训练数据记录;
2)两者相匹配,证明与该地址信息对应的数据后续没有变更等操作,确定原历史数据或本次所调用的数据为历史训练数据。
对于历史训练数据,其处理有不同方式:
①当系统刚上线时,训练数据记录为空,可以直接将该历史训练数据添加至训练数据记录中存储;
②在系统上线后,训练数据记录已存在,若已存在与该地址信息相应的训练数据时,需要判断本次所调用的数据与原训练数据是否相匹配,若不相匹配,为提高后续本地数据调用的准确性,可以替换原训练数据为本次所调用的数据。
当系统初始上线时,对于训练数据记录,可能只包含部分原历史数据,例如网络异常等原因导致第三方接口只反馈的部分数据。因此,对于后续历史数据的整理,可能存在查询不到该地址信息对应的数据情况,针对该情况,可以直接在训练数据记录中新增训练数据即可,并同步更新本地数据库以及缓存信息。
例如,一个用户下单多个,其订单地址可能是一样的,对于其第一条订单记录在训练记录是查询不到的,此时直接记录该订单数据,但后续所下单的订单数据,其地址信息在训练数据中是查询存在的。
通过上述步骤,完成对所有历史数据的训练过程,并更新训练数据记录,所记录的数据可以包括:历史数据、本次调用第三方接口的数据等。
上述实施例所提供的方法,提供了对历史数据的训练过程,基于对训练数据记录的更新,可以提高后续数据获取的准确性。
参见图3,示出了根据本发明实施例的另一种可选的数据调用的方法流程示意图,包括如下步骤:
S301:获取前置数据,确定每个前置数据的参数信息;其中,前置数据为已生成、但未达到调用所述第三方接口周期的数据。
S302:基于预定的校验方式,对每个前置数据中的参数信息进行校验,提取符合校验规则的前置数据。
S303:确定所提取的前置数据为前置训练数据,添加前置训练数据至训练数据记录中,以更新训练数据记录。
S304:监听用户对应用界面的点击操作,基于点击操作生成相应的数据调用请求。
S305:传输数据调用请求至第三方接口,当接收到第三方接口反馈的调用失败信息时,基于数据调用请求,在本地训练数据记录中进行查询。
S306:当查询存在与数据调用请求相应的训练数据时,提取所查询到的训练数据并输出。
上述实施方式中,步骤S304~S306可分别参见图1所示步骤S101~S103的描述,在此不再赘述。
对于第三方接口的数据调用,可能与实际操作是有时间差的,例如,订单下单之后,可能需要经过1小时,才调用第三方接口打印物流单。
为了提高各种训练数据的准确性,可设定该类数据为前置数据,例如订单下单之后调用接口之前的数据,进行数据训练。
上述实施方式中,对于步骤S301,对于前置数据,可以是事先判断后续可能会用到的数据,该判断需要人为参与,例如,促销期间的订单数据,本实施例以订单数据为例进行说明。
客户端在检测到用户完成下单操作之后,会进行订单信息的推送,推送至mq(Queue managers,队列管理器)中,以作为前置数据来源的入口。
对于前置数据的训练,可以视为是数据校验筛选过程。该校验过滤过程,需要依赖于其参数信息进行,例如,订单类型、商家信息、承运商信息等。
对于步骤S302,对于前置数据的校验筛选过程,可以有一定的校验规则。以订单数据为例说明,其校验过程具体如下:
1)首先根据其订单类型,判断是否在事先设定的类型内;例如,事先设定的订单类型包括pop、自营等,存储于订单类型表中,而本次所得订单的订单类型为sop,故校验结果不符,直接剔除该订单数据;
2)对于需要运输的订单,是关联有相关承运商信息的,具体根据订单中的商家编码,在承运商维护系统中,查询该商家是否有签约的第三方承运商,且判断该承运商信息是否过期;如不存在或者信息过期,需剔除该订单数据。
需要说明的是,需要调用第三方接口的订单才会有第三方承运商信息,由于有些订单可能不涉及第三方接口的调用,这些订单数据,是需要过滤掉的。
对于步骤S303,对于校验结果符合的前置数据(即前置训练数据),可添加至训练数据记录中,便于后续查询使用。
进一步的,在存储前置训练数据至训练数据记录之前,还需要基于数据的地址信息,判断记录中是否存在该数据。若对应于同一地址既包含历史训练数据,也包含该前置训练数据,可以替换历史训练数据为该前置训练数据,进行数据更新操作。
上述实施例所提供的方法,通过对前置数据的预先训练,可以保证后续在实际使用过程中,能够快速准确地得到训练数据,降低了与第三方接口的耦合度。
参见图4,示出了根据本发明实施例的又一种可选的数据调用的方法流程示意图,包括如下步骤:
S401:获取实时数据,遍历训练数据记录。
S402:当不存在与实时数据相匹配的训练数据时,确定实时数据为实时训练数据。
S403:添加实时训练数据至训练数据记录中,以更新训练数据记录。
S404:监听用户对应用界面的点击操作,基于点击操作生成相应的数据调用请求。
S405:传输数据调用请求至第三方接口,当接收到第三方接口反馈的调用失败信息时,基于数据调用请求,在本地训练数据记录中进行查询。
S406:当查询存在与数据调用请求相应的训练数据时,提取所查询到的训练数据并输出。
上述实施方式中,步骤S404~S406可分别参见图1所示步骤S101~S103的描述,在此不再赘述。
通过实时数据的训练,可以实现对整体数据的整理,保证数据的可持续性以及稳定性;其中,整体数据是指调用第三方接口所获取的全部数据。
上述实施方式中,对于步骤S401以及S402,所涉及的实时数据,为调用第三方接口结束后就进行训练操作的数据。
对于当前调用第三方接口结束后所得数据,可以进行存储保存。例如,可以将其存储于数据库中,并通过解析数据库的binlog日志来监控数据的创建更新情况。需要说明的是,对于实时数据的存储位置,也可以是客户端的其他存储部件,本发明在此不做限制。
对于数据更新情况的创建,可以基于实时数据的标识、版本号等进行:
1)对于历史不存在的实时数据,可以设置相应的新增标识、更新时间(例如,获取该实时数据的时间)、版本1.0等;
2)对于历史已存在的实时数据,同样可以设置相应的更新标识、更新时间、版本号等,例如,历史数据版本号为2.0,本次所获取的实时数据版本号为3.0。
对于步骤S403,对于实时数据有不同的训练方式:
1)数据更新:根据地址信息等,在训练数据记录中遍历,当存在与该地址相应的训练数据时,对比实时数据与该训练数据,若一致,不做处理;否则,替换原训练数据为该实时数据;
对于查询存在且匹配结果一致的数据,表示本次所获取的实时数据,之前已训练过,且本地调用第三方接口所获取的数据,是可以通过调用本地训练数据记录得到。
2)数据新增:根据该实时数据的地址信息,在训练数据记录中进行遍历,结果不存在与该地址信息相应的训练数据,表示该实时数据是第一次获取,直接添加至训练数据记录中,以填充训练数据。
综上可知,无论训练数据记录中是否已存在该实时数据,最终都是将该实时数据新增或者替换原训练数据,即最终训练数据记录中都是存储有实时数据。
上述实施例所提供的方法,基于对实时数据的训练,可以实现对整体数据的整理,以保证数据的最新有效性以及后续数据提取的准确性。
参见图5,示出了根据本发明实施例的一具体地数据调用的方法流程示意图,包括如下步骤:
S501:获取历史数据,确定每个历史数据的地址信息。
S502:基于每个地址信息,生成相应的第一数据调用请求,传输所生成的第一数据调用请求至第三方接口,以接收第三方接口所反馈的第一数据。
S503:提取与所接收的第一数据相匹配的历史数据,确定所提取的历史数据为历史训练数据。
S501’:获取前置数据,确定每个前置数据的参数信息;其中,前置数据为已生成、但未达到调用所述第三方接口周期的数据。
S502’:基于预定的校验方式,对每个前置数据中的参数信息进行校验,提取符合校验规则的前置数据,确定所提取的前置数据为前置训练数据。
S501”:获取实时数据,遍历训练数据记录。
S502”:当不存在与实时数据相匹配的训练数据时,确定实时数据为实时训练数据。
S504:基于所获取的历史训练数据/前置训练数据/实时训练数据,更新训练数据记录。
S505:监听用户对应用界面的点击操作,基于点击操作生成相应的数据调用请求。
S506:传输数据调用请求至第三方接口,当接收到第三方接口反馈的调用失败信息时,基于数据调用请求,在本地训练数据记录中进行查询。
S507:当查询存在与数据调用请求相应的训练数据时,提取所查询到的训练数据并输出。
上述实施方式中,步骤S501~S503可参见图2所述步骤S201~S204的描述,步骤S501’、S502’可参见图3所示步骤S301~S303的描述,步骤S501”、S502”可参见图4所示步骤S401~S403的描述,步骤S505~S507可分别参见图1所示步骤S101~S103的描述,在此不再赘述。
上述实施方式中,对于步骤S504,通过上述三种不同的训练数据方式,以完善或更新原有训练数据记录,最终产生后续所使用的训练数据。
所涉及的训练数据,描述中虽有前置、历史、实时之分,但训练完成可以不分先后,可以同时执行,也可以分开先后执行,最终形成的都是训练数据,只不过进行插入、更新的节点以及类型不一样而已。
需要说明的是,所训练的数据,只能在一定程度上缓解因第三方接口异常所导致的后续业务处理问题。而有些数据是强烈依赖第三方接口的,例如订单信息,且数据是持续增加的,不是一成不变的,因此,对于大部分数据主要还是依赖于第三方接口获取,对于第三方接口是不能完全替代。
另外,对于数据之间的匹配比较,还可以记录相应的流水日志、匹配率以及匹配量等,便于后续数据查询使用,同时可以监控信息,分析数据的正确度。
其中,对于匹配量,表示本次调用第三方接口所得数据与原训练数据的匹配的数量;对于匹配率,表示整体调用量中的匹配量占比,即匹配量/总调动量。
对于流水日志,可以有匹配流水日志、不匹配流水日志等。其中,对于匹配流水日志,表示从第三方获取的数据与历史数据/训练数据,两者匹配;不匹配流水日志,也可以称为匹配差异日志,包含原训练数据以及调用第三方接口所得数据,表示之前调用第三方接口数据跟现在调用所得数据是有变动差异的。
本发明实施例所提供的方法,对于历史数据、依赖数据以及实时数据进行训练,保证了训练数据的持续性、稳定性以及可靠性,降低了对于第三方接口数据调用的依赖性,同时缓解了第三方接口异常导致本地业务无法进行的情况。
参见图6,示出了本发明实施例提供的一种数据调用的装置600的主要模块示意图,包括:
请求生成模块601,用于:监听用户对应用界面的点击操作,基于点击操作生成相应的数据调用请求;
请求传输模块602,用于:传输数据调用请求至第三方接口,当接收到第三方接口反馈的调用失败信息时,基于数据调用请求,在本地训练数据记录中进行查询;
数据获取模块603,用于:当查询存在与数据调用请求相应的训练数据时,提取所查询到的训练数据并输出。
可选的,训练数据记录包括历史训练数据;
装置还包括历史数据训练模块604(图中6未标出),用于:
获取历史数据,确定每个历史数据的地址信息;
基于每个地址信息,生成相应的第一数据调用请求,传输所生成的第一数据调用请求至第三方接口;
接收第三方接口所反馈的第一数据,提取与所接收的第一数据相匹配的历史数据,确定所提取的历史数据为历史训练数据,以基于所确定的历史训练数据更新训练数据记录。
可选的,历史数据训练模块604,用于:
获取历史数据,确定每个历史数据的地址信息,根据预定的地址拆分方式,拆分每个地址信息为五级地址信息。
可选的,训练数据记录包括前置训练数据;
装置还包括前置数据训练模块605(图中6未标出),用于:
获取前置数据,确定每个前置数据的参数信息;其中,前置数据为已生成、但未达到调用第三方接口周期的数据;
基于预定的校验方式,对每个前置数据中的参数信息进行校验,提取符合校验规则的前置数据;
确定所提取的前置数据为前置训练数据,添加前置训练数据至训练数据记录中,以更新训练数据记录。
可选的,前置数据为订单数据,参数信息至少包括订单类型以及订单承运商信息;
前置数据训练模块605,用于:获取预定的订单类型表,当在订单类型表中查询到订单类型时,检测订单承运商信息是否过期,提取订单承运商信息未过期的订单数据。
可选的,训练数据记录包括实时训练数据;
装置还包括实时数据训练模块606(图中6未标出),用于:
获取实时数据,遍历训练数据记录;当不存在与实时数据相匹配的训练数据时,确定实时数据为实时训练数据;添加实时训练数据至训练数据记录中,以更新训练数据记录。
另外,在本发明实施例中所述的数据调用装置的具体实施内容,在上面所述数据调用方法中已经详细说明了,故在此重复内容不再说明。
本发明实施例所提供的装置,通过针对性训练实时数据、历史数据以及前置数据,实现多维度数据的训练操作。当调用第三方接口失败时,可以通过本地已训练的数据进行匹配查询,从而降低了因为第三方接口异常所导致的自身业务处理问题。另外,通过对流水日志中的匹配量、匹配率进行分析,可以更好的对所训练的数据进行监控。
图7示出了可以应用本发明实施例的数据调用方法或数据调用装置的示例性系统架构700。
如图7所示,系统架构700可以包括终端设备701、702、703,网络704和服务器705(仅仅是示例)。网络704用以在终端设备701、702、703和服务器705之间提供通信链路的介质。网络704可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备701、702、703通过网络704与服务器705交互,以接收或发送消息等。终端设备701、702、703上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。
终端设备701、702、703可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器705可以是提供各种服务的服务器,例如对用户利用终端设备701、702、703所浏览的购物类网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的产品信息查询请求等数据进行分析等处理,并将处理结果(例如目标推送信息、产品信息--仅为示例)反馈给终端设备。
需要说明的是,本发明实施例所提供的数据调用方法一般由服务器705执行,相应地,数据调用装置一般设置于服务器705中。
应该理解,图7中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
下面参考图8,其示出了适于用来实现本发明实施例的终端设备的计算机系统800的结构示意图。图8示出的终端设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图8所示,计算机系统800包括中央处理单元(CPU)801,其可以根据存储在只读存储器(ROM)802中的程序或者从存储部分808加载到随机访问存储器(RAM)803中的程序而执行各种适当的动作和处理。在RAM 803中,还存储有系统800操作所需的各种程序和数据。CPU 801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(I/O)接口805也连接至总线804。
以下部件连接至I/O接口805:包括键盘、鼠标等的输入部分806;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分807;包括硬盘等的存储部分808;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分809。通信部分809经由诸如因特网的网络执行通信处理。驱动器810也根据需要连接至I/O接口805。可拆卸介质811,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器810上,以便于从其上读出的计算机程序根据需要被安装入存储部分808。
特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分809从网络上被下载和安装,和/或从可拆卸介质811被安装。在该计算机程序被中央处理单元(CPU)801执行时,执行本发明的系统中限定的上述功能。
描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括请求生成模块、请求传输模块、数据获取模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,请求传输模块还可以被描述为“传输数据调用请求至第三方接口的模块”。
作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:
监听用户对应用界面的点击操作,基于点击操作生成相应的数据调用请求;
传输数据调用请求至第三方接口,当接收到第三方接口反馈的调用失败信息时,基于数据调用请求,在本地训练数据记录中进行查询;
当查询存在与数据调用请求相应的训练数据时,提取所查询到的训练数据并输出。
根据本发明实施例的技术方案,通过针对性训练实时数据、历史数据以及前置数据,实现多维度数据的训练操作。当调用第三方接口失败时,可以在本地已训练的数据中进行匹配查询,从而降低了因为第三方接口异常所导致的自身业务处理问题。另外,通过对流水日志中的匹配量、匹配率进行分析,可以更好的对所训练的数据进行监控。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

Claims (14)

1.一种数据调用方法,其特征在于,包括:
监听用户对应用界面的点击操作,基于所述点击操作生成相应的数据调用请求;
传输所述数据调用请求至第三方接口,当接收到所述第三方接口反馈的调用失败信息时,基于所述数据调用请求,在本地训练数据记录中进行查询;
当查询存在与所述数据调用请求相应的训练数据时,提取所查询到的训练数据并输出。
2.根据权利要求1所述的方法,其特征在于,所述训练数据记录包括历史训练数据;
在所述监听用户对应用界面的点击操作,基于所述点击操作生成相应的数据调用请求之前,还包括:
获取历史数据,确定每个历史数据的地址信息;
基于每个地址信息,生成相应的第一数据调用请求,传输所生成的第一数据调用请求至所述第三方接口;
接收所述第三方接口所反馈的第一数据,提取与所接收的第一数据相匹配的历史数据,确定所提取的历史数据为历史训练数据,以基于所确定的历史训练数据更新所述训练数据记录。
3.根据权利要求2所述的方法,其特征在于,所述获取历史数据,确定每个历史数据的地址信息,包括:
获取所述历史数据,确定每个历史数据的地址信息,根据预定的地址拆分方式,拆分每个地址信息为五级地址信息。
4.根据权利要求1所述的方法,其特征在于,所述训练数据记录包括前置训练数据;
在所述监听用户对应用界面的点击操作,基于所述点击操作生成相应的数据调用请求之前,还包括:
获取前置数据,确定每个前置数据的参数信息;其中,前置数据为已生成、但未达到调用所述第三方接口周期的数据;
基于预定的校验方式,对每个前置数据中的参数信息进行校验,提取符合所述校验规则的前置数据;
确定所提取的前置数据为前置训练数据,添加所述前置训练数据至所述训练数据记录中,以更新所述训练数据记录。
5.根据权利要求4所述的方法,其特征在于,所述前置数据为订单数据,所述参数信息至少包括订单类型以及订单承运商信息;
所述基于预定的校验方式,对每个前置数据中的参数信息进行校验,提取符合所述校验规则的前置数据,包括:
获取预定的订单类型表,当在所述订单类型表中查询到所述订单类型时,检测所述订单承运商信息是否过期,提取订单承运商信息未过期的订单数据。
6.根据权利要求1所述的方法,其特征在于,所述训练数据记录包括实时训练数据;
在所述监听用户对应用界面的点击操作,基于所述点击操作生成相应的数据调用请求之前,还包括:
获取实时数据,遍历所述训练数据记录;
当不存在与所述实时数据相匹配的训练数据时,确定所述实时数据为实时训练数据;
添加所述实时训练数据至所述训练数据记录中,以更新所述训练数据记录。
7.一种数据调用装置,其特征在于,包括:
请求生成模块,用于:监听用户对应用界面的点击操作,基于所述点击操作生成相应的数据调用请求;
请求传输模块,用于:传输所述数据调用请求至第三方接口,当接收到所述第三方接口反馈的调用失败信息时,基于所述数据调用请求,在本地训练数据记录中进行查询;
数据获取模块,用于:当查询存在与所述数据调用请求相应的训练数据时,提取所查询到的训练数据并输出。
8.根据权利要求7所述的装置,其特征在于,所述训练数据记录包括历史训练数据;
所述装置还包括历史数据训练模块,用于:
获取历史数据,确定每个历史数据的地址信息;
基于每个地址信息,生成相应的第一数据调用请求,传输所生成的第一数据调用请求至所述第三方接口;
接收所述第三方接口所反馈的第一数据,提取与所接收的第一数据相匹配的历史数据,确定所提取的历史数据为历史训练数据,以基于所确定的历史训练数据更新所述训练数据记录。
9.根据权利要求8所述的装置,其特征在于,所述历史数据训练模块,用于:
获取所述历史数据,确定每个历史数据的地址信息,根据预定的地址拆分方式,拆分每个地址信息为五级地址信息。
10.根据权利要求7所述的装置,其特征在于,所述训练数据记录包括前置训练数据;
所述装置还包括前置数据训练模块,用于:
获取前置数据,确定每个前置数据的参数信息;其中,前置数据为已生成、但未达到调用所述第三方接口周期的数据;
基于预定的校验方式,对每个前置数据中的参数信息进行校验,提取符合所述校验规则的前置数据;
确定所提取的前置数据为前置训练数据,添加所述前置训练数据至所述训练数据记录中,以更新所述训练数据记录。
11.根据权利要求10所述的装置,其特征在于,所述前置数据为订单数据,所述参数信息至少包括订单类型以及订单承运商信息;
所述前置数据训练模块,用于:
获取预定的订单类型表,当在所述订单类型表中查询到所述订单类型时,检测所述订单承运商信息是否过期,提取订单承运商信息未过期的订单数据。
12.根据权利要求7所述的装置,其特征在于,所述训练数据记录包括实时训练数据;
所述装置还包括实时数据训练模块,用于:
获取实时数据,遍历所述训练数据记录;
当不存在与所述实时数据相匹配的训练数据时,确定所述实时数据为实时训练数据;
添加所述实时训练数据至所述训练数据记录中,以更新所述训练数据记录。
13.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-6中任一所述的方法。
14.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-6中任一所述的方法。
CN201810552460.3A 2018-05-31 2018-05-31 一种数据调用的方法和装置 Pending CN110554895A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810552460.3A CN110554895A (zh) 2018-05-31 2018-05-31 一种数据调用的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810552460.3A CN110554895A (zh) 2018-05-31 2018-05-31 一种数据调用的方法和装置

Publications (1)

Publication Number Publication Date
CN110554895A true CN110554895A (zh) 2019-12-10

Family

ID=68734627

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810552460.3A Pending CN110554895A (zh) 2018-05-31 2018-05-31 一种数据调用的方法和装置

Country Status (1)

Country Link
CN (1) CN110554895A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111930624A (zh) * 2020-08-12 2020-11-13 中国工商银行股份有限公司 测试链路报文数据处理方法及装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120123984A1 (en) * 2010-11-16 2012-05-17 International Business Machines Corporation Optimal persistence of a business process
CN104899031A (zh) * 2015-05-29 2015-09-09 北京京东尚科信息技术有限公司 物流数据生成方法和装置以及物流客户端配置方法和装置
CN105677466A (zh) * 2015-12-31 2016-06-15 百度在线网络技术(北京)有限公司 第三方应用接口的降级处理的方法和装置
CN106779930A (zh) * 2016-12-05 2017-05-31 深圳支付界科技有限公司 一种基于微商界面直接选购和寄件的方法及系统
CN107135073A (zh) * 2016-02-26 2017-09-05 北京京东尚科信息技术有限公司 接口调用方法和装置
CN107291923A (zh) * 2017-06-29 2017-10-24 北京京东尚科信息技术有限公司 信息处理方法和装置
CN107818431A (zh) * 2016-09-14 2018-03-20 北京京东尚科信息技术有限公司 一种提供订单轨迹数据的方法和系统

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120123984A1 (en) * 2010-11-16 2012-05-17 International Business Machines Corporation Optimal persistence of a business process
CN104899031A (zh) * 2015-05-29 2015-09-09 北京京东尚科信息技术有限公司 物流数据生成方法和装置以及物流客户端配置方法和装置
CN105677466A (zh) * 2015-12-31 2016-06-15 百度在线网络技术(北京)有限公司 第三方应用接口的降级处理的方法和装置
CN107135073A (zh) * 2016-02-26 2017-09-05 北京京东尚科信息技术有限公司 接口调用方法和装置
CN107818431A (zh) * 2016-09-14 2018-03-20 北京京东尚科信息技术有限公司 一种提供订单轨迹数据的方法和系统
CN106779930A (zh) * 2016-12-05 2017-05-31 深圳支付界科技有限公司 一种基于微商界面直接选购和寄件的方法及系统
CN107291923A (zh) * 2017-06-29 2017-10-24 北京京东尚科信息技术有限公司 信息处理方法和装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111930624A (zh) * 2020-08-12 2020-11-13 中国工商银行股份有限公司 测试链路报文数据处理方法及装置
CN111930624B (zh) * 2020-08-12 2024-04-05 中国工商银行股份有限公司 测试链路报文数据处理方法及装置

Similar Documents

Publication Publication Date Title
CN111460129B (zh) 标识生成的方法、装置、电子设备和存储介质
CN110895472A (zh) 一种识别业务变更的方法和装置
CN111831682B (zh) 处理公积金业务的方法、装置、设备和计算机可读介质
CN111038906A (zh) 一种订单分拣方法和装置
CN107909164B (zh) 运维处理方法、系统、电子设备及计算机可读介质
CN111782456A (zh) 异常检测方法、装置、计算机设备和存储介质
CN116450622B (zh) 数据入库的方法、装置、设备和计算机可读介质
CN107357557A (zh) 一种信息更新方法及装置
CN111367934B (zh) 数据一致性的检验方法、装置、服务器和介质
CN113326503A (zh) 一种证书管理方法及计算设备
CN110554895A (zh) 一种数据调用的方法和装置
CN112749124A (zh) 页面信息管理方法、装置、计算机设备及可读存储介质
CN115034717A (zh) 监控物流面单的方法、装置、设备和计算机可读介质
US20120173495A1 (en) Computer Readable Medium, Systems, and Methods of Detecting a Discrepancy in a Chain-of-title of an Asset
CN109582330B (zh) 数据模型升级方法、装置、设备及可读存储介质
CN112732471A (zh) 接口返回数据的纠错方法和纠错装置
CN113779138B (zh) 一种订单管理方法和装置
CN113595870B (zh) 推送消息的处理方法、装置、电子设备及存储介质
CN112181701B (zh) 一种定位异常业务请求的方法和装置
CN114707967A (zh) 一种业务处理方法、装置、电子设备及计算机可读介质
CN114385595B (zh) 数据迁移方法、装置、计算机设备及存储介质
CN116757638A (zh) 一种交易数据的核销方法和装置
CN118132082A (zh) 处理票据的方法、装置、设备和计算机可读介质
CN118170665A (zh) 业务数据处理的方法、装置、电子设备和存储介质
CN116342058A (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