数据访问方法、装置、电子设备及计算机可读存储介质与流程

未命名 09-09 阅读:121 评论:0


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.图1为本发明所提供的一种数据访问方法的流程示意图;图2为本发明所提供的一种协议转换器的结构示意图;图3为本发明所提供的一种协议转换映的射机制示意图;图4为本发明所提供的另一种协议转换的映射机制示意图;图5为本发明所提供的一种数据访问装置的结构示意图;图6为本发明所提供的一种电子设备的结构示意图。
具体实施方式
35.本发明的核心是提供一种数据访问方法,该数据访问方法可以实现多协议兼容的一致性协议转换,以有效维护数据的一致性,实现数据的高效共享;本发明的另一核心是提供一种数据访问装置、电子设备以及计算机可读存储介质,同样具有上述有益效果。
36.为了对本发明实施例中的技术方案进行更加清楚、完整地描述,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行介绍。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
37.实施例一、本发明实施例提供了一种数据访问方法。
38.请参考图1,图1为本发明所提供的一种数据访问方法的流程示意图,该数据访问
方法应用于协议转换器,包括s101~s105。
39.s101:通过异构协议网络接口接收初始访问请求;首先,需要说明的是,本发明所提供的数据访问方法基于协议转换器实现,通过该协议转换器,可以将遵循不同通信协议的用户设备发起的访问请求(即上述初始访问请求)转换为统一通信协议的访问请求,并发送至目标服务端(即下述目标访问设备),实现各类用户设备对该目标服务端的数据访问。
40.进一步,本步骤旨在实现初始访问请求的接收,该初始访问请求即请求端(任一用户设备)发起的数据访问请求,由于不同的请求端可能使用不同的通信协议,因此,初始访问请求可以通过异构协议网络接口接收得到。其中,异构协议网络接口是指多种不同通信协议的网络接口,也就是说,使用不同通信协议的请求端可以通过各自相应的协议网络接口接入协议转换器,以实现初始访问请求的发送以及后续请求响应的接收。
41.s102:根据初始访问请求确定异构协议类型;本步骤旨在实现异构协议类型的确定,本质上是指确定当前接收到的初始访问请求所使用的通信协议。具体而言,在接收到初始访问请求之后,即可对其进行解析,获得其中的通信协议字段,从而确定该初始访问请求的异构协议类型。
42.s103:确定异构协议类型对应的目标解码器;本步骤旨在实现目标解码器的确定。具体而言,在协议转换器中,可以预先为各类异构协议类型创建各自对应的解码器,该解码器用于实现协议转换功能,也就是说,在协议转换器中,异构协议类型与解码器呈一一对应关系,可以使用不同的解码器对不同的异构协议类型进行协议转换,从而实现一致性协议转换功能。因此,在确定初始访问请求的异构协议类型之后,即可根据上述对应关系确定该异构协议类型对应的目标解码器,以便于利用该目标解码器实现对初始访问请求的协议转换。
43.s104:利用目标解码器将初始访问请求转换为基于预设协议的数据访问请求;本步骤旨在实现协议转换功能。在确定目标解码器之后,即可直接将初始访问请求发送至该目标解码器,以使该目标解码器将初始访问请求转换为基于预设协议的数据访问请求。需要说明的是,无论是何种异构协议类型,其对应的目标解码器均可以将其对应的初始访问请求转换为同一预设协议的数据访问请求,以实现协议转换器的一致性协议转换功能。以预设协议为高速总线协议为例,当异构协议类型为pci协议(peripheral component interconnect,局部并行总线协议)时,其对应的目标解码器可将其对应的初始访问请求转换为基于高速总线协议的数据访问请求;当异构协议类型为cxl协议(compute express link,高速缓存一致性互连协议)时,其对应的目标解码器同样可将其对应的初始访问请求转换为基于高速总线协议的数据访问请求。
44.s105:将数据访问请求发送至目标访问设备进行数据访问。
45.本步骤旨在实现最终的数据访问。具体而言,在完成协议转换之后,即可直接将数据访问请求发送至目标访问设备,以实现请求端对目标访问设备的数据访问。可以理解的是,由于前述已经基于协议转换器实现了一致性协议转换功能,因此,对于目标访问设备(被访问者)而言,其所接收到的数据访问请求均是基于相同通信协议(即上述预设协议)的数据访问请求,无需再进行额外的请求处理,直接进行请求响应即可。
46.可见,本发明实施例所提供的一种数据访问方法,提出了可实现多协议兼容的一
致性协议转换的协议转换器,其针对不同的异构协议类型预先设置有不同的解码器,由此,对于异构协议网络接口接收到的初始访问请求,可以直接根据其使用的异构协议类型调取对应的目标解码器对其进行协议转换,实现将基于不同数据通信协议的初始数据访问请求转换为基于同一预设协议的数据访问请求,进而实现数据访问,由此,基于该协议转换器实现了多协议兼容的一致性协议转换,可以有效维护数据的一致性,实现数据的高效共享,进而保证准确且高效的用户服务,提高用户体验。
47.在上述实施例的基础上:在本发明的一个实施例中,上述确定异构协议类型对应的目标解码器,可以包括:将初始访问请求保存至异构协议类型对应的目标接收存储器;利用协议映射器确定目标接收存储器与本地协议栈的映射关系;根据映射关系确定为目标接收存储器分配的目标解码器;相应地,上述利用目标解码器将初始访问请求转换为基于预设协议的数据访问请求,可以包括:利用目标解码器在目标接收存储器中读取初始访问请求;将初始访问请求转换为基于预设协议的数据访问请求。
48.本发明实施例提供了一种确定目标解码器的实现方法。具体而言,协议转换器中还设置有接收存储器和协议映射器,其中,接收存储器与异构协议类型一一对应,用于实现相应异构协议类型对应的初始数据请求的暂时存储,协议映射器用于实现各接收存储器与本地协议栈之间的关系映射,以便于实现目标解码器的确定。
49.在实现过程中,协议转换器在确定初始访问请求的异构协议类型之后,即可根据各异构协议类型与接收存储器之间的对应关系,确定初始访问请求对应的目标接收存储器,并将该初始访问请求暂时保存至该目标接收存储器,进一步,利用协议映射器确定该目标接收存储器与本地协议栈的映射关系,从而可以根据该映射关系查询到为目标接收存储器分配器的目标解码器,实现目标解码器的确定。相对应的,在利用目标解码器对初始访问请求进行协议转换时,则可以先从目标接收存储器中读取该初始访问请求,再执行协议转换操作。
50.在本发明的一个实施例中,目标接收存储器具体为虚拟可变容量接收存储器,该数据访问方法还可以包括:对虚拟可变容量接收存储器的实际占用容量进行实时监控;根据实际占用容量和当前总容量对虚拟可变容量接收存储器进行扩容或缩容。
51.本发明实施例所提供的数据访问方法还可以进一步实现接收存储器的容量动态调整功能,以尽可能为更多的用户设备提供协议转换服务。具体而言,目标接收存储器具体可以为虚拟可变容量接收存储器,协议转换器在实现工作过程中,还可以对该虚拟可变容量接收存储器的实际占用容量(已存储数据所占用的容量)进行实时监控,并结合当前总容量(虚拟可变容量接收存储器的最大可存储数据容量)对该虚拟可变容量接收存储器进行扩容或缩容处理。其中,扩容处理即扩大虚拟可变容量接收存储器的当前总容量,缩容处理即缩小虚拟可变容量接收存储器的当前总容量。
52.在本发明的一个实施例中,上述根据实际占用容量和当前总容量对虚拟可变容量接收存储器进行扩容或缩容,可以包括:根据实际占用容量和当前总容量计算容量占比;当容量占比超出第一预设阈值时,对虚拟可变容量接收存储器进行扩容处理;当容量占比低于第二预设阈值时,对虚拟可变容量接收存储器进行缩容处理。
53.本发明实施例提供了一种根据虚拟可变容量接收存储器的实际占用容量和当前总容量对其进行扩缩容处理的实现方法。具体而言,可以先计算实际占用容量和当前总容量计算得到容量占比,即实际占用容量和当前总容量之间的商值,当容量占比超出第一预设阈值时,说明虚拟可变容量接收存储器的空闲空间较少,可以对其进行扩容处理;当容量占比低于第二预设阈值时,说明虚拟可变容量接收存储器的空闲空间较多,可以对其进行缩容处理。显而易见的,第一预设阈值的取值大于第二预设阈值,当然,其具体取值并不影响本技术方案的实施,由技术人员根据实际情况进行设定即可,例如,第一预设阈值取值为75%,第二预设阈值取值为25%。
54.在本发明的一个实施例中,上述对虚拟可变容量接收存储器进行扩容处理,可以包括:按照第一预设比例对虚拟可变容量接收存储器进行内存地址追加,实现扩容处理;相应地,上述对虚拟可变容量接收存储器进行缩容处理,可以包括:按照第二预设比例对虚拟可变容量接收存储器进行内存地址回收,实现缩容处理。
55.本发明实施例提供了一种扩缩容的具体实现方式,即可以采用内存地址追加和内存地址回收的方式实现对虚拟可变容量接收存储器的扩缩容处理,并且,内存地址的追加与回收可以基于相应的预设比例实现,即按照第一预设比例对虚拟可变容量接收存储器进行内存地址追加实现扩容处理,按照第二预设比例对虚拟可变容量接收存储器进行内存地址回收实现缩容处理。同样的,第一预设比例和第二预设比例的具体取值并不唯一,本发明实施例对此不做限定,例如,在进行扩容处理时,可以扩充为当前总容量的1.5倍,在进行缩容处理时,可以缩小为当前总容量的0.75倍。
56.在本发明的一个实施例中,该数据访问方法还可以包括:根据异构协议网络接口确定各异构协议类型;为各异构协议类型分配接收存储器,并根据异构协议类型为相应的接收存储器设置协议标志位;根据各协议标志位建立各接收存储器与本地协议栈的映射关系。
57.本发明实施例所提供的数据访问方法旨在实现协议转换器内各单元的预配置,包括异构协议类型与接收存储器之间的对应关系、接收存储器与协议映射器中本地协议栈的映射关系。可以理解的是,不同的异构协议接口用于实现对应异构协议类型的初始访问请求的获取,因此,可以根据各异构协议网络接口确定各自对应的异构协议类型,然后为各异构协议类型分配接收存储器,具体可以为直接根据异构协议类型为相应的接收存储器设置协议标志位,从而实现异构协议类型与接收存储器之间的对应;进一步,在协议映射器中,维护有一份本地协议栈,用于记录各异构协议类型与预设协议之间的协议转换方式,由此,即可根据各协议标志位建立各接收存储器与本地协议栈的映射关系。至此,完成对协议转换器内各单元的预配置。
58.在本发明的一个实施例中,上述利用目标解码器在目标接收存储器中读取初始访问请求之后,还可以包括:将目标接收存储器中初始访问请求的内存空间清空。
59.如上所述,接收存储器用于实现相应异构协议类型对应的初始数据请求的暂时存储,在确定目标解码器之后,将会利用该目标存储器在相应的目标接收存储器中读取初始数据请求进行协议转换处理,此时,为避免不必要的存储资源占用,可以在完成初始访问请求的读取之后,将该初始访问请求在目标接收存储器中所在的内存空间清空,以便为后续新的初始访问请求提供存储空间。
60.在本发明的一个实施例中,上述将数据访问请求发送至目标访问设备进行数据访问,可以包括:将数据访问请求保存至预设发送缓存;利用并行发送单元在预设发送缓存中读取获得数据访问请求;利用并行发送单元将数据访问请求发送至目标访问设备进行数据访问。
61.本发明实施例提供了一种将数据访问请求发送至目标访问设备的实现方法。具体而言,协议转换器中还预先设置有发送缓存和并行发送单元,在完成协议转换获得数据访问请求之后,即可先将其暂存在预设发送缓存中,然后利用并行发送单元将预设发送缓存中的数据访问请求发送至目标访问设备进行数据访问。显然,基于并行发送单元可以实现对批量数据访问请求同时进行读取与发送,有助于提高数据访问效率。
62.在本发明的一个实施例中,上述利用目标解码器将初始访问请求转换为基于预设协议的数据访问请求,可以包括:利用目标解码器对初始访问请求进行解析,获得有效数据;将有效数据填充至预设协议数据帧,获得基于预设协议的数据访问请求。
63.本发明实施例提供了一种具体的协议转换方法。如上所述,协议转换操作基于协议转换器中的目标解码器实现,在该目标解码器中,预存有预设协议对应的预设协议数据帧,在其获得初始访问请求之后,即可对该数据访问请求进行解析处理,得到其中的有效数据,包括但不限于有效载荷长度、源地址、目的地址、数据主体等,然后将该有效数据依次填充至预设协议数据帧的相应位置,即可得到基于预设协议的数据访问请求。
64.在本发明的一个实施例中,上述将有效数据填充至预设协议数据帧,获得基于预设协议的数据访问请求之前,还可以包括:当有效数据中存在预设标志数据时,根据预设标志数据判断初始访问请求是否命中预设缓存;若是,则将预设缓存中的命中数据反馈至请求终端;若否,则执行将有效数据填充至预设协议数据帧,获得基于预设协议的数据访问请求的步骤。
65.为有效保证数据访问效率,本发明实施例提供了一种基于缓存预匹配的数据访问方法。具体而言,可以预先创建预设缓存,用于存储用户设备可能会访问或者高频访问或者某些特定类型的数据信息,以便于在初始访问请求命中该预设缓存时,可以直接将在预设缓存中命中的数据信息作为访问结果进行请求反馈,避免再向目标访问设备进行数据请求,有效地提高了数据访问效率。
66.例如,在本发明实施例中,设定当解析得到的有效数据中存在预设标志数据时,可对其对应的初始访问请求进行缓存预匹配,当不存在预设标志数据时,则不执行缓存预匹配操作,而是直接进行下一步的有效数据填充处理。那么,在缓存预匹配过程中,则可以根据预设标志数据判断初始访问请求是否命中预设缓存,若存在,则说明初始访问请求命中预设缓存,此时,将相应命中的数据信息(即上述命中数据)反馈至请求终端即可;反之,当初始访问请求未命中预设缓存时,则需要继续执行后续的数据填充操作。
67.在本发明的一个实施例中,预设标志数据可以包括访问数据标志,上述根据预设标志数据判断初始访问请求是否命中预设缓存,可以包括:判断访问数据标志是否命中预设缓存;若是,则确定初始访问请求命中预设缓存;若否,则确定初始访问请求未命中预设缓存。
68.本发明实施例提供了一种根据预设标志数据判断初始访问请求是否命中预设缓存的实现方法。具体而言,预设标志数据可以包括访问数据标志,该访问数据标志即需要进
行访问的数据信息的标志信息,用于识别相同类型(如异构协议类型)的初始访问请求,相对应的,在预设缓存中,各访问数据标志与数据信息对应存储,由此,即可通过判断初始访问请求中的访问数据标志是否命中预设缓存来确定初始访问请求是否命中预设缓存,显然,当预设缓存中存在相同的数据访问标志时,可以确定初始访问请求命中预设缓存,当预设缓存中不存在相同的数据访问标志时,可以确定初始访问请求未命中预设缓存。
69.在本发明的一个实施例中,上述将预设缓存中的命中数据反馈至请求终端,可以包括:判断命中数据是否满足初始访问请求;若是,则将命中数据反馈至请求终端。
70.为保证数据访问结果的准确性,在确定初始访问请求命中预设缓存之后,将命中数据反馈至请求终端之前,可以先判断命中数据是否满足初始访问请求,只有在命中数据满足初始访问请求时才会将该命中数据反馈至请求终端,当命中数据不满足初始访问请求时则无需进行命中的反馈,继续执行数据填充操作即可。例如,当命中数据仅为初始访问请求对应的实际需要访问数据的一部分时,说明命中数据不满足初始访问请求,反之,当命中数据完全覆盖初始访问请求对应的实际需要访问数据时,说明命中数据满足初始访问请求。
71.在本发明的一个实施例中,预设标志数据可以包括访问数据起始地址和访问数据长度,上述判断命中数据是否满足初始访问请求,可以包括:判断命中数据的起始地址是否满足访问数据起始地址,且命中数据的数据长度是否满足访问数据长度;若是,则确定命中数据满足初始访问请求;若否,则确定命中数据不满足初始访问请求。
72.本发明实施例提供了一种判断命中数据是否满足初始访问请求的实现方法。具体而言,预设标志数据还可以包括访问数据起始地址和访问数据长度,由此,即可利用该访问数据起始地址和访问数据长度判断命中数据是否满足初始访问请求,显然,当命中数据的起始地址满足访问数据起始地址,同时命中数据的数据长度满足访问数据长度时,才可确定命中数据满足初始访问请求,因为此时命中数据必然全覆盖初始访问请求实际需要访问的数据信息,否则可以直接确定命中数据不满足初始访问请求。
73.在本发明的一个实施例中,当命中数据不满足初始访问请求时,该数据访问方法还可以包括:统计命中数据的连续命中次数;当连续命中次数达到第一预设次数时,将命中数据在预设缓存中删除。
74.可以理解的是,当初始访问请求连续命中预设缓存,但实际的命中数据却连续不满足初始访问请求时,说明该命中数据为低频访问数据,或者该命中数据是错误的数据预估结果,此时,为避免不必要的存储资源占用,可以直接将命中数据在预设缓存中删除。具体而言,在确定命中数据不满足初始访问请求时,可以统计该命中数据的连续命中次数,当该命中次数达到第一预设次数时,即可执行命中数据删除操作。其中,第一预设次数的具体取值并不影响本技术方案的实施,由技术人员根据实际情况进行设定即可,本发明对此不做限定。
75.在本发明的一个实施例中,当初始访问请求未命中预设缓存时,上述将有效数据填充至预设协议数据帧,获得基于预设协议的数据访问请求,可以包括:利用预设标志数据创建数据预测模型;利用数据预测模型进行数据预测,获得预测标志数据;将有效数据和预测标志数据填充至预设协议数据帧,获得基于预设协议的数据访问请求;相应地,上述将数据访问请求发送至目标访问设备进行数据访问之后,还可以包
括:接收目标访问设备反馈的请求响应数据;根据请求响应数据确定预测访问数据;将预测访问数据和预测标志数据对应保存至预设缓存。
76.可以理解的是,在实际应用中,异构协议设备常常需要从远端设备读取一长段数据,例如视频数据。如若采用传统的数据读取过程,异构协议网络通过向目的地址发送读数据请求,远端设备向请求设备反馈数据,显然,该请求-发送的数据传输过程存在高速总线利用率低、数据传输慢的问题。为解决上述技术缺陷,本发明应用人工智能算法实现了数据的智能预取,从而大大提高数据的传输效率。
77.具体而言,当初始数据访问请求未命中预设缓存时,可以利用初始访问请求中的预设标志数据创建数据预测模型,用于实现数据预测,也就是预测后续相同类型的初始访问请求可能会访问的数据信息,即上述预测访问数据,由此,在获得预测访问数据之后,即可将其添加至预设缓存中,以有效提高初始数据请求的命中率,进而提高数据访问效率。
78.由此可见,在本实施例中,通过创建数据预测模型实现数据预测功能,也就是对发起初始访问请求的用户设备后续可能会继续访问的数据进行预测,并提前获取到该数据(预测访问数据)暂存至预设缓存中,那么,当后续再次接收到该用户设备发起的同类型的初始访问请求时,该初始访问请求将会直接命中预设缓存,并直接从该预设缓存中得到对应于该初始访问请求的目标访问结果进行反馈,而无需再向目标访问设备获取目标访问结果,有效地提高了数据访问效率。
79.在本发明的一个实施例中,上述利用预设标志数据创建数据预测模型之前,还可以包括:统计初始访问请求的未命中次数;判断未命中次数是否达到第二预设次数;若是,则执行利用预设标志数据创建数据预测模型的步骤。
80.具体的,在创建数据预测模型之前,还可以先统计初始访问请求的未命中预设缓存的次数,当确定同一类型的初始访问请求的未命中次数达到第二预设次数时,可以确定该类型的初始数据请求可能需要访问请求大量的数据信息,此时,即可创建数据预测模型并启动数据预取机制。此外,由于数据预测模型需要使用较多的样本数据进行训练,因此,后续可以直接使用连续多次未命中的同类型的初始访问请求的预设标志数据作为训练样本,实现数据预测模型的训练。
81.在本发明的一个实施例中,上述利用预设标志数据创建数据预测模型,可以包括:获取未命中预设缓存的各初始访问请求的预设标志数据;按照各初始访问请求的接收顺序对各预设标志数据进行排序,获得预设标志数据序列;根据预设标志数据序列生成各模型训练样本,各模型训练样本包括两个预设标志数据,且两个预设标志数据对应的接收顺序相邻;利用所有模型训练样本进行模型训练,获得数据预测模型。
82.本发明实施例提供了一种利用预设标志数据创建数据预测模型的实现方法。如上所述,由于数据预测模型需要使用较多的样本数据进行训练,因此,后续可以直接使用连续多次未命中的同类型的初始访问请求的预设标志数据作为训练样本,实现数据预测模型的训练。有基于此,可以直接获取未命中预设缓存的各初始访问请求的预设标志数据,为保证数据预测结果的准确性,可以对各预设标志数据按照初始访问请求的接收顺序进行排序,得到一个预设标志数据序列,进一步,则可以基于该预设标志数据序列实现模型训练样本的生成,该模型训练样本可以包括两个预设标志数据,且两个预设标志数据对应的接收顺序相邻,例如,接收到的第一个初始访问请求的预设标志数据和接收到的第二个初始访问
请求的预设标志数据组合为一个模型训练样本,接收到的第二个初始访问请求的预设标志数据和接收到的第三个初始访问请求的预设标志数据组合为一个模型训练样本,以此类推,获得多个模型训练样本,由此,即可利用所有的模型训练样本实现数据预测模型的训练。
83.在本发明的一个实施例中,上述按照各初始访问请求的接收顺序对各预设标志数据进行排序,获得预设标志数据序列,可以包括:按照各初始访问请求的接收顺序将各预设标志数据保存至先入先出存储器,获得预设标志数据序列。
84.本发明实施例提供了一种对各预设标志数据进行排序的实现方法,即可以基于先入先出存储器实现,也就是按照各初始访问请求的接收顺序将各预设标志数据保存至先入先出存储器。可以理解的是,由于是将各个预设标志数据按照相应的初始访问请求的接收顺序保存至先入先出存储器中的,又基于先入先出存储器的先入先出原则,那么,在从先入先出存储器获取预设标志数据进行数据预测模型的训练时,可以有效保证用于进行数据预测模型训练的预设标志数据是按照其接收顺序进行读取的,而预设标志数据的接收顺序即初始访问请求的接收顺序,初始访问请求的接收顺序即用户设备的数据读取顺序,因此,基于排序后的预设标志数据序列进行数据预测模型训练,可以有效保证数据预测模型的模型精度,进而有助于实现更为精准的数据预测。
85.在本发明的一个实施例中,上述根据预设标志数据序列生成各模型训练样本之前,还可以包括:判断先入先出存储器中预设标志数据的数量是否达到预设数量;若否,则返回获取未命中预设缓存的各初始访问请求的预设标志数据的步骤;若是,则执行根据预设标志数据序列生成各模型训练样本的步骤。
86.可以理解的是,由于数据预测模型需要使用较多的样本数据进行训练,因此,在根据预设标志数据序列生成各模型训练样本之前,可以先统计先入先出存储器中预设标志数据的数量是否达到预设数量,若否,则说明当时可生成的模型训练样本较少,不利于进行数据预测模型训练,因此,可以返回取未命中预设缓存的各初始访问请求的预设标志数据的步骤继续获取更多的预设标志数据,直至先入先出存储器中预设标志数据的数量达到预设数量,此时,先入先出存储器可生成的模型训练样本可以达到足够的数量,然后再进行模型训练样本的生成即可。可以理解的是,通过预设数量判定可以有效保证模型训练样本的数量,进而可以保证有足够数量的模型训练样本用于进行数据预测模型的训练,显然,模型训练样本的数量越多,越有助于训练获得精度更高的数据预测模型,进一步提高数据预测结果的准确性。
87.在本发明的一个实施例中,上述利用数据预测模型进行数据预测,获得预测标志数据,可以包括:利用数据预测模型对预设标志数据进行处理,获得初始预测标志数据;判断当前预测次数是否达到第三预设次数;若否,则将初始预测标志数据作为预设标志数据,返回利用数据预测模型对预设标志数据进行处理,获得初始预测标志数据的步骤;若是,则根据所有初始预测标志数据生成预测标志数据。
88.为进一步提高数据访问效率,可以利用数据预测模型基于上一次的预测结果继续进行下一轮预测,直至达到预先设定的预测次数,即上述第三预设次数,然后基于每一次的预测结果生成最终的预测标志数据。具体而言,在每一次利用数据预测模型对预设标志数据进行处理,获得初始预测标志数据之后,即可统计当前预测次数是否达到第三预设次数,
若否,则继续利用当前预测得到的初始预测标志数据继续进行下一轮预测,直至当前预测次数达到第三预设次数,由此,所有的初始预测标志数据即可生成最终的预测标志数据。由此可见,基于本方法,实现了大量的数据预测,增加了预设缓存的缓存数据量,有助于进一步提高数据访问效率。
89.在本发明的一个实施例中,预测标志数据可以包括预测数据起始地址和预测数据长度,上述根据所有初始预测标志数据生成预测标志数据,可以包括:在所有初始预测标志数据中确定初始预测地址最小值和初始预测地址最大值;将初始预测地址最小值与第一预设参数之间的第一差值作为预测数据起始地址;计算初始预测地址最大值和初始预测地址最小值之间的第二差值,并将第二差值与第二预设参数的加和作为预测数据长度。
90.本发明实施例提供了一种根据所有初始预测标志数据生成预测标志数据的实现方法。具体而言,预测标志数据可以包括预测数据起始地址和预测数据长度,由此,可以获取每一次的预测结果,计算所有预测结果中的数据起始地址最小值、数据起始地址最大值和请求数据长度,那么,数据预取起始地址为:预测结果中的数据起始地址最小值-第一预设参数;数据预取请求数据长度为:数据起始地址最大值-数据起始地址最小值+第二预设参数。
91.需要说明的是,上述第一预设参数和第二预测参数的设定旨在有效保证数据预测结果可以尽可能的全覆盖用户设备实际要访问的数据,对于数据预测模型实际输出的预测结果,可以通过第一预设参数将预测结果向数据起始地址最小值之前多读取一定的预测数据,通过第二预设参数将预测结果向数据起始地址最大值之后多读取一定的预测数据,由此,即可实现预测数据的前后地址扩展,从而可以获得更多的预测访问数据并保存至预设缓存,此时,将会进一步提高后续新的初始数据请求在预设缓存的命中率,进而提高数据访问效率。
92.在本发明的一个实施例中,该数据访问方法还可以包括:接收目标访问设备反馈的目标访问数据;将目标访问数据转换为基于异构协议的访问结果;通过异构协议网络接口将访问结果发送至请求终端。
93.本发明实施例旨在实现访问结果的反馈。具体而言,由于上述在数据访问过程中对初始访问请求进行了协议转换,目标访问设备接收到的数据访问请求为基于预设协议的数据访问请求,因此,其反馈的目标访问数据(即数据访问请求的请求响应结果)必然也是基于预设协议的,此时,为实现访问结果的反馈,同样可以对该目标访问数据进行协议转换(本质上为上述数据访问过程中协议转换的逆操作),得到基于异构协议的访问结果,最后通过异构协议网络接口将其发送至请求终端。需要说明的是,请求响应的反馈与数据请求的发送为相互对应的反向操作,因此,请求响应的反馈流程具体参照上述各实施例即可,本发明在此不再赘述。
94.实施例二、本发明实施例提供了另一种数据访问方法。
95.首先,请参考图2,图2为本发明所提供的一种协议转换器的结构示意图,该协议转换器由通用计算单元、虚拟可变容量接收存储器、虚拟可变容量发送存储器、协议映射器、并行发送单元、并行接收单元组成,其中,协议映射器则是由本地协议栈、分布式解码器、分布式编码器、数据预取神经网络计算单元、预取缓存、发送高速缓存、接收高速缓存组成,并且,该协议转换器通过多个异构总线连接各个异构协议网络接口,以实现请求终端数据访
问请求的获取,通过并行发送单元和并行接收单元外接高速总线,以实现与目标访问设备的数据通信。
96.进一步,基于上述协议转换器,基于异构协议的请求终端对目标访问设备的数据访问过程如下:(1)当各个异构协议网络接入到协议转换器之后,将会有数据包(初始访问请求)发送至该协议转换器,此时,通用计算单元负责该异构协议网络的协议识别与解析工作,通过对数据包进行遍历,依次判断数据包的帧头等信息,从而判断异构协议类型。
97.(2)确定异构协议类型之后,通用计算单元将会为每个异构协议网络配置两个虚拟可变容量存储器,即虚拟可变容量接收存储器和虚拟可变容量发送存储器,分别进行数据包的收发缓存。其中,在初始化状态,虚拟可变容量存储器的容量设置为固定值,通用计算单元会继续监控异构协议网络的收发状态,并对其容量进行动态调整。
98.(3)确定异构协议类型之后,通用计算单元为每个异构协议分配专用数据处理单元(数据处理ip核),负责异相应构协议网络的数据包的接收、发送和存储等处理。
99.(4)专用数据接收单元接收各自分配的异构协议网络中的数据包,并将其存储到与异构协议网络对应的虚拟可变容量接收存储器中。
100.(5)虚拟可变容量存储器成对出现,包含虚拟可变容量接收存储器和虚拟可变容量发送存储器,虚拟可变容量存储器具有协议标志位,初始状态为空值,通用计算单元通过异构协议类型设置虚拟可变容量存储器的标志位(协议标志位)。
101.(6)协议映射器通过虚拟可变容量存储器的标志位与本地协议栈建立直连映射,以便于实现虚拟可变容量存储器的数据包解码与协议转换。
102.(7)当协议映射器与虚拟可变容量存储器建立映射连接后,协议映射器调用分布式解码器以并行的形式,即每个得到映射的虚拟可变容量存储器通过分配的分布式解码器进行相应数据包的直接解码。分布式解码器可以读取虚拟可变容量存储器中的数据包,并在读取后数据包后将相应虚拟可变容量存储器的内存空间清空,然后解码数据包中的异构协议数据进行正确性校验,得到有效数据。
103.(8)分布式解码器同时负责协议转换,其可以通过上一步解码得到的数据包中的有效数据,如源地址、目的地址、数据主体等关键数据,将其重新打包成为预先定义的高速总线数据包,并存入高速缓存中。其中,分布式解码器可以通过协议映射器的映射机制实现协议转换,请参考图3,图3为本发明所提供的一种协议转换映的射机制示意图,具体的,分布式解码器可以通过上一步解码得到的数据包中的有效数据,通过预制的协议映射机制,将该有效数据写入高速总线数据帧中,实现不同协议之间的转换。
104.(9)并行发送单元读取发送高速缓存中的高速总线数据帧,并通过高速总线发送至远端设备(目标访问设备)。
105.(10)并行接收单元通过高速总线接收远端设备反馈到本地的高速总线数据帧(这里是指目标访问数据),并将其存入接收高速缓存中。这里指出的是,协议映射器为每个直连映射的异构协议网络均建立有独立的发送高速缓存和接收高速缓存。
106.(11)协议映射器为每个直连映射的异构协议网络建立分布式编码器,实现从对应的接收高速缓存读取高速总线数据帧,并转换为相应的异构网络数据帧,存入相应的虚拟可变容量发送存储器中。其中,转换方法如下:分布式编码器读取接收高速缓存中的高速总
线数据帧,通过预制的协议映射机制解码高速总线数据帧的有效数据,将高速总线数据帧中的有效数据写入异构网络数据帧中,实现不同协议之间的转换。
107.(12)分布式编码器将转换后的异构网络数据帧(实际的访问结果)写入虚拟可变容量发送存储器,并在异构网络总线允许发送或总线空闲时,由专用数据处理单元读取虚拟可变容量发送存储器中的异构网络数据帧进行发送操作。
108.至此,基于上述操作流程,实现了异构协议设备对远端设备的数据访问。
109.可以理解的是,在实际应用中,异构协议设备常常需要从远端设备读取一长段数据,例如视频数据。如若采用传统的数据读取过程,异构协议网络通过向目的地址发送读数据请求,远端设备向请求设备反馈数据,显然,该请求-发送的数据传输过程存在高速总线利用率低、数据传输慢的问题。为解决上述技术缺陷,本发明应用人工智能芯片及算法实现了数据的智能预取,从而大大提高数据的传输效率。本发明的数据预取机制如下:(1)分布式解码器解析异构协议网络发送的数据包,本发明在高速总线数据帧中定义了3个重要标志位:请求读数据标志(访问数据标志)、读数据起始地址(访问数据起始地址)、请求数据长度(访问数据长度)。分布式解码器可以根据协议映射器预置的异构总线转换协议解析异构网络数据包中的请求读数据标志、读数据起始地址、请求数据长度。需要说明的是,协议映射器中的预置协议中预先定义了异构协议网络中的数据帧结构,若预置协议中包含了这3个重要标志位,则该异构网络可以实现数据预取功能;若预置协议中不包含这3个重要标志位,则该异构网络为一般性网络,不实现数据预取功能,如图4所示,图4为本发明所提供的另一种协议转换的映射机制示意图。
110.(2)分布式解码器解析异构协议网络发送的数据包,当解析到请求读数据标志、读数据起始地址、请求数据长度时,分布式解码器对该类请求数据包进行计数。
111.(3)当请求数据包计数在预设时间内的计数值超过设定阈值时,说明请求数据包过多,可启动数据预取机制。
112.(4)数据预取机制启动后,分布式解码器解析异构协议网络发送的数据包,并将读数据标志、读数据起始地址、请求数据长度存入分布式解码器自身的先入先出存储器中。
113.(5)当分布式解码器自身的先入先出存储器中的存储容量超过预设阈值时,即可启动数据预取神经网络计算。
114.(6)依次读取一个批次的先入先出存储器数据,例如16组(请求读数据标志、读数据起始地址、请求数据长度)数据。
115.(7)首先建立数据预取神经网络计算输入,依次获取先入先出存储器中紧邻的2组数据,然后输入读数据起始地址和本次的请求数据长度到神经网络芯片中,来预测下一次的读数据起始地址和请求数据长度。依次遍历先入先出存储器中的紧邻2组输入数据,送入神经网络芯片进行训练,判断网络收敛状态。其中,收敛状态的判断方法是,若预测的下一次读数据起始地址的准确率超过预设阈值,则网络收敛,网络预测结构准确可信。
116.(8)分布式解码器解析异构协议网络发送的数据包,当解析到请求读数据标志、读数据起始地址、请求数据长度时,将解析结果写入高速总线数据帧的同时,将该解析结果送入数据预取神经网络的输入中,预测下一次的数据起始地址与请求数据长度。并且,预测得到的数据起始地址与请求数据长度还可以进行继续预测,例如,可以设置连续预测k次。
117.(9)分布式解码器获取k次的预测结果,计算这k次的预测结果中的数据起始地址
最小值、数据起始地址最大值和请求数据长度。由此,计算数据预取地址,数据预取起始地址为:预测结果中的数据起始地址最小值-m(第一预设参数);数据预取请求数据长度为:数据起始地址最大值-数据起始地址最小值+n(第二预设参数),以有效保障预测结果可全覆盖实际访问数据。
118.(10)分布式解码器将数据预取标志位、数据预取起始地址、数据预取请求数据长度、请求读数据标志写入高速总线帧,预先获取预取数据。
119.(11)分布式编码器从接收高速缓存读取数据,当解析得到的是预取数据,则将预取数据存入预取缓存中,等待查询。
120.(12)当预取缓存非空时,分布式解码器解析异构协议网络发送的数据包,当解析到请求读数据标志、读数据起始地址、请求数据长度时,会首先从预取缓存查询数据,若查询到对应的读数据起始地址及足够的数据长度,则通知分布式编码器打包缓存数据到虚拟可变容量发送存储器。
121.(13)分布式编码器监测预取缓存中数据的查询次数,当预取缓存中的数据包连续多次不被命中,无法被分布式解码器查中,则可以删除该数据。
122.最后,通用计算单元还可以监控协议转换器中所有虚拟可变容量存储器的容量变化,监控过程包括:通过虚拟可变容量存储器的协议标志位,为不同速率的异构协议网络分配不同大小的虚拟可变容量存储器的初始缓存容量,例如,串口网络的虚拟可变容量存储器的初始缓存容量为10m;pci网络的虚拟可变容量存储器的初始缓存容量为1000m。
123.进一步,通用计算单元监控协议转换器中所有虚拟可变容量存储器的容量变化,当虚拟可变容量存储器的数据占用容量长期保持其存储总容量的设定阈值(如75%)以上,通用计算单元可以通过追加内存地址的方式,为虚拟可变容量存储器扩容,每次追加内存地址容量为原容量的1.5倍。同理,当虚拟可变容量存储器的数据占用容量长期保持其存储总容量的设定阈值(如25%)以下,通用计算单元扩通过回收内存地址的方式,为虚拟可变容量存储器缩容,每次缩小的内存地址容量为原容量的0.75倍。其中,还可以长期定义为一段时间,如60秒循环监控。
124.可见,本发明实施例所提供的一种数据访问方法,提出了可实现多协议兼容的一致性协议转换的协议转换器,其针对不同的异构协议类型预先设置有不同的解码器,由此,对于异构协议网络接口接收到的初始访问请求,可以直接根据其使用的异构协议类型调取对应的目标解码器对其进行协议转换,实现将基于不同数据通信协议的初始数据访问请求转换为基于同一预设协议的数据访问请求,进而实现数据访问,由此,基于该协议转换器实现了多协议兼容的一致性协议转换,可以有效维护数据的一致性,实现数据的高效共享,进而保证准确且高效的用户服务,提高用户体验。
125.实施例三、本发明实施例提供了一种数据访问装置。
126.请参考图5,图5为本发明所提供的一种数据访问装置的结构示意图,该数据访问装置应用于协议转换器,包括:接收模块1,用于通过异构协议网络接口接收初始访问请求;第一确定模块2,用于根据初始访问请求确定异构协议类型;第二确定模块3,用于确定异构协议类型对应的目标解码器;转换模块4,用于利用目标解码器将初始访问请求转换为基于预设协议的数据访
问请求;发送模块5,用于将数据访问请求发送至目标访问设备进行数据访问。
127.可见,本发明实施例所提供的一种数据访问装置,提出了可实现多协议兼容的一致性协议转换的协议转换器,其针对不同的异构协议类型预先设置有不同的解码器,由此,对于异构协议网络接口接收到的初始访问请求,可以直接根据其使用的异构协议类型调取对应的目标解码器对其进行协议转换,实现将基于不同数据通信协议的初始数据访问请求转换为基于同一预设协议的数据访问请求,进而实现数据访问,由此,基于该协议转换器实现了多协议兼容的一致性协议转换,可以有效维护数据的一致性,实现数据的高效共享,进而保证准确且高效的用户服务,提高用户体验。
128.在本发明的一个实施例中,上述第二确定模块3可包括:第一保存单元,用于将初始访问请求保存至异构协议类型对应的目标接收存储器;第一确定单元,用于利用协议映射器确定目标接收存储器与本地协议栈的映射关系;第二确定单元,用于根据映射关系确定为目标接收存储器分配的目标解码器;相应地,上述转换模块4可包括:第一读取单元,用于利用目标解码器在目标接收存储器中读取初始访问请求;转换单元,用于将初始访问请求转换为基于预设协议的数据访问请求。
129.在本发明的一个实施例中,目标接收存储器具体可以为虚拟可变容量接收存储器,该数据访问装置还可以包括:监控模块,用于对虚拟可变容量接收存储器的实际占用容量进行实时监控;控制模块,用于根据实际占用容量和当前总容量对虚拟可变容量接收存储器进行扩容或缩容。
130.在本发明的一个实施例中,上述控制模块可包括:计算单元,用于根据实际占用容量和当前总容量计算容量占比;扩容单元,用于当容量占比超出第一预设阈值时,对虚拟可变容量接收存储器进行扩容处理;缩容单元,用于当容量占比低于第二预设阈值时,对虚拟可变容量接收存储器进行缩容处理。
131.在本发明的一个实施例中,上述扩容单元可具体用于按照第一预设比例对虚拟可变容量接收存储器进行内存地址追加,实现扩容处理;相应地,上述缩容单元可具体用于按照第二预设比例对虚拟可变容量接收存储器进行内存地址回收,实现缩容处理。
132.在本发明的一个实施例中,该数据访问装置还可以包括:预配置模块,用于根据异构协议网络接口确定各异构协议类型;为各异构协议类型分配接收存储器,并根据异构协议类型为相应的接收存储器设置协议标志位;根据各协议标志位建立各接收存储器与本地协议栈的映射关系。
133.在本发明的一个实施例中,上述转换模块4还可以包括清空单元,用于在上述利用目标解码器在目标接收存储器中读取初始访问请求之后,将目标接收存储器中初始访问请
求的内存空间清空。
134.在本发明的一个实施例中,上述发送模块5可包括:第二保存单元,用于将数据访问请求保存至预设发送缓存;第二读取单元,用于利用并行发送单元在预设发送缓存中读取获得数据访问请求;发送单元,用于利用并行发送单元将数据访问请求发送至目标访问设备进行数据访问。
135.在本发明的一个实施例中,上述转换模块4可包括:解析单元,用于利用目标解码器对初始访问请求进行解析,获得有效数据;填充单元,用于将有效数据填充至预设协议数据帧,获得基于预设协议的数据访问请求。
136.在本发明的一个实施例中,上述转换模块4还可以包括:第一判断单元,用于在上述将有效数据填充至预设协议数据帧,获得基于预设协议的数据访问请求之前,当有效数据中存在预设标志数据时,根据预设标志数据判断初始访问请求是否命中预设缓存;第一反馈单元,用于若初始访问请求命中预设缓存,则将预设缓存中的命中数据反馈至请求终端;第一执行单元,用于若初始访问请求未命中预设缓存,则执行将有效数据填充至预设协议数据帧,获得基于预设协议的数据访问请求的步骤。
137.在本发明的一个实施例中,预设标志数据可以包括访问数据标志,上述第一判断单元可具体用于判断访问数据标志是否命中预设缓存;若是,则确定初始访问请求命中预设缓存;若否,则确定初始访问请求未命中预设缓存。
138.在本发明的一个实施例中,上述第一反馈单元可包括:判断子单元,用于判断命中数据是否满足初始访问请求;反馈子单元,用于若命中数据满足初始访问请求,则将命中数据反馈至请求终端。
139.在本发明的一个实施例中,预设标志数据可以包括访问数据起始地址和访问数据长度,上述判断子单元可具体用于判断命中数据的起始地址是否满足访问数据起始地址,且命中数据的数据长度是否满足访问数据长度;若是,则确定命中数据满足初始访问请求;若否,则确定命中数据不满足初始访问请求。
140.在本发明的一个实施例中,上述第一反馈单元还可以包括:删除子单元,用于当命中数据不满足初始访问请求时,统计命中数据的连续命中次数;当连续命中次数达到第一预设次数时,将命中数据在预设缓存中删除。
141.在本发明的一个实施例中,上述第一执行单元可包括:创建子单元,用于利用预设标志数据创建数据预测模型;预测子单元,用于利用数据预测模型进行数据预测,获得预测标志数据;填充子单元,用于将有效数据和预测标志数据填充至预设协议数据帧,获得基于预设协议的数据访问请求;相应地,该数据访问装置还可以包括:缓存模块,用于接收目标访问设备反馈的请求响应数据;根据请求响应数据确定
预测访问数据;将预测访问数据和预测标志数据对应保存至预设缓存。
142.在本发明的一个实施例中,上述第一执行单元还可以包括:统计子单元,用于在上述利用预设标志数据创建数据预测模型之前,统计初始访问请求的未命中次数;判断未命中次数是否达到第二预设次数;若是,则执行利用预设标志数据创建数据预测模型的步骤。
143.在本发明的一个实施例中,上述创建子单元可具体用于获取未命中预设缓存的各初始访问请求的预设标志数据;按照各初始访问请求的接收顺序对各预设标志数据进行排序,获得预设标志数据序列;根据预设标志数据序列生成各模型训练样本,各模型训练样本包括两个预设标志数据,且两个预设标志数据对应的接收顺序相邻;利用所有模型训练样本进行模型训练,获得数据预测模型。
144.在本发明的一个实施例中,上述创建子单元可具体用于按照各初始访问请求的接收顺序将各预设标志数据保存至先入先出存储器,获得预设标志数据序列。
145.在本发明的一个实施例中,上述创建子单元还可用于在上述根据预设标志数据序列生成各模型训练样本之前,判断先入先出存储器中预设标志数据的数量是否达到预设数量;若否,则返回获取未命中预设缓存的各初始访问请求的预设标志数据的步骤;若是,则执行根据预设标志数据序列生成各模型训练样本的步骤。
146.在本发明的一个实施例中,上述预测子单元可具体用于利用数据预测模型对预设标志数据进行处理,获得初始预测标志数据;判断当前预测次数是否达到第三预设次数;若否,则将初始预测标志数据作为预设标志数据,返回利用数据预测模型对预设标志数据进行处理,获得初始预测标志数据的步骤;若是,则根据所有初始预测标志数据生成预测标志数据。
147.在本发明的一个实施例中,预测标志数据可以包括预测数据起始地址和预测数据长度,上述预测子单元可具体用于在所有初始预测标志数据中确定初始预测地址最小值和初始预测地址最大值;将初始预测地址最小值与第一预设参数之间的第一差值作为预测数据起始地址;计算初始预测地址最大值和初始预测地址最小值之间的第二差值,并将第二差值与第二预设参数的加和作为预测数据长度。
148.在本发明的一个实施例中,该数据访问模块还可以包括:反馈模块,用于接收目标访问设备反馈的目标访问数据;将目标访问数据转换为基于异构协议的访问结果;通过异构协议网络接口将访问结果发送至请求终端。
149.对于本发明实施例提供的装置的介绍请参照上述方法实施例,本发明在此不做赘述。
150.实施例四、本发明实施例提供了一种电子设备。
151.请参考图6,图6为本发明所提供的一种电子设备的结构示意图,该电子设备可包括:存储器,用于存储计算机程序;处理器,用于执行计算机程序时可实现如上述任意一种数据访问方法的步骤。
152.如图6所示,为电子设备的组成结构示意图,电子设备可以包括:处理器10、存储器11、通信接口12和通信总线13。处理器10、存储器11、通信接口12均通过通信总线13完成相互间的通信。
153.在本发明实施例中,处理器10可以为中央处理器(central processing unit,cpu)、特定应用集成电路、数字信号处理器、现场可编程门阵列或者其他可编程逻辑器件等。
154.处理器10可以调用存储器11中存储的程序,具体的,处理器10可以执行数据访问方法的实施例中的操作。
155.存储器11中用于存放一个或者一个以上程序,程序可以包括程序代码,程序代码包括计算机操作指令,在本发明实施例中,存储器11中至少存储有用于实现以下功能的程序:通过异构协议网络接口接收初始访问请求;根据初始访问请求确定异构协议类型;确定异构协议类型对应的目标解码器;利用目标解码器将初始访问请求转换为基于预设协议的数据访问请求;将数据访问请求发送至目标访问设备进行数据访问。
156.在一种可能的实现方式中,存储器11可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统,以及至少一个功能所需的应用程序等;存储数据区可存储使用过程中所创建的数据。
157.此外,存储器11可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件或其他易失性固态存储器件。
158.通信接口12可以为通信模块的接口,用于与其他设备或者系统连接。
159.当然,需要说明的是,图6所示的结构并不构成对本发明实施例中电子设备的限定,在实际应用中电子设备可以包括比图6所示的更多或更少的部件,或者组合某些部件。
160.实施例五、本发明实施例提供了一种计算机可读存储介质。
161.本发明实施例所提供的计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现如上述任意一种数据访问方法的步骤。
162.该计算机可读存储介质可以包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
163.对于本发明实施例提供的计算机可读存储介质的介绍请参照上述方法实施例,本发明在此不做赘述。
164.说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
165.专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
166.结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom或技术领域内所公知的任意其它形式的存储介质中。
167.以上对本发明所提供的技术方案进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明的保护范围内。

技术特征:
1.一种数据访问方法,其特征在于,应用于协议转换器,包括:通过异构协议网络接口接收初始访问请求;根据所述初始访问请求确定异构协议类型;确定所述异构协议类型对应的目标解码器;利用所述目标解码器将所述初始访问请求转换为基于预设协议的数据访问请求;将所述数据访问请求发送至目标访问设备进行数据访问。2.根据权利要求1所述的数据访问方法,其特征在于,所述确定所述异构协议类型对应的目标解码器,包括:将所述初始访问请求保存至所述异构协议类型对应的目标接收存储器;利用协议映射器确定所述目标接收存储器与本地协议栈的映射关系;根据所述映射关系确定为所述目标接收存储器分配的目标解码器;相应地,所述利用所述目标解码器将所述初始访问请求转换为基于预设协议的数据访问请求,包括:利用所述目标解码器在所述目标接收存储器中读取所述初始访问请求;将所述初始访问请求转换为所述基于预设协议的数据访问请求。3.根据权利要求2所述的数据访问方法,其特征在于,所述目标接收存储器为虚拟可变容量接收存储器,所述方法还包括:对所述虚拟可变容量接收存储器的实际占用容量进行实时监控;根据所述实际占用容量和当前总容量对所述虚拟可变容量接收存储器进行扩容或缩容。4.根据权利要求3所述的数据访问方法,其特征在于,所述根据所述实际占用容量和当前总容量对所述虚拟可变容量接收存储器进行扩容或缩容,包括:根据所述实际占用容量和所述当前总容量计算容量占比;当所述容量占比超出第一预设阈值时,对所述虚拟可变容量接收存储器进行扩容处理;当所述容量占比低于第二预设阈值时,对所述虚拟可变容量接收存储器进行缩容处理。5.根据权利要求4所述的数据访问方法,其特征在于,所述对所述虚拟可变容量接收存储器进行扩容处理,包括:按照第一预设比例对所述虚拟可变容量接收存储器进行内存地址追加,实现所述扩容处理;相应地,所述对所述虚拟可变容量接收存储器进行缩容处理,包括:按照第二预设比例对所述虚拟可变容量接收存储器进行内存地址回收,实现所述缩容处理。6.根据权利要求2所述的数据访问方法,其特征在于,还包括:根据所述异构协议网络接口确定各异构协议类型;为各所述异构协议类型分配接收存储器,并根据所述异构协议类型为相应的接收存储器设置协议标志位;根据各所述协议标志位建立各所述接收存储器与所述本地协议栈的映射关系。
7.根据权利要求2所述的数据访问方法,其特征在于,所述利用所述目标解码器在所述目标接收存储器中读取所述初始访问请求之后,还包括:将所述目标接收存储器中所述初始访问请求的内存空间清空。8.根据权利要求1所述的数据访问方法,其特征在于,所述将所述数据访问请求发送至目标访问设备进行数据访问,包括:将所述数据访问请求保存至预设发送缓存;利用并行发送单元在所述预设发送缓存中读取获得所述数据访问请求;利用所述并行发送单元将所述数据访问请求发送至所述目标访问设备进行数据访问。9.根据权利要求1所述的数据访问方法,其特征在于,所述利用所述目标解码器将所述初始访问请求转换为基于预设协议的数据访问请求,包括:利用所述目标解码器对所述初始访问请求进行解析,获得有效数据;将所述有效数据填充至预设协议数据帧,获得所述基于预设协议的数据访问请求。10.根据权利要求9所述的数据访问方法,其特征在于,所述将所述有效数据填充至预设协议数据帧,获得所述基于预设协议的数据访问请求之前,还包括:当所述有效数据中存在预设标志数据时,根据所述预设标志数据判断所述初始访问请求是否命中预设缓存;若是,则将所述预设缓存中的命中数据反馈至请求终端;若否,则执行所述将所述有效数据填充至预设协议数据帧,获得所述基于预设协议的数据访问请求的步骤。11.根据权利要求10所述的数据访问方法,其特征在于,所述预设标志数据包括访问数据标志,所述根据所述预设标志数据判断所述初始访问请求是否命中预设缓存,包括:判断所述访问数据标志是否命中所述预设缓存;若是,则确定所述初始访问请求命中所述预设缓存;若否,则确定所述初始访问请求未命中所述预设缓存。12.根据权利要求10所述的数据访问方法,其特征在于,所述将所述预设缓存中的命中数据反馈至请求终端,包括:判断所述命中数据是否满足所述初始访问请求;若是,则将所述命中数据反馈至所述请求终端。13.根据权利要求12所述的数据访问方法,其特征在于,所述预设标志数据包括访问数据起始地址和访问数据长度,所述判断所述命中数据是否满足所述初始访问请求,包括:判断所述命中数据的起始地址是否满足所述访问数据起始地址,且所述命中数据的数据长度是否满足所述访问数据长度;若是,则确定所述命中数据满足所述初始访问请求;若否,则确定所述命中数据不满足所述初始访问请求。14.根据权利要求12所述的数据访问方法,其特征在于,当所述命中数据不满足所述初始访问请求时,所述方法还包括:统计所述命中数据的连续命中次数;当所述连续命中次数达到第一预设次数时,将所述命中数据在所述预设缓存中删除。15.根据权利要求10所述的数据访问方法,其特征在于,当所述初始访问请求未命中所
述预设缓存时,所述将所述有效数据填充至预设协议数据帧,获得所述基于预设协议的数据访问请求,包括:利用所述预设标志数据创建数据预测模型;利用所述数据预测模型进行数据预测,获得预测标志数据;将所述有效数据和所述预测标志数据填充至所述预设协议数据帧,获得所述基于预设协议的数据访问请求;相应地,所述将所述数据访问请求发送至目标访问设备进行数据访问之后,还包括:接收所述目标访问设备反馈的请求响应数据;根据所述请求响应数据确定预测访问数据;将所述预测访问数据和所述预测标志数据对应保存至所述预设缓存。16.根据权利要求15所述的数据访问方法,其特征在于,所述利用所述预设标志数据创建数据预测模型之前,还包括:统计所述初始访问请求的未命中次数;判断所述未命中次数是否达到第二预设次数;若是,则执行所述利用所述预设标志数据创建数据预测模型的步骤。17.根据权利要求15所述的数据访问方法,其特征在于,所述利用所述预设标志数据创建数据预测模型,包括:获取未命中所述预设缓存的各所述初始访问请求的所述预设标志数据;按照各所述初始访问请求的接收顺序对各所述预设标志数据进行排序,获得预设标志数据序列;根据所述预设标志数据序列生成各模型训练样本,各所述模型训练样本包括两个所述预设标志数据,且两个所述预设标志数据对应的接收顺序相邻;利用所有所述模型训练样本进行模型训练,获得所述数据预测模型。18.根据权利要求17所述的数据访问方法,其特征在于,所述按照各所述初始访问请求的接收顺序对各所述预设标志数据进行排序,获得预设标志数据序列,包括:按照各所述初始访问请求的接收顺序将各所述预设标志数据保存至先入先出存储器,获得所述预设标志数据序列。19.根据权利要求18所述的数据访问方法,其特征在于,所述根据所述预设标志数据序列生成各模型训练样本之前,还包括:判断所述先入先出存储器中所述预设标志数据的数量是否达到预设数量;若否,则返回所述获取未命中所述预设缓存的各所述初始访问请求的所述预设标志数据的步骤;若是,则执行所述根据所述预设标志数据序列生成各模型训练样本的步骤。20.根据权利要求15所述的数据访问方法,其特征在于,所述利用所述数据预测模型进行数据预测,获得预测标志数据,包括:利用所述数据预测模型对所述预设标志数据进行处理,获得初始预测标志数据;判断当前预测次数是否达到第三预设次数;若否,则将所述初始预测标志数据作为所述预设标志数据,返回所述利用所述数据预测模型对所述预设标志数据进行处理,获得初始预测标志数据的步骤;
若是,则根据所有所述初始预测标志数据生成所述预测标志数据。21.根据权利要求20所述的数据访问方法,其特征在于,所述预测标志数据包括预测数据起始地址和预测数据长度,所述根据所有所述初始预测标志数据生成所述预测标志数据,包括:在所有所述初始预测标志数据中确定初始预测地址最小值和初始预测地址最大值;将所述初始预测地址最小值与第一预设参数之间的第一差值作为所述预测数据起始地址;计算所述初始预测地址最大值和所述初始预测地址最小值之间的第二差值,并将所述第二差值与第二预设参数的加和作为所述预测数据长度。22.根据权利要求1所述的数据访问方法,其特征在于,还包括:接收所述目标访问设备反馈的目标访问数据;将所述目标访问数据转换为基于所述异构协议的访问结果;通过所述异构协议网络接口将所述访问结果发送至请求终端。23.一种数据访问装置,其特征在于,应用于协议转换器,包括:接收模块,用于通过异构协议网络接口接收初始访问请求;第一确定模块,用于根据所述初始访问请求确定异构协议类型;第二确定模块,用于确定所述异构协议类型对应的目标解码器;转换模块,用于利用所述目标解码器将所述初始访问请求转换为基于预设协议的数据访问请求;发送模块,用于将所述数据访问请求发送至目标访问设备进行数据访问。24.一种电子设备,其特征在于,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如权利要求1至22任一项所述的数据访问方法的步骤。25.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至22任一项所述的数据访问方法的步骤。

技术总结
本发明公开了一种数据访问方法、装置、电子设备及计算机可读存储介质,涉及大数据技术领域,旨在解决传统技术中由于不同协议的复杂转换所造成的服务效率低下和出错率大的问题,以有效保证用户体验,所述方法应用于协议转换器,包括:通过异构协议网络接口接收初始访问请求;根据所述初始访问请求确定异构协议类型;确定所述异构协议类型对应的目标解码器;利用所述目标解码器将所述初始访问请求转换为基于预设协议的数据访问请求;将所述数据访问请求发送至目标访问设备进行数据访问。问请求发送至目标访问设备进行数据访问。问请求发送至目标访问设备进行数据访问。


技术研发人员:赵雅倩 范宝余 张润泽 郭振华 王立
受保护的技术使用者:浪潮电子信息产业股份有限公司
技术研发日:2023.08.04
技术公布日:2023/9/7
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐