一种管理数据访问的方法及装置制造方法

文档序号:6623113阅读:170来源:国知局
一种管理数据访问的方法及装置制造方法
【专利摘要】本发明公开了一种管理数据访问的方法及装置,应用于异构融合架构,包括:当请求到来时,获取请求队列中有效请求的总个数;判断获得的有效请求的总个数是否大于或等于预先设置的请求个数阈值;当获得的有效请求的总个数大于或等于预先设置的请求个数阈值时,采用轮询的方法对请求队列中所有请求进行处理;当请求队列中有效请求的总个数小于预先设置的请求个数阈值时,继续等到请求到来并执行所述获取请求队列中有效请求的总个数的步骤。本发明的技术方案降低了由于请求总量的差异而带来的对大数据处理的影响,从而提升了对大数据处理请求的效率,从而节约了系统开销。
【专利说明】一种管理数据访问的方法及装置

【技术领域】
[0001]本发明涉及大数据调度管理技术,尤指一种管理数据访问的方法及装置。

【背景技术】
[0002]随着计算机技术的飞速发展,数据量也随之增大,大数据处理的速度问题愈发突出,为了保证其时效性,目前,业界提出采用即时处理的方法来对大数据进行处理,即当大数据处理请求来时就对该请求进行处理。
[0003]但是,当请求集中在某一个时刻一起到来时,现有对大数据的即时处理的方法会带来一些问题,比如:由于需要处理的请求的总数量很大而导致服务器处理效率低下,以及当大数据处理请求量较少时,服务器也要对这些少量的大数据处理请求进行处理,这就会导致服务器一直在低功耗运转,浪费了系统开销。


【发明内容】

[0004]为了解决上述技术问题,本发明提供了一种管理数据访问的方法及装置,能够降低由于请求总量的差异而带来的对大数据处理的影响,从而提升对大数据处理请求的效率,节约系统开销。
[0005]为了达到本发明目的,本发明提供了一种管理数据访问的方法,应用于异构融合架构,包括:当请求到来时,获取请求队列中有效请求的总个数;
[0006]判断获得的有效请求的总个数是否大于或等于预先设置的请求个数阈值;
[0007]当获得的有效请求的总个数大于或等于预先设置的请求个数阈值时,采用轮询的方法对请求队列中所有请求进行处理;当请求队列中有效请求的总个数小于预先设置的请求个数阈值时,继续等到请求到来并执行获取请求队列中有效请求的总个数的步骤。
[0008]进一步地,该方法之前还包括:预先设置请求队列;
[0009]当请求到来时,获取请求队列中有效请求的总个数之前还包括:将请求按照时间顺序添加到请求队列中。
[0010]以及,
[0011]预先设置请求名称为:数据名称一属性一标签;
[0012]其中,标签的初始值设置为0,请求每被处理完一次,对请求的标签进行递增处理;
[0013]属性包括:读数据请求或写数据请求。
[0014]进一步地,在采用轮询的方法对请求队列中所有请求进行处理之后,该方法还包括:设置完成队列;
[0015]当请求队列中的请求被处理完成后,按照时间顺序将请求从请求队列转移至完成队列中。
[0016]进一步地,采用轮询的方法对请求队列中所有请求进行处理,包括:
[0017]获取请求队列中各个请求的标签,对获得的各个请求的标签按照由大到小的顺序进行排序;
[0018]按照各个请求的标签的由大到小的顺序对各个请求进行处理。
[0019]进一步地,按照各个请求的标签由大到小的顺序对各个请求进行处理,包括:
[0020]按照各个请求的标签的由大到小的顺序,依次获取各个请求的属性;
[0021]当请求的属性显示为写数据请求时,将该数据写入异构融合架构中的文件系统中,并将该写操作返回至操作系统并记录该请求完成;当请求的属性显示为读数据请求时,读取读数据请求所要的数据并将该读操作返回至操作系统并记录该请求完成;
[0022]请求被处理完成后,对请求的标签进行递增处理。
[0023]进一步地,在获取请求队列中有效请求的总个数之前,该方法还包括:
[0024]获取请求队列中请求的总个数;
[0025]确定请求队列中有效请求的总个数包括:
[0026]根据请求队列中不同时间所对应的请求,判断相邻的两个请求是否是同一个请求,若是同一个请求,则将这两个请求合并为一个请求;
[0027]请求队列中有效请求的总个数等于请求队列中请求的总个数减去合并请求的个数。
[0028]进一步地,按照以下方式判断相邻的两个请求是否是同一个请求:
[0029]如果相邻的两个请求的请求名称中的数据名称和属性相同,则判断出相邻的两个请求是同一个请求。
[0030]本发明还提供了一种管理数据访问的装置,应用于异构融合架构,包括:请求队列管理模块、判断模块和轮询协调模块;其中,
[0031]请求队列管理模块,用于当请求到来时,获取请求队列中有效请求的总个数;
[0032]判断模块,用于判断获得的有效请求的总个数是否大于或等于预先设置的请求个数阈值;
[0033]轮询协调模块,用于当获得的有效请求的总个数大于或等于预先设置的请求个数阈值时,采用轮询的方法对请求队列中所有请求进行处理;
[0034]请求队列管理模块,还用于当获得的有效请求的总个数小于预先设置的请求个数阈值时,继续等到请求到来。
[0035]进一步地,该装置还包括设置模块,用于:预先设置请求队列;
[0036]当请求到来时,将请求按照不同的时间顺序添加到请求队列中。
[0037]以及,
[0038]预先设置请求名称为:数据名称一属性一标签;
[0039]其中,标签的初始值设置为0,请求每被处理完一次,对请求的标签进行递增处理;
[0040]属性包括:读数据请求或写数据请求。
[0041]进一步地,轮询协调模块具体用于:
[0042]获取请求队列中各个请求的标签,对获得的各个请求的标签按照由大到小的顺序进行排序;
[0043]按照各个请求的标签的由大到小的顺序对各个请求进行处理。
[0044]进一步地,轮询协调模块按照各个请求的标签的由大到小的顺序对各个请求进行处理,包括:
[0045]按照各个请求的标签的由大到小的顺序,依次获取各个请求的属性;
[0046]该装置还包括请求访问读写模块,用于:
[0047]当请求的属性显示为写数据请求时,将该数据写入异构融合架构中的文件系统中,并将该写操作返回至操作系统并记录该请求完成;当请求的属性显示为读数据请求时,读取读数据请求所要的数据并将该读操作返回至操作系统并记录该请求完成。
[0048]进一步地,轮询协调模块还用于:在采用轮询的方法对请求队列中所有请求进行处理之后,设置完成队列;
[0049]当请求队列中的请求被处理完成后,按照时间顺序将请求从请求队列转移至完成队列中;
[0050]对请求的标签进行递增处理。
[0051]进一步地,请求队列管理模块还用于:
[0052]获取请求队列中请求的总个数;
[0053]确定请求队列中有效请求的总个数包括:
[0054]根据请求队列中不同时间所对应的请求,判断相邻的两个请求是否是同一个请求,若是同一个请求,则将这两个请求合并为一个请求;
[0055]请求队列中有效请求的总个数等于请求队列中请求的总个数减去合并请求的个数。
[0056]进一步地,请求队列管理模块按照以下方式判断相邻的两个请求是否是同一个请求:
[0057]如果相邻的两个请求的请求名称中的数据名称和属性相同,则判断出相邻的两个请求是同一个请求。
[0058]本发明技术方案包括:应用于异构融合架构,包括:当请求到来时,获取请求队列中有效请求的总个数;判断获得的有效请求的总个数是否大于或等于预先设置的请求个数阈值;当获得的有效请求的总个数大于或等于预先设置的请求个数阈值时,采用轮询的方法对请求队列中所有请求进行处理;当请求队列中有效请求的总个数小于预先设置的请求个数阈值时,继续等到请求到来并执行所述获取请求队列中有效请求的总个数的步骤。本发明的技术方案降低了由于请求总量的差异而带来的对大数据处理的影响,从而提升了对大数据处理请求的效率,从而节约了系统开销。

【专利附图】

【附图说明】
[0059]此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0060]图1为本发明一种管理数据访问的方法的流程图;
[0061]图2为本发明一种管理数据访问的装置的结构示意图。

【具体实施方式】
[0062]下面结合附图及具体实施例对本发明进行详细的说明。
[0063]图1为本发明基于异构融合架构的缓存管理方法的流程图,如图1所示,该方法应用于异构融合架构,包括以下步骤:
[0064]步骤101,当请求到来时,获取请求队列中有效请求的总个数。
[0065]在该步骤之前,还包括:预先设置请求队列;
[0066]其中,当请求到来时,在获取请求队列中有效请求的总个数之前还包括:将请求按照时间顺序添加到请求队列中。
[0067]以及,
[0068]预先设置请求名称为:数据名称一属性一标签;
[0069]其中,标签的初始值设置为O ;也可以将标签的初始值设置为其他的数值,并不用来限制本发明的保护范围;请求每被处理完一次,对所述请求的标签进行递增处理
[0070]属性包括:读数据请求或写数据请求。
[0071]进一步地,在获取请求队列中有效请求的总个数之前,该方法还包括:获取请求队列中请求的总个数。
[0072]本步骤中,确定请求队列中有效请求的总个数具体包括:
[0073]根据请求队列中不同时间所对应的请求,判断相邻的两个请求是否是同一个请求,若是同一个请求,则可以将这两个请求合并为一个请求;
[0074]请求队列中有效请求的总个数等于请求队列中请求的总个数减去合并请求的个数。
[0075]其中,按照以下方式判断相邻的两个请求是否是同一个请求:
[0076]如果相邻的两个请求的请求名称中的数据名称和属性相同,则判断出相邻的两个请求是同一个请求。
[0077]需要说明的是,关于如何获取请求队列中请求的总个数是本领域技术人员所熟知的惯用技术手段,在此不再赘述。
[0078]步骤102,判断请求队列中有效请求的总个数是否大于或等于预先设置的请求个数阈值。
[0079]步骤103,当获得的有效请求的总个数大于或等于预先设置的请求个数阈值时,采用轮询的方法对请求队列中所有请求进行处理;当请求队列中有效请求的总个数小于预先设置的请求个数阈值时,继续等到请求到来并执行所述获取请求队列中有效请求的总个数的步骤。
[0080]这里,当请求队列中有效请求的总个数小于预先设置的请求个数阈值时,对所有请求不进行处理,即将请求暂时搁置,等待下一个请求的到来。
[0081]本步骤中,采用轮询的方法对请求队列中所有请求进行处理,包括:
[0082]获取请求队列中各个请求的标签,对获得的各个请求的标签按照由大到小的顺序进行排序;
[0083]按照各个请求的标签的由大到小的顺序对各个请求进行处理。
[0084]进一步地,在采用轮询的方法对请求队列中所有请求进行处理之后,该方法还包括:设置完成队列;
[0085]当所述请求队列中的请求被处理完成后,按照时间顺序将请求从请求队列转移至完成队列中。
[0086]其中,按照各个请求的标签由大到小的顺序对各个请求进行处理,包括:
[0087]按照各个请求的标签的由大到小的顺序,依次获取各个请求的属性;
[0088]当请求的属性显示为写数据请求时,将该数据写入异构融合架构中的文件系统中,并将该写操作返回至操作系统并记录该请求完成;当请求的属性显示为读数据请求时,读取读数据请求所要的数据并将该读操作返回至操作系统并记录该请求完成;
[0089]请求被处理完成后,对所述请求的标签进行递增处理。
[0090]本发明的方法中需要说明的是,请求队列、完成队列以及文件系统都存放在异构融合架构中的硬件层中。
[0091]图2为本发明一种管理数据访问的装置的结构示意图,如图2所示,该装置应用于异构融合架构,包括:请求队列管理模块、判断模块和轮询协调模块。其中,
[0092]请求队列管理模块,用于当请求到来时,获取请求队列中有效请求的总个数。
[0093]进一步地,请求队列管理模块还用于:
[0094]获取请求队列中请求的总个数;
[0095]确定请求队列中有效请求的总个数包括:
[0096]根据请求队列中不同时间所对应的请求,判断相邻的两个请求是否是同一个请求,若是同一个请求,则可以将这两个请求合并为一个请求;
[0097]请求队列中有效请求的总个数等于请求队列中请求的总个数减去合并请求的个数。
[0098]其中,请求队列管理模块按照以下方式判断相邻的两个请求是否是同一个请求:
[0099]如果相邻的两个请求的请求名称中的数据名称和属性相同,则判断出相邻的两个请求是同一个请求。
[0100]判断模块,用于判断获得的有效请求的总个数是否大于或等于预先设置的请求个数阈值。
[0101]轮询协调模块,用于当获得的有效请求的总个数大于或等于预先设置的请求个数阈值时,采用轮询的方法对请求队列中所有请求进行处理。
[0102]进一步地,轮询协调模块具体用于:
[0103]获取请求队列中各个请求的标签,对获得的各个请求的标签按照由大到小的顺序进行排序;
[0104]按照各个请求的标签的由大到小的顺序对各个请求进行处理。
[0105]进一步地,轮询协调模块还用于:在所述采用轮询的方法对请求队列中所有请求进行处理之后,设置完成队列;
[0106]当请求队列中的请求被处理完成后,按照时间顺序将请求从请求队列转移至完成队列中;
[0107]对所述请求的标签进行递增处理。
[0108]其中,轮询协调模块按照各个请求的标签的由大到小的顺序对各个请求进行处理,包括:
[0109]按照各个请求的标签的由大到小的顺序,依次获取各个请求的属性;
[0110]请求队列管理模块,还用于当获得的有效请求的总个数小于预先设置的请求个数阈值时,继续等到请求到来。
[0111]这里,当请求队列中有效请求的总个数小于预先设置的请求个数阈值时,对所有请求不进行处理,即将请求暂时搁置,等待下一个请求的到来。
[0112]该装置还包括请求访问读写模块,用于:
[0113]当请求的属性显示为写数据请求时,将该数据写入异构融合架构中的文件系统中,并将该写操作返回至操作系统并记录该请求完成;当请求的属性显示为读数据请求时,读取读数据请求所要的数据并将该读操作返回至操作系统并记录该请求完成。
[0114]该装置还包括设置模块,用于:预先设置请求队列;
[0115]当请求到来时将请求按照不同的时间顺序添加到请求队列中。
[0116]以及,
[0117]预先设置请求名称为:数据名称一属性一标签,请求每被处理完一次,对所述请求的标签进行递增处理;
[0118]其中,标签的初始值设置为O ;此处也可以将标签的初始值设置为其他的数值,并不用来限制本发明的保护范围。
[0119]属性包括:读数据请求或写数据请求。
[0120]本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本申请不限制于任何特定形式的硬件和软件的结合。
[0121]以上所述,仅为本发明的较佳实例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种管理数据访问的方法,应用于异构融合架构,其特征在于,包括:当请求到来时,获取请求队列中有效请求的总个数; 判断获得的有效请求的总个数是否大于或等于预先设置的请求个数阈值; 当获得的有效请求的总个数大于或等于预先设置的请求个数阈值时,采用轮询的方法对请求队列中所有请求进行处理;当请求队列中有效请求的总个数小于预先设置的请求个数阈值时,继续等到请求到来并执行所述获取请求队列中有效请求的总个数的步骤。
2.根据权利要求1所述的方法,其特征在于,该方法之前还包括:预先设置所述请求队列; 所述当请求到来时,所述获取请求队列中有效请求的总个数之前还包括:将请求按照时间顺序添加到所述请求队列中。
3.根据权利要求1所述的方法,其特征在于,该方法之前还包括: 预先设置请求名称为:数据名称一属性一标签; 其中,标签的初始值设置为O,请求每被处理完一次,对所述请求的标签进行递增处理; 属性包括:读数据请求或写数据请求。
4.根据权利要求1或2所述的方法,其特征在于,在所述采用轮询的方法对请求队列中所有请求进行处理之后,该方法还包括:设置完成队列; 当所述请求队列中的请求被处理完成后,按照时间顺序将请求从请求队列转移至完成队列中。
5.根据权利要求3所述的方法,其特征在于,所述采用轮询的方法对请求队列中所有请求进行处理,包括: 获取所述请求队列中各个请求的标签,对获得的各个请求的标签按照由大到小的顺序进行排序; 按照各个请求的标签的由大到小的顺序对各个请求进行处理。
6.根据权利要求5所述的方法,其特征在于,所述按照各个请求的标签由大到小的顺序对各个请求进行处理,包括: 按照各个请求的标签的由大到小的顺序,依次获取各个请求的属性; 当请求的属性显示为写数据请求时,将该数据写入异构融合架构中的文件系统中,并将该写操作返回至操作系统并记录该请求完成;当请求的属性显示为读数据请求时,读取读数据请求所要的数据并将该读操作返回至操作系统并记录该请求完成; 请求被处理完成后,对所述请求的标签进行递增处理。
7.根据权利要求2所述的方法,其特征在于,在所述获取请求队列中有效请求的总个数之前,该方法还包括: 获取所述请求队列中请求的总个数; 所述确定请求队列中有效请求的总个数包括: 根据所述请求队列中不同时间所对应的请求,判断相邻的两个请求是否是同一个请求,若是同一个请求,则将这两个请求合并为一个请求; 所述请求队列中有效请求的总个数等于请求队列中请求的总个数减去合并请求的个数。
8.根据权利要求7所述的方法,其特征在于,按照以下方式判断相邻的两个请求是否是同一个请求: 如果相邻的两个请求的请求名称中的数据名称和属性相同,则判断出相邻的两个请求是同一个请求。
9.一种管理数据访问的装置,应用于异构融合架构,其特征在于,包括:请求队列管理模块、判断模块和轮询协调模块;其中, 请求队列管理模块,用于当请求到来时,获取请求队列中有效请求的总个数; 判断模块,用于判断获得的有效请求的总个数是否大于或等于预先设置的请求个数阈值; 轮询协调模块,用于当获得的有效请求的总个数大于或等于预先设置的请求个数阈值时,采用轮询的方法对请求队列中所有请求进行处理; 所述请求队列管理模块,还用于当获得的有效请求的总个数小于预先设置的请求个数阈值时,继续等到请求到来。
10.根据权利要求9所述的装置,其特征在于,该装置还包括设置模块,用于:预先设置请求队列; 当请求到来时,将请求按照不同的时间顺序添加到请求队列中。
11.根据权利要求9所述的装置,其特征在于,该装置还包括设置模块,用于:预先设置请求名称为:数据名称一属性一标签; 其中,标签的初始值设置为0,请求每被处理完一次,对所述请求的标签进行递增处理; 属性包括:读数据请求或写数据请求。
12.根据权利要求11所述的装置,其特征在于,所述轮询协调模块具体用于: 获取所述请求队列中各个请求的标签,对获得的各个请求的标签按照由大到小的顺序进行排序; 按照各个请求的标签的由大到小的顺序对各个请求进行处理。
13.根据权利要求12所述的装置,其特征在于,所述轮询协调模块按照各个请求的标签的由大到小的顺序对各个请求进行处理,包括: 按照各个请求的标签的由大到小的顺序,依次获取各个请求的属性; 该装置还包括请求访问读写模块,用于: 当请求的属性显示为写数据请求时,将该数据写入异构融合架构中的文件系统中,并将该写操作返回至操作系统并记录该请求完成;当请求的属性显示为读数据请求时,读取读数据请求所要的数据并将该读操作返回至操作系统并记录该请求完成。
14.根据权利要求9或10所述的装置,所述轮询协调模块还用于:在所述采用轮询的方法对请求队列中所有请求进行处理之后,设置完成队列; 当所述请求队列中的请求被处理完成后,按照时间顺序将请求从请求队列转移至完成队列中; 对所述请求的标签进行递增处理。
15.根据权利要求10所述的装置,其特征在于,所述请求队列管理模块还用于: 获取所述请求队列中请求的总个数; 所述确定请求队列中有效请求的总个数包括: 根据所述请求队列中不同时间所对应的请求,判断相邻的两个请求是否是同一个请求,若是同一个请求,则将这两个请求合并为一个请求; 所述请求队列中有效请求的总个数等于请求队列中请求的总个数减去合并请求的个数。
16.根据权利要求15所述的装置,其特征在于,所述请求队列管理模块按照以下方式判断相邻的两个请求是否是同一个请求: 如果相邻的两个请求的请求名称中的数据名称和属性相同,则判断出相邻的两个请求是同一个请求。
【文档编号】G06F17/30GK104182490SQ201410392257
【公开日】2014年12月3日 申请日期:2014年8月11日 优先权日:2014年8月11日
【发明者】丛戎, 何志平, 邢伟 申请人:浪潮(北京)电子信息产业有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1