数据获取方法、装置、设备及可读存储介质与流程

文档序号:26789740发布日期:2021-09-28 22:56阅读:87来源:国知局
数据获取方法、装置、设备及可读存储介质与流程

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.第一断开模块,用于若该缓存队列中数据源的标识所标识的数据源中存在空闲数据源,则断开计算机设备与该空闲数据源之间的连接,并建立计算机设备与该目标数据源
之间的连接。
36.结合第二方面,在一种可能的实现方式中,该数据获取装置还包括:
37.数据调整模块,用于从该缓存队列中删除该空闲数据源的标识,将该目标数据源的标识添加至该缓存队列中。
38.结合第二方面,在一种可能的实现方式中,该数据获取装置还包括:
39.等待连接模块,用于若该缓存队列中数据源的标识所标识的数据源中不存在空闲数据源,则输出等待信息,该等待信息用于指示等待建立计算机设备与该目标数据源之间的连接;
40.第二断开模块,用于在检测到该缓存队列中数据源的标识所标识的数据源中存在空闲数据源的情况下,断开计算机设备与该空闲数据源之间的连接,并建立计算机设备与该目标数据源之间的连接。
41.结合第二方面,在一种可能的实现方式中,该数据获取装置还包括:
42.信息获取模块,用于获取在目标时间段内针对该缓存队列中每个数据源的标识所标识的数据源的调用信息;
43.该信息获取模块,还用于基于该调用信息对与该缓存队列中每个数据源的标识所标识的数据源之间的连接进行调整,并对该缓存队列中的数据源的标识进行调整。
44.结合第二方面,在一种可能的实现方式中,该调用信息包括调用次数和/或调用优先级;该信息获取模块,具体用于:
45.获取该调用次数低于数量阈值的数据源,断开计算机设备与该调用次数低于该数量阈值的数据源之间的连接,并从该缓存队列中删除该调用次数低于该数量阈值的数据源的标识,和/或;
46.获取该调用优先级低于等级阈值的数据源,断开计算机设备与该调用优先级低于该等级阈值的数据源之间的连接,并从该缓存队列中删除该调用优先级低于该等级阈值的数据源的标识。
47.第三方面,本技术提供了一种计算机设备,包括:处理器、存储器、网络接口;
48.上述处理器与存储器、网络接口相连,其中,网络接口用于提供数据通信功能,上述存储器用于存储计算机程序,上述处理器用于调用上述计算机程序,以使包含该处理器的计算机设备执行上述第一方面的方法。
49.第四方面,本技术提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,该计算机程序适于由处理器加载并执行,以使得具有该处理器的计算机设备执行上述第一方面的方法。
50.第五方面,本技术提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本技术第一方面的中的各种可选方式中提供的方法。
51.本技术实施例中,获取目标数据源的标识,确定目标数据源的标识是否存在于缓存队列中;若目标数据源的标识存在于缓存队列中,则调用目标数据源中存储的数据,目标数据源的标识用于标识该目标数据源;若目标数据源的标识不存在于缓存队列中,则获取缓存队列中数据源的标识的数量,根据缓存队列中数据源的标识的数量建立计算机设备与
目标数据源之间的连接,并调用目标数据源中存储的数据。通过设置缓存队列,确定获取的数据源的标识是否存在于缓存队列中,从而确定该数据源与计算机设备之间是否存在连接,若该数据源与计算机设备之间存在连接,可以直接复用该连接,无需与该数据源重新建立连接,可以节省数据获取的时间,从而提高数据获取效率。
附图说明
52.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
53.图1是本技术实施例提供的一种数据获取方法的流程示意图;
54.图2是本技术实施例提供的另一种数据获取方法的流程示意图;
55.图3是本技术实施例提供的一种数据获取装置的组成结构示意图;
56.图4是本技术实施例提供的一种计算机设备的组成结构示意图。
具体实施方式
57.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
58.请参见图1,图1是本技术实施例提供的一种数据获取方法的流程示意图,该方法可以应用于计算机设备,其中,计算机设备可以是一种电子设备,包括但不限于手机、平板电脑、台式电脑、笔记本电脑、掌上电脑、车载设备、增强现实/虚拟现实(augmented reality/virtual reality,ar/vr)设备、头盔显示器、可穿戴设备、智能音箱、数码相机、摄像头及其他具备网络接入能力的移动互联网设备(mobile internet device,mid)等等;还可以是指是一台独立的服务器、或由若干台服务器组成的服务器集群、或云计算中心。如图1所示,该方法包括但不限于以下步骤:
59.s101,获取目标数据源的标识,确定目标数据源的标识是否存在于缓存队列中。
60.本技术实施例中,计算机设备可以获取目标数据源的标识,确定目标数据源的标识是否存在于缓存队列中,从而确定计算机设备当前是否与目标数据源之间存在连接。可知,缓存队列中所有数据源的标识所标识的数据源与计算机设备之间当前存在连接。若目标数据源的标识存在于缓存队列中,则表示目标数据源与计算机设备之间存在连接,因此计算机设备可以直接复用该目标数据源的连接,调用目标数据源中存储的数据,无需与该目标数据源重新建立连接,可以节省数据获取的时间,提高数据获取效率。
61.其中,缓存队列用于存储至少一个历史连接的数据源的标识,缓存队列中的历史连接的数据源是指在获取目标数据源的标识之前,与计算机设备之间建立了连接,且当前该连接未断开的数据源。当前对应的时间可以是指计算机设备获取目标数据源的标识的时间,则历史对应的时间可以是指计算机设备获取目标数据源的标识的时间之前的时间。目标数据源的标识用于唯一地指示目标数据源,例如可以包括目标数据源的名称、目标数据
源的存储路径、目标数据源的类型、目标数据源的编号以及目标数据源的url(uniform resource locator,统一资源定位器),等等。可选的,计算机设备可以从一种或者多种组件中获取目标数据源的标识,例如可以从默认数据库、配置中心、多个计算机设备的接口或者其他组件中获取目标数据源的标识,本技术实施例中不做限定。
62.s102,若目标数据源的标识存在于缓存队列中,则调用目标数据源中存储的数据。
63.本技术实施例中,若目标数据源的标识存在于缓存队列中,则计算机设备调用目标数据源中存储的数据,目标数据源的标识用于标识目标数据源。由于目标数据源的标识存在于缓存队列中,则表示目标数据源与计算机设备之间存在连接,即存储有该目标数据源的连接信息,因此计算机设备可以直接复用该目标数据源的连接信息,调用目标数据源中存储的数据,无需与该目标数据源重新建立连接,可以节省数据获取的时间,提高数据获取效率。其中,目标数据源的连接信息可以包括目标数据源的类型、目标数据源的url以及用户名密码,等等。
64.s103,若目标数据源的标识不存在于缓存队列中,则获取缓存队列中数据源的标识的数量,根据缓存队列中数据源的标识的数量建立计算机设备与目标数据源之间的连接,并调用目标数据源中存储的数据。
65.本技术实施例中,若目标数据源的标识不存在于缓存队列中,则计算机设备获取缓存队列中数据源的标识的数量,根据缓存队列中数据源的标识的数量建立计算机设备与目标数据源之间的连接,并调用目标数据源中存储的数据。其中,由于目标数据源的标识不存在于缓存队列中,表示目标数据源与计算机设备之间不存在连接,因此计算机设备需要调用目标数据源中存储的数据时,需要先建立计算机设备与目标数据源之间的连接,从而基于该连接调用目标数据源中存储的数据。其中,缓存队列中数据源的标识的数量可以是指当前与计算机设备之间存在连接的数据源的数量。
66.可选的,目标数据源的标识不存在于缓存队列可以包括两种情况:计算机设备从未与目标数据源之间建立连接,如计算机设备从未调用目标数据源中存储的数据。或者,计算机设备与目标数据源之间建立连接,且已断开与该目标数据源之间的连接之后,如计算机设备建立计算机设备与目标数据源之间的连接,调用目标数据源中存储的数据之后,已断开与该目标数据源之间的连接。可知,该两种情况下,目标数据源当前与计算机设备之间都不存在连接,因此,计算机设备需要先建立计算机设备与目标数据源之间的连接,从而调用目标数据源中存储的数据。可选的,计算机设备在与目标数据源之间建立连接之后,可以保存目标数据源的连接信息,在下次与目标数据源之间建立连接时,可以直接使用保存的目标数据源的连接信息,与目标数据源进行连接,无需再从目标数据源中获取连接信息,可以提高连接效率。
67.可选的,计算机设备可以根据缓存队列的队列长度,建立计算机设备与目标数据源之间的连接。具体的,计算机设备可以确定缓存队列中数据源的标识的数量是否小于队列长度;若缓存队列中的数据源的标识的数量小于队列长度,则计算机设备建立计算机设备与目标数据源之间的连接。
68.其中,队列长度可以是指与计算机设备连接的数据源的个数,队列长度可以是预先设置得到的,可以根据计算机设备的性能以及用户需求等情况设定,例如5个、8个、10个等等。其中,缓存队列中数据源的标识的数量小于队列长度,可以表示当前与计算机设备连
接的数据源的数量较少,未达到上限(即队列长度),则计算机设备还可以与目标数据源之间建立连接,则计算机设备可以与目标数据源之间建立连接,并在计算机设备与目标数据源之间成功建立连接之后,调用目标数据源中存储的数据。可以理解的是,若计算机设备与目标数据源之间建立连接失败,则计算机设备不能调用目标数据源中存储的数据。
69.可选的,在计算机设备与目标数据源之间成功建立连接,调用目标数据源中存储的数据之后,计算机设备还可以将目标数据源的标识添加至缓存队列中,以便于更新缓存队列,后续计算机设备获取到目标数据源的标识时,可以根据更新后的缓存队列确定目标数据源的标识是否存在于更新后的缓存队列中,从而对目标数据源进行相应处理。
70.可选的,若缓存队列中数据源的标识的数量大于或等于队列长度,则计算机设备可以检测缓存队列中数据源的标识所标识的数据源中是否存在空闲数据源;若缓存队列中数据源的标识所标识的数据源中存在空闲数据源,则断开计算机设备与空闲数据源之间的连接,并建立计算机设备与目标数据源之间的连接。
71.其中,缓存队列中数据源的标识的数量大于或等于队列长度,可以表示当前与计算机设备连接的数据源的数量较多,达到了上限(即队列长度),若此时计算机设备再与目标数据源之间建立连接,可能导致影响计算机设备获取数据的效率,影响数据获取的稳定性。因此,计算机设备可以检测缓存队列中数据源的标识所标识的数据源中是否存在空闲数据源;若缓存队列中数据源的标识所标识的数据源中存在空闲数据源,则断开计算机设备与空闲数据源之间的连接,并建立计算机设备与目标数据源之间的连接。其中,空闲数据源可以是指该空闲数据源的标识存在于缓存队列中,该空闲数据源与计算机设备之间存在连接,但当前计算机设备未调用该数据源中存储的数据。通过断开计算机设备与当前未调用的空闲数据源之间的连接,建立计算机设备与需要调用的数据源(即目标数据源)之间的连接,可以避免由于空闲数据源占用连接通道,影响需要调用的数据源无法与计算机设备建立连接的情况,从而提高数据获取的稳定性,实现对资源的合理利用。通过设置队列长度,可以避免计算机设备与无限多的数据源进行连接,导致负荷过重造成数据连接异常,提高数据获取的稳定性。
72.可选的,计算机设备在断开计算机设备与空闲数据源之间的连接,并与目标数据源之间成功建立连接之后,可以从缓存队列中删除空闲数据源的标识,将目标数据源的标识添加至缓存队列中,从而实现更新缓存队列,后续计算机设备获取到目标数据源的标识时,可以根据更新后的缓存队列确定目标数据源的标识是否存在于更新后的缓存队列中,从而对目标数据源进行相应处理。
73.可选的,若计算机设备检测到缓存队列中数据源的标识所标识的数据源中不存在空闲数据源,则输出等待信息,其中,等待信息用于指示等待建立计算机设备与目标数据源之间的连接;在检测到缓存队列中数据源的标识所标识的数据源中存在空闲数据源的情况下,断开计算机设备与空闲数据源之间的连接,并建立计算机设备与目标数据源之间的连接。
74.其中,由于缓存队列中数据源的标识所标识的数据源中不存在空闲数据源,表示计算机设备当前正在调用缓存队列中的每个数据源的标识所标识的数据源中存储的数据,则可以输出等待信息,并在检测到存在空闲数据源的情况下,断开计算机设备与空闲数据源之间的连接,并建立计算机设备与目标数据源之间的连接,并在成功建立计算机设备与
目标数据源之间的连接之后,调用目标数据源中存储的数据。可选的,在成功建立计算机设备与目标数据源之间的连接之后,计算机设备还可以从缓存队列中删除空闲数据源的标识,将目标数据源的标识添加至缓存队列中,从而实现更新缓存队列,后续计算机设备获取到目标数据源的标识时,可以根据更新后的缓存队列确定目标数据源的标识是否存在于更新后的缓存队列中,从而对目标数据源进行相应处理。另外,通过对缓存队列中的数据源的标识进行调整更新,即对与计算机设备连接的数据源的连接状态进行调整,实现对数据源的断开或者连接,可以避免由于连接过多数据源造成虚拟机内存被过多占用的问题,增加系统的可用性和灵活性。
75.可选的,若检测到计算机设备调用任意一个数据源中存储的数据的频率大于频率阈值,则可以将该数据源确定为固定数据源,该数据源的标识可以存在于缓存队列中,也可以不存在缓存队列中。若数据源的标识存在于缓存队列中,后续计算机设备对缓存队列中的数据源的标识进行更新时,可以不对该固定数据源的标识进行处理,并一直保存与该固定数据源之间的连接。也就是说,若计算机设备调用某一个数据源的频率大于频率阈值,可以表示该数据源为常用数据源,则计算机设备可以保存与该固定数据源之间的连接,即不管缓存队列中数据源的标识的数量是否大于或等于队列长度,均保存与该固定数据源之间的连接,便于获取该固定数据源中存储的数据。由于计算机设备需要经常调用该固定数据源中存储的数据,则通过保存该连接,可以在后续每次调用该固定数据源中存储的数据时,复用该固定数据源的连接,调用固定数据源中存储的数据,无需每次都与该固定数据源建立连接,可以提高数据获取效率。
76.本技术实施例中,获取目标数据源的标识,确定目标数据源的标识是否存在于缓存队列中;若目标数据源的标识存在于缓存队列中,则调用目标数据源中存储的数据;若目标数据源的标识不存在于缓存队列中,则获取缓存队列中数据源的标识的数量,根据缓存队列中数据源的标识的数量建立计算机设备与目标数据源之间的连接,并调用目标数据源中存储的数据。通过设置缓存队列,确定获取的数据源的标识是否存在于缓存队列中,从而确定该数据源与计算机设备之间是否存在连接,若该数据源与计算机设备之间存在连接,可以直接复用该连接,无需与该数据源重新建立连接,可以节省数据获取的时间,从而提高数据获取效率。
77.可选的,请参见图2,图2是本技术实施例提供的另一种数据获取方法的流程示意图,该方法可以应用于计算机设备;如图2所示,该方法包括但不限于以下步骤:
78.s201,获取在目标时间段内针对缓存队列中每个数据源的标识所标识的数据源的调用信息。
79.本技术实施例中,计算机设备可以获取在目标时间段内针对缓存队列中每个数据源的标识所标识的数据源的调用信息。其中,目标时间段可以是指历史时间段中的任意一个时间段,即获取目标数据源的标识之前的任意一个时间段。例如,目标时间段可以是指获取目标数据源的标识之前的一星期内、一个月内、三个月内,等等。由于缓存队列中存在至少一个数据源的标识,至少一个数据源中每个数据源的标识对应一个数据源,即每个数据源的标识用于标识一个数据源,则计算机设备可以获取至少一个数据源中每个数据源的调用信息。其中,数据源的调用信息可以包括数据源的调用次数以及调用优先级,等等。
80.s202,基于调用信息对与缓存队列中每个数据源的标识所标识的数据源之间的连
接进行调整,并对缓存队列中的数据源的标识进行调整。
81.本技术实施例中,计算机设备可以基于调用信息对与缓存队列中每个数据源的标识所标识的数据源之间的连接进行调整,并对缓存队列中的数据源的标识进行调整,实现对缓存队列中的数据源的标识进行更新。通过对缓存队列中的数据源的标识进行调整,可以便于后续在计算机设备获取到目标数据源的标识时,可以根据调整后的缓存队列确定目标数据源的标识是否存在于调整后的缓存队列中,从而对目标数据源进行相应处理。另外,通过对缓存队列中的数据源的标识进行调整,即对与计算机设备连接的数据源的连接状态进行调整,实现对数据源的断开或者连接,避免由于连接过多数据源造成虚拟机内存被过多占用的问题,增加系统的可用性和灵活性。
82.可选的,调用信息可以包括调用次数,则计算机设备可以基于调用次数对缓存队列中每个数据源的标识进行调整。具体的,计算机设备可以获取调用次数低于数量阈值的数据源,断开计算机设备与调用次数低于数量阈值的数据源之间的连接,并从缓存队列中删除调用次数低于数量阈值的数据源的标识。
83.其中,调用次数可以包括该计算机设备在目标时间段内调用该数据源中存储的数据的次数。或者,调用次数也可以包括所有计算机设备,即包括该计算机设备和其他计算机设备在目标时间段内调用该数据源中存储的数据的次数之和。可以理解的是,数据源的调用次数高于或等于数量阈值,表示该数据源的调用次数较高,例如该数据源可以为常用的数据源。数据源的调用次数低于数量阈值,表示该数据源的调用次数较低,例如该数据源可以为不常用的数据源,则计算机设备可以断开计算机设备与调用次数低于数量阈值的数据源之间的连接,避免由于不常用的数据源占用连接通道,导致常用的数据源无法与计算机设备建立连接的情况,从而提高数据获取的稳定性。并且,通过从缓存队列中删除调用次数低于数量阈值的数据源的标识,可以实现对缓存队列的更新,便于后续对目标数据源进行相应处理。
84.可选的,调用信息可以包括调用优先级,则计算机设备可以基于调用优先级对缓存队列中每个数据源的标识进行调整。具体的,计算机设备可以获取调用优先级低于等级阈值的数据源,断开计算机设备与调用优先级低于等级阈值的数据源之间的连接,并从缓存队列中删除调用优先级低于等级阈值的数据源的标识。
85.其中,计算机设备可以结合数据源中存储的数据的调用次数以及调用频率等信息确定每个数据源的调用优先级。例如,数据源中存储的数据的调用次数越多且调用频率越高,则数据源的调用优先级越高;数据源中存储的数据的调用次数越少且调用频率越低,则数据源的调用优先级越小。或者,计算机设备也可以预先设定每个数据源的调用优先级,例如可以根据数据源的常用程度设定每个数据源的调用优先级,对于一些基础数据源,每个计算机设备都会调用,则该数据源的调用优先级高于其他数据源的调用优先级。可以理解的是,数据源的调用优先级高于或等于等级阈值,表示该数据源的调用优先级较高,例如该数据源可以为常用的数据源。数据源的调用优先级低于等级阈值,表示该数据源的调用优先级较低,例如该数据源可以为不常用的数据源,则计算机设备可以断开计算机设备与调用优先级低于等级阈值的数据源之间的连接,避免由于不常用的数据源占用连接通道,导致常用的数据源无法与计算机设备建立连接的情况,从而提高数据获取的稳定性。并且,通过从缓存队列中删除调用次数低于数量阈值的数据源的标识,可以实现对缓存队列的更
新,便于后续对目标数据源进行相应处理。
86.可选的,计算机设备在调用缓存队列中数据源的标识所标识的数据源时,可以将数据源的标识移动到缓存队列的队头,通过统计缓存队列中每个数据源的标识位于缓存队列的队头的次数,确定每个数据源的调用次数或者调用优先级,等等。数据源的标识位于缓存队列的队头的次数越多,该数据源的调用次数越多,且调用优先级越高;数据源的标识位于缓存队列的队头的次数越少,该数据源的调用次数越少,且调用优先级越低。举例来说,缓存队列中存在3个数据源的标识,分别为数据源1、数据源2、数据源3,当计算机设备调用数据源1标识的数据源时,将该数据源1移动到缓存队列的队头;当计算机设备调用数据源2标识的数据源时,将该数据源2移动到缓存队列的队头;当计算机设备调用数据源3标识的数据源时,将该数据源3移动到缓存队列的队头。也就是说,每次调用数据源时,都会将该数据源的标识移动到缓存队列的队头,从而计算机设备可以统计每个数据源的标识位于缓存队列的队头的次数,确定每个数据源的调用次数或者调用优先级。
87.可选的,调用信息可以包括有效调用期限,则计算机设备可以基于调用期限对缓存队列中每个数据源的标识进行调整。具体的,计算机设备可以获取调用时间不满足有效调用期限的数据源,断开计算机设备与调用时间不满足有效调用期限的数据源之间的连接,并从缓存队列中删除调用时间不满足有效调用期限的数据源的标识。
88.其中,有效调用期限是指该计算机设备可以调用该数据源中存储的数据的期限。即在该有效调用期限内计算机设备可以调用该数据源中存储的数据;在有效调用期限以外计算机设备不能调用该数据源中存储的数据。具体的,例如在某些场景中,如针对节假日内的活动,当在该节假日期限内时,计算机设备需要多次调用该数据源中存储的数据,当不在该节假日期限内时,计算机设备不需要调用该数据源中存储的数据。因此,通过设置调用该数据源中存储的数据的有效调用期限,当不满足调用期限时,可以自动对缓存队列中数据源的标识进行更新,无需手动更新,可以提高数据处理效率,避免由于不常用的数据源占用连接通道,导致常用的数据源无法与计算机设备建立连接的情况,从而提高数据获取的稳定性。并且,通过从缓存队列中删除调用数据源的时间不满足调用期限的数据源的标识,可以实现对缓存队列的更新,便于后续对目标数据源进行相应处理。
89.s203,获取目标数据源的标识,确定目标数据源的标识是否存在于调整后的缓存队列中。
90.s204,若目标数据源的标识存在于调整后的缓存队列中,则调用目标数据源中存储的数据。
91.s205,若目标数据源的标识不存在于调整后的缓存队列中,则获取调整后的缓存队列中数据源的标识的数量,根据调整后的缓存队列中数据源的标识的数量建立计算机设备与目标数据源之间的连接,并调用目标数据源中存储的数据。
92.本技术实施例中,步骤s203~步骤s205的具体实现方式可参考前述图1对应中的步骤s101~步骤s103的方法实现方式,此处不再赘述。
93.本技术实施例中,通过对与缓存队列中每个数据源的标识所标识的数据源之间的连接进行调整,并对缓存队列中的数据源的标识进行调整,实现对缓存队列中的数据源的标识进行更新,便于后续在获取到目标数据源的标识时,可以根据调整后的缓存队列确定目标数据源的标识是否存在于调整后的缓存队列中,从而对目标数据源进行相应处理。另
外,通过对缓存队列中的数据源的标识进行调整,即对与计算机设备连接的数据源的连接状态进行调整,实现对数据源的断开或者连接,避免由于连接过多数据源造成虚拟机内存被过多占用的问题,增加系统的可用性和灵活性。
94.上面介绍了本技术实施例的方法,下面介绍本技术实施例的装置。
95.参见图3,图3是本技术实施例提供的一种数据获取装置的组成结构示意图,上述数据获取装置可以是运行于计算机设备中的一个计算机程序(包括程序代码),例如该数据获取装置为一个应用软件;该装置可以用于执行本技术实施例提供的方法中的相应步骤。该装置30包括:
96.缓存确定模块31,用于获取目标数据源的标识,确定该目标数据源的标识是否存在于缓存队列中,该缓存队列用于存储至少一个历史连接的数据源的标识;
97.数据调用模块32,用于若该目标数据源的标识存在于该缓存队列中,则调用该目标数据源中存储的数据,该目标数据源的标识用于标识该目标数据源;
98.连接建立模块33,用于若该目标数据源的标识不存在于该缓存队列中,则获取该缓存队列中数据源的标识的数量,根据该缓存队列中数据源的标识的数量建立计算机设备与该目标数据源之间的连接,并调用该目标数据源中存储的数据。
99.可选的,该连接建立模块33,包括:
100.长度确定单元331,用于确定该缓存队列中数据源的标识的数量是否小于队列长度;
101.数据连接单元332,用于若该缓存队列中的数据源的标识的数量小于该队列长度,则建立计算机设备与该目标数据源之间的连接。
102.可选的,该数据获取装置30还包括:
103.数据检测模块34,用于若该缓存队列中数据源的标识的数量大于或等于该队列长度,则检测该缓存队列中数据源的标识所标识的数据源中是否存在空闲数据源;
104.第一断开模块35,用于若该缓存队列中数据源的标识所标识的数据源中存在空闲数据源,则断开计算机设备与该空闲数据源之间的连接,并建立计算机设备与该目标数据源之间的连接。
105.可选的,该数据获取装置30还包括:
106.数据调整模块36,用于从该缓存队列中删除该空闲数据源的标识,将该目标数据源的标识添加至该缓存队列中。
107.可选的,该数据获取装置30还包括:
108.等待连接模块37,用于若该缓存队列中数据源的标识所标识的数据源中不存在空闲数据源,则输出等待信息,该等待信息用于指示等待建立计算机设备与该目标数据源之间的连接;
109.第二断开模块38,用于在检测到该缓存队列中数据源的标识所标识的数据源中存在空闲数据源的情况下,断开计算机设备与该空闲数据源之间的连接,并建立计算机设备与该目标数据源之间的连接。
110.可选的,该数据获取装置30还包括:
111.信息获取模块39,用于获取在目标时间段内针对该缓存队列中每个数据源的标识所标识的数据源的调用信息;
112.该信息获取模块39,还用于基于该调用信息对与该缓存队列中每个数据源的标识所标识的数据源之间的连接进行调整,并对该缓存队列中的数据源的标识进行调整。
113.可选的,该调用信息包括调用次数和/或调用优先级;该信息获取模块39,具体用于:
114.获取该调用次数低于数量阈值的数据源,断开计算机设备与该调用次数低于该数量阈值的数据源之间的连接,并从该缓存队列中删除该调用次数低于该数量阈值的数据源的标识,和/或;
115.获取该调用优先级低于等级阈值的数据源,断开计算机设备与该调用优先级低于该等级阈值的数据源之间的连接,并从该缓存队列中删除该调用优先级低于该等级阈值的数据源的标识。
116.需要说明的是,图3对应的实施例中未提及的内容可参见方法实施例的描述,这里不再赘述。
117.本技术实施例中,获取目标数据源的标识,确定目标数据源的标识是否存在于缓存队列中;若目标数据源的标识存在于缓存队列中,则调用目标数据源中存储的数据;若目标数据源的标识不存在于缓存队列中,则获取缓存队列中数据源的标识的数量,根据缓存队列中数据源的标识的数量建立计算机设备与目标数据源之间的连接,并调用目标数据源中存储的数据。通过设置缓存队列,确定获取的数据源的标识是否存在于缓存队列中,从而确定该数据源与计算机设备之间是否存在连接,若该数据源与计算机设备之间存在连接,可以直接复用该连接,无需与该数据源重新建立连接,可以节省数据获取的时间,从而提高数据获取效率。
118.参见图4,图4是本技术实施例提供的一种计算机设备的组成结构示意图。如图4所示,上述计算机设备40可以包括:处理器401,网络接口404和存储器405,此外,上述计算机设备40还可以包括:用户接口403,和至少一个通信总线402。其中,通信总线402用于实现这些组件之间的连接通信。其中,用户接口403可以包括显示屏(display)、键盘(keyboard),可选用户接口403还可以包括标准的有线接口、无线接口。网络接口404可选的可以包括标准的有线接口、无线接口(如wi

fi接口)。存储器405可以是高速ram存储器,也可以是非易失性的存储器(non

volatile memory),例如至少一个磁盘存储器。存储器405可选的还可以是至少一个位于远离前述处理器401的存储装置。如图4所示,作为一种计算机可读存储介质的存储器405中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
119.在图4所示的计算机设备40中,网络接口404可提供网络通讯功能;而用户接口403主要用于为用户提供输入的接口;而处理器401可以用于调用存储器405中存储的设备控制应用程序,以实现:
120.获取目标数据源的标识,确定该目标数据源的标识是否存在于缓存队列中,该缓存队列用于存储至少一个历史连接的数据源的标识;
121.若该目标数据源的标识存在于该缓存队列中,则调用该目标数据源中存储的数据,该目标数据源的标识用于标识该目标数据源;
122.若该目标数据源的标识不存在于该缓存队列中,则获取该缓存队列中数据源的标识的数量,根据该缓存队列中数据源的标识的数量建立计算机设备与该目标数据源之间的
连接,并调用该目标数据源中存储的数据。
123.应当理解,本技术实施例中所描述的计算机设备40可执行前文图1、图2所对应实施例中对上述数据获取方法的描述,也可执行前文图3所对应实施例中对上述数据获取装置的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
124.本技术实施例中,获取目标数据源的标识,确定目标数据源的标识是否存在于缓存队列中;若目标数据源的标识存在于缓存队列中,则调用目标数据源中存储的数据;若目标数据源的标识不存在于缓存队列中,则获取缓存队列中数据源的标识的数量,根据缓存队列中数据源的标识的数量建立计算机设备与目标数据源之间的连接,并调用目标数据源中存储的数据。通过设置缓存队列,确定获取的数据源的标识是否存在于缓存队列中,从而确定该数据源与计算机设备之间是否存在连接,若该数据源与计算机设备之间存在连接,可以直接复用该连接,无需与该数据源重新建立连接,可以节省数据获取的时间,从而提高数据获取效率。
125.本技术实施例还提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包括程序指令,该程序指令当被计算机执行时使该计算机执行如前述实施例该的方法,该计算机可以为上述提到的计算机设备的一部分。例如为上述的处理器401。作为示例,程序指令可被部署在一个计算机设备上执行,或者被部署位于一个地点的多个计算机设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算机设备上执行,分布在多个地点且通过通信网络互连的多个计算机设备可以组成区块链网络。
126.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,该的存储介质可为磁碟、光盘、只读存储记忆体(read

only memory,rom)或随机存储记忆体(random access memory,ram)等。
127.以上所揭露的仅为本技术较佳实施例而已,当然不能以此来限定本技术之权利范围,因此依本技术权利要求所作的等同变化,仍属本技术所涵盖的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1