一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种数据文件下载及推送方法及装置与流程

2022-12-06 23:24:02 来源:中国专利 TAG:


1.本技术涉及大数据技术领域,尤其涉及一种数据文件下载及推送方法及装置。


背景技术:

2.数据湖每日接收各源系统的数据文件,同时会将接收的源文件上传至对象存储,以备后续下载使用。目前,数据湖又新增接入了审计数据平台下传的来自各源系统的历史数据文件,以及后续每月新增数据文件,并将这些数据上传至对象存储,供后续审计数据平台以及各下游系统随时申请使用,从对象存储下载文件并推送给不同的系统。面对日益增多的各下游系统的文件申请需求,需要一套实现数据湖接收不同系统请求,下载文件并推送至不同目标系统功能的方法。
3.现有技术需要对不同的文件提取需求分别编写文件提取程序,或由运维去对象存储下载文件放到各系统指定目录下,面对日益增多的各下游系统文件申请需求,人工运维成本和时间成本较高。


技术实现要素:

4.有鉴于此,本技术提供了一种数据文件下载及推送方法及装置,旨在解决现有技术中响应于各下游系统的文件申请需求的方案,人工运维成本和时间成本较高的问题。
5.第一方面,本技术提供了一种数据文件下载及推送方法,所述方法包括:
6.调用文件下载请求接口,根据所述文件下载请求接口的参数,判断目标文件是否上传至对象存储;
7.若目标文件上传至所述对象存储,则根据所述文件下载请求接口的参数,将所述目标文件的信息插入到下载任务表中;
8.当所述下载任务表中的目标任务状态为第一状态时,则下载所述目标任务;
9.当所述目标任务下载成功后,则将所述目标文件的信息插入到推送任务表中;
10.当所述推送任务表中的目标任务状态为第二状态时,则推送所述目标任务。
11.可选的,所述方法还包括:
12.建立文件下载请求接口;所述接口的参数至少包括申请文件系统名、文件类型、源文件名。
13.可选的,在所述目标文件的信息插入到下载任务表中之前,所述方法还包括:
14.建立下载任务表,利用所述下载任务表记录待下载任务的相关信息。
15.可选的,在所述将所述目标文件的信息插入到推送任务表中之前,所述方法还包括:
16.建立推送任务表,利用所述推送任务表记录待推送任务的相关信息。
17.可选的,在所述判断目标文件是否上传至对象存储之前,所述方法还包括:
18.将所述对象存储中的文件信息以日期为单位同步到第一数据库中;
19.将所述第一数据库中的数据映射到第二数据库,所述第二数据库用于当所述第一
数据库中未查询到目标文件信息时,查询所述目标文件信息是否存在于所述第二数据库中。
20.第二方面,本技术提供了一种数据文件下载及推送装置,所述装置包括:判断模块、第一插入模块、第一下载模块、第二插入模块、第二下载模块;
21.所述判断模块,用于调用文件下载请求接口,根据所述文件下载请求接口的参数,判断目标文件是否上传至对象存储;
22.所述第一插入模块,用于在目标文件上传至所述对象存储的情况下,根据所述文件下载请求接口的参数,将所述目标文件的信息插入到下载任务表中;
23.所述第一下载模块,用于当所述下载任务表中的目标任务状态为第一状态时,下载所述目标任务;
24.所述第二插入模块,用于当所述目标任务下载成功后,将所述目标文件的信息插入到推送任务表中;
25.所述第二下载模块,用于当所述推送任务表中的目标任务状态为第二状态时,推送所述目标任务。
26.可选的,所述装置还包括建立模块,所述建立模块具体用于:
27.建立文件下载请求接口;所述接口的参数至少包括申请文件系统名、文件类型、源文件名。
28.可选的,在所述目标文件的信息插入到下载任务表中之前,所述建立模块还用于:
29.建立下载任务表,利用所述下载任务表记录待下载任务的相关信息。
30.可选的,在所述将所述目标文件的信息插入到推送任务表中之前,所述建立模块还用于:
31.建立推送任务表,利用所述推送任务表记录待推送任务的相关信息。
32.可选的,所述装置还包括同步模块和映射模块;在所述判断目标文件是否上传至对象存储之前,所述同步模块,具体用于将所述对象存储中的文件信息以日期为单位同步到第一数据库中;所述映射模块,具体用于将所述第一数据库中的数据映射到第二数据库,所述第二数据库用于当所述第一数据库中未查询到目标文件信息时,查询所述目标文件信息是否存在于所述第二数据库中。
33.本技术提供了一种数据文件下载及推送方法及装置。在执行所述方法时,先调用文件下载请求接口,根据文件下载请求接口的参数,判断目标文件是否上传至对象存储;若目标文件上传至所述对象存储,则根据所述文件下载请求接口的参数,将所述目标文件的信息插入到下载任务表中;当所述下载任务表中的目标任务状态为第一状态时,则下载所述目标任务;当所述目标任务下载成功后,则将所述目标文件的信息插入到推送任务表中;当所述推送任务表中的目标任务状态为第二状态时,则推送所述目标任务。通过调用文件下载请求接口,根据所述文件下载请求接口的参数,自动存储下载任务及推送任务,并当状态为准备状态时,自动进行任务的下载或推送,解决了现有技术中响应于各下游系统的文件申请需求的方案,人工运维成本和时间成本较高的问题。
附图说明
34.为更清楚地说明本实施例或现有技术中的技术方案,下面将对实施例或现有技术
描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
35.图1为本技术实施例提供的一种数据文件下载及推送方法的流程图;
36.图2为本技术实施例提供的一种数据文件下载及推送装置的结构示意图。
具体实施方式
37.数据湖每日接收各源系统的数据文件,同时会将接收的源文件上传至对象存储,以备后续下载使用。目前,数据湖又新增接入了审计数据平台下传的来自各源系统的历史数据文件,以及后续每月新增数据文件,并将这些数据上传至对象存储,供后续审计数据平台以及各下游系统随时申请使用,从对象存储下载文件并推送给不同的系统。面对日益增多的各下游系统的文件申请需求,需要一套实现数据湖接收不同系统请求,下载文件并推送至不同目标系统功能的方法。
38.现有技术需要对不同的文件提取需求分别编写文件提取程序,或由运维去对象存储下载文件放到各系统指定目录下,面对日益增多的各下游系统文件申请需求,人工运维成本和时间成本较高。
39.有鉴于此,本技术发明人考虑到如果能够开发一个公共的文件下载请求接口,提供给各数据使用方调用,通过调用文件下载接口,数据湖接收各系统传来的参数,查询待下载文件相关信息插入到一张下载任务表中,开发相关程序监控扫描该下载任务表,从对象存储下载文件至服务处理目录,服务处理文件,生成推送任务并转移至推送目录下,推送线程进行文件推送,推送至各数据使用方的指定目录下。如此可以实现自动进行文件的下载及推送,进而解决现有技术中需要对不同的文件提取需求分别编写文件提取程序,或由运维去对象存储下载文件放到各系统指定目录下,导致的人工运维成本和时间成本较高的问题。
40.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
41.参见图1,图1为本技术实施例提供的一种数据文件下载及推送方法的流程图,包括:
42.s101、调用文件下载请求接口,根据所述文件下载请求接口的参数,判断目标文件是否上传至对象存储。
43.各数据使用方调用文件申请接口,微服务ms根据文件下载请求接口传来的各系统参数值,包括申请文件系统名sub product name、源文件名src file name、文件类型data type,首先去第一数据库的文件上传对象存储记录表dbus obs upload info中查询src file name对应的对象存储目录obs dir和上传状态obs status。若查询不到,去第二数据库查询,若还是查询不到,表示对象存储中无目标文件,接口返回提示信息;若能查询到,表示对象存储中存在目标文件。目标文件为当前下游系统需要的文件。
44.s102、若目标文件上传至所述对象存储,则根据所述文件下载请求接口的参数,将
upload info表中查询该文件在对象存储的上传状态,若obs status状态为成功,往dbus tasklist pulldata online表中插入一条文件记录,记录src file name、obs dir、sub product name等信息。
55.进一步地,本技术可选的实施例,在将所述文件的信息插入到推送任务表中之前,还可以建立推送任务表,用来记录待推送文件的相关信息。当文件从对象存储成功下载至服务处理目录,将文件转移至推送目录下,并往dbus tasklist file push表中插入一条文件记录,记录src file name、file path、sub product name等信息。
56.进一步地,本技术可选的实施例,在判断目标文件是否上传至对象存储之前,还可以使用腾讯tbds平台的mysql-to-hive同步功能,将mysql表信息按日同步到hive表中。新建一个工作流,按日调度,将mysql表dbus obs upload info中的数据每日增量同步到hive表中,虽然hive表存储能力强,但不适合查询,因此还需将数据映射到hbase表中,当ms接收到请求后,首先去mysql表dbus obs upload info中查询文件记录,若查询不到,再去hbase表中查询。
57.以上为本技术实施例提供一种数据文件下载及推送方法方法的一些具体实现方式,基于此,本技术还提供了对应的一种数据文件下载及推送装置。下面将从功能模块化的角度对本技术实施例提供的装置进行介绍。
58.参见图2,图2为本技术实施例提供的一种数据文件下载及推送装置的结构示意图,该装置包括:判断模块201、第一插入模块202、第一下载模块203、第二插入模块204、第二下载模块205;
59.所述判断模块201,用于调用文件下载请求接口,根据接口参数判断目标文件是否上传至对象存储;
60.所述第一插入模块202,用于在目标文件上传至所述对象存储的情况下,根据所述文件下载请求接口的参数及查询到的obs_dir信息,将所述目标文件的信息插入到下载任务表中;
61.所述第一下载模块203,用于当所述下载任务表中的目标任务状态为第一状态时,下载所述目标任务;
62.所述第二插入模块204,用于当所述目标任务下载成功后,将所述目标文件的信息插入到推送任务表中;
63.所述第二下载模块205,用于当所述推送任务表中的目标任务状态为第二状态时,推送所述目标任务。
64.本技术提供了一种数据文件下载及推送装置,用于执行对应的数据文件下载及推送方法。在执行所述方法时,先调用文件下载请求接口,根据文件下载请求接口的参数,判断目标文件是否上传至对象存储;若目标文件上传至所述对象存储,则根据所述文件下载请求接口的参数,将所述目标文件的信息插入到下载任务表中;当所述下载任务表中的目标任务状态为第一状态时,则下载所述目标任务;当所述目标任务下载成功后,则将所述目标文件的信息插入到推送任务表中;当所述推送任务表中的目标任务状态为第二状态时,则推送所述目标任务。通过调用文件下载请求接口,根据所述文件下载请求接口的参数,自动存储下载任务及推送任务,并当状态为准备状态时,自动进行任务的下载或推送,解决了现有技术中响应于各下游系统的文件申请需求的方案,人工运维成本和时间成本较高的问
题。
65.进一步地,本技术可选的实施例,所述装置还包括建立模块,所述建立模块具体用于:
66.建立文件下载请求接口;所述接口的参数至少包括申请文件系统名、文件类型、源文件名。
67.进一步地,本技术可选的实施例,在所述目标文件的信息插入到下载任务表中之前,所述建立模块还用于:
68.建立下载任务表,利用所述下载任务表记录待下载任务的相关信息。
69.进一步地,本技术可选的实施例,在所述将所述目标文件的信息插入到推送任务表中之前,所述建立模块还用于:
70.建立推送任务表,利用所述推送任务表记录待推送任务的相关信息。
71.进一步地,本技术可选的实施例,所述装置还包括同步模块和映射模块;在所述判断目标文件是否上传至对象存储之前,所述同步模块,具体用于将所述对象存储中的文件信息以日期为单位同步到第一数据库中;所述映射模块,具体用于将所述第一数据库(定期清理)中的数据映射到第二数据库(永久存储),所述第二数据库用于当所述第一数据库中未查询到目标文件信息时,查询所述目标文件信息是否存在于所述第二数据库中。
72.本技术实施例中提到的“第一状态”、“第二状态”等名称中的“第一”、“第二”只是用来做名字标识,并不代表顺序上的第一、第二。
73.通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到上述实施例方法中的全部或部分步骤可借助软件加通用硬件平台的方式来实现。基于这样的理解,本技术的技术方案可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如只读存储器(英文:read-only memory,rom)/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者诸如路由器等网络通信设备)执行本技术各个实施例或者实施例的某些部分所述的方法。
74.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
75.以上所述仅是本技术示例性的实施方式,并非用于限定本技术的保护范围。
76.需要说明的是,本发明提供的一种数据文件下载及推送方法及装置,可应用于大数据技术领域或金融领域。上述仅为示例,并不对本发明提供的一种数据文件下载及推送方法及装置的应用领域进行限定。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献