CN108628551B - 一种数据处理方法及装置 - Google Patents

一种数据处理方法及装置 Download PDF

Info

Publication number
CN108628551B
CN108628551B CN201810421758.0A CN201810421758A CN108628551B CN 108628551 B CN108628551 B CN 108628551B CN 201810421758 A CN201810421758 A CN 201810421758A CN 108628551 B CN108628551 B CN 108628551B
Authority
CN
China
Prior art keywords
queue
average value
data
time difference
disk
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.)
Active
Application number
CN201810421758.0A
Other languages
English (en)
Other versions
CN108628551A (zh
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.)
Shenzhen Ipanel TV Inc
Original Assignee
Shenzhen Ipanel TV Inc
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 Shenzhen Ipanel TV Inc filed Critical Shenzhen Ipanel TV Inc
Priority to CN201810421758.0A priority Critical patent/CN108628551B/zh
Publication of CN108628551A publication Critical patent/CN108628551A/zh
Application granted granted Critical
Publication of CN108628551B publication Critical patent/CN108628551B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明公开了一种数据处理方法及装置,应用于控制服务器,所述控制服务器设置第一队列和第二队列,所述第一队列用于存储从数据磁盘服务器读取数据的时间差值,所述第二队列用于存储从缓存磁盘服务器读取数据的时间差值,所述时间差值用于表示磁盘用户发起请求读取数据到磁盘读取完毕回复给所述磁盘用户的时间差,通过本发明提供的数据处理方法及装置,达到缓存磁盘服务器的输出数据的能力和数据磁盘服务器的输出数据的能力均衡,实现对缓存磁盘服务器进行削峰,达到整个服务器集群的最大数据输出能力。

Description

一种数据处理方法及装置
技术领域
本发明涉及数据处理技术领域,特别是涉及一种数据处理方法及装置。
背景技术
随着3G和宽带接入的高速发展,移动和固网用户的数量及带宽都有很快的增长。如此庞大的用户需求强烈刺激着各类信息业务的发展,对IP网络的结构和容量都提出了很高的挑战。
在数据输出的时候,一般缓存磁盘服务器缓存的都是用户的热点数据,大量的热点数据缓存在磁盘服务器的磁盘上,但是缓存磁盘服务器也存在一定的限制:第一,由于缓存磁盘服务器的输出能力是有限的,通常一个服务器集群无法部署大量的缓冲磁盘服务器,所以,缓存磁盘服务器个数比较少;第二,每一个缓存磁盘服务器的输出带宽是有限制的,不可能输出很大的数据量来维持用户的需求。当所有数据从缓存磁盘服务器中读取的时候,磁盘输出的带宽以及对应服务器的输出带宽限制了整个服务器集群的数据输出能力。
发明内容
本发明的目的在于提出一种数据处理方法及装置,以达到缓存磁盘服务器的输出数据的能力和数据磁盘服务器的输出数据的能力均衡,实现对缓存磁盘服务器进行削峰,达到整个服务器集群的最大数据输出能力。
为达到上述目的,本发明提供了以下技术方案:
一种数据处理方法,应用于控制服务器,所述控制服务器设置第一队列和第二队列,所述第一队列用于存储从数据磁盘服务器读取数据的时间差值,所述第二队列用于存储从缓存磁盘服务器读取数据的时间差值,所述时间差值用于表示磁盘用户发起请求读取数据到磁盘读取完毕回复给所述磁盘用户的时间差,该方法包括:
接收所述磁盘用户发送的读取数据请求;
根据所述第一队列中的所有的时间差值和所述第一队列的长度计算第一平均值;
根据所述第二队列中的所有的时间差值和所述第二队列的长度计算第二平均值;
当再次接收所述磁盘用户发送的读取数据请求时,根据所述第一平均值和所述第二平均值确定目标磁盘服务器。
具体的,根据所述第一队列中的所有的时间差值和所述第一队列的长度计算第一平均值的步骤,包括:
确定从所述数据磁盘服务器请求数据所花费的时间差值,并将所述时间差值存储至所述第一队列;
将所述第一队列中的所有的时间差值求和,除以所述第一队列的长度得到所述第一平均值。
具体的,根据所述第二队列中的所有的时间差值和所述第二队列的长度计算第二平均值的步骤,包括:
确定从所述缓存磁盘服务器请求数据所花费的时间差值,并将所述时间差值存储至所述第二队列;
将所述第二队列中的所有的时间差值求和,除以所述第二队列的长度得到所述第二平均值。
具体的,当再次接收所述磁盘用户发送的读取数据请求时,根据所述第一平均值和所述第二平均值确定目标磁盘服务器的步骤,包括:
比较所述第一平均值和所述第二平均值的大小;
当所述第一平均值大于或等于所述第二平均值时,则确定所述目标磁盘服务器为所述缓存磁盘服务器,将读取所花费的时间差值更新至所述缓存磁盘服务器对应的所述第二队列中,并计算新的第二平均值;
当所述第一平均值小于所述第二平均值时,则确定所述目标磁盘服务器为所述数据磁盘服务器,将读取所花费的时间差值更新至所述数据磁盘服务器对应的所述第一队列中,并计算新的第一平均值。
一种数据处理装置,包括:
接收模块,用于接收所述磁盘用户发送的读取数据请求;
第一计算模块,用于根据所述第一队列中的所有的时间差值和所述第一队列的长度计算第一平均值;
第二计算模块,用于根据所述第二队列中的所有的时间差值和所述第二队列的长度计算第二平均值;
确定模块,用于当再次接收所述磁盘用户发送的读取数据请求时,根据所述第一平均值和所述第二平均值确定目标磁盘服务器。
具体的,所述第一计算模块包括:
第一存储单元,用于确定从所述数据磁盘服务器请求数据所花费的时间差值,并将所述时间差值存储至所述第一队列;
第一计算单元,用于将所述第一队列中的所有的时间差值求和,除以所述第一队列的长度得到所述第一平均值。
具体的,所述第二计算模块包括:
第二存储单元,用于确定从所述缓存磁盘服务器请求数据所花费的时间差值,并将所述时间差值存储至所述第二队列;
第二计算单元,用于将所述第二队列中的所有的时间差值求和,除以所述第二队列的长度得到所述第二平均值。
具体的,所述确定模块包括:
比较单元,用于比较所述第一平均值和所述第二平均值的大小;
第一确定单元,用于当所述第一平均值大于或等于所述第二平均值时,则确定所述目标磁盘服务器为所述缓存磁盘服务器,将读取所花费的时间差值更新至所述缓存磁盘服务器对应的所述第二队列中,并计算新的第二平均值;
第二确定单元,用于当所述第一平均值小于所述第二平均值时,则确定所述目标磁盘服务器为所述数据磁盘服务器,将读取所花费的时间差值更新至所述数据磁盘服务器对应的所述第一队列中,并计算新的第一平均值。
一种存储介质,所述存储介质包括存储的程序,
其中,在所述程序运行时控制所述存储介质所在的设备执行上述所述的数据处理方法。
一种处理器,所述处理器用于运行程序,
其中,所述程序运行时执行上述所述的数据处理方法。
经由上述的技术方案可知,与现有技术相比,本发明公开了一种数据处理方法及装置,应用于控制服务器,所述控制服务器设置第一队列和第二队列,所述第一队列用于存储从数据磁盘服务器读取数据的时间差值,所述第二队列用于存储从缓存磁盘服务器读取数据的时间差值,所述时间差值用于表示磁盘用户发起请求读取数据到磁盘读取完毕回复给所述磁盘用户的时间差,该方法包括:接收所述磁盘用户发送的读取数据请求;根据所述第一队列中的所有的时间差值和所述第一队列的长度计算第一平均值;根据所述第二队列中的所有的时间差值和所述第二队列的长度计算第二平均值;当再次接收所述磁盘用户发送的读取数据请求时,根据所述第一平均值和所述第二平均值确定目标磁盘服务器。
通过本发明提供的数据处理方法及装置,当缓存磁盘服务器的输出达到一定的输出能力时,从缓存磁盘服务器读取的数据会增大延迟,通过缓存服务器的延迟来推断缓存服务器比较忙碌,则后续需要从数据磁盘服务器中读取;同样当数据磁盘服务器读取的速度达到了一定的输出延迟,说明数据服务器比较忙碌,下次读取数据的时候需要从缓存磁盘服务器中读取,从而达到缓存磁盘服务器的输出数据的能力和数据磁盘服务器的输出数据的能力均衡,实现对缓存磁盘服务器进行削峰,达到整个服务器集群的最大数据输出能力。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例示出的一种数据处理方法流程示意图;
图2为本发明实施例示出的图1中的步骤S102的流程示意图;
图3为本发明实施例示出的图1中的步骤S103的流程示意图;
图4为本发明实施例示出的图1中的步骤S104的流程示意图;
图5为本发明实施例示出的一种数据处理装置结构示意图;
图6为本发明实施例示出的一种数据处理装置具体结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,本实施例公开了一种数据处理方法,应用于控制服务器,该方法具体包括如下步骤:
S101、接收所述磁盘用户发送的读取数据请求。
具体的,上述涉及的磁盘用户为需要读取数据的用户,在需要从数据磁盘服务器或缓存磁盘服务器中读取数据时,需要先设置为磁盘用户才能从数据磁盘服务器或缓存磁盘服务器中读取数据。上述涉及的上述所述控制服务器设置有两个队列,第一队列和第二队列,且第一队列和第二队列不需要太大,只要满足能够保存最近几十次的时间差值即可。
具体的,上述所述第一队列用于存储从数据磁盘服务器读取数据的时间差值,所述第二队列用于存储从缓存磁盘服务器读取数据的时间差值,所述时间差值用于表示磁盘用户发起请求读取数据到磁盘读取完毕回复给所述磁盘用户的时间差,即:时间差值是指磁盘用户发起请求读取数据的时候,到磁盘读取完毕回复给磁盘用户的时间差,为数据磁盘服务器以及缓存磁盘服务器中所请求的发生的时间差值。
在第一队列和第二队列中是将最新的时间差值存入队列中,最老的时间差值需要从队列尾中淘汰掉,同时,需要保证队列的大小不变,且两个队列初始化为全0。
需要说明的是,控制服务器为用来控制用户请求的数据从数据磁盘服务器中读取还是从缓存磁盘服务器中读取。在一个磁盘服务器集群中,一般会部署大量的价格低廉的服务器以及磁盘陈列作为数据磁盘服务器,一台数据磁盘服务器会插入多个磁盘作为磁盘阵列,多台数据磁盘服务器组成一个集群,对用户提供大量的数据存储,用户可以将用户数据存储到数据磁盘服务器的某个或某些磁盘中,并进行管理,且每个用户数据都可以从数据磁盘服务器中读取。缓存磁盘服务器中存储大量当前热点数据,且随着时间的推移热点数据会进行更新,其中热点数据来源于数据磁盘服务器,缓存磁盘服务器一般使用的磁盘性能都比较高,读写速度比较快,较多使用固态硬盘或更高效的磁盘,且也可能使用内存模拟实现硬盘的读写方法作为缓存磁盘服务器中的磁盘块,缓存磁盘服务器也使用磁盘陈列的方式提供服务,且磁盘阵列的输出带宽(磁盘的iops)的总和一定要大于缓存磁盘服务器的输出带宽的能力。
S102、根据所述第一队列中的所有的时间差值和所述第一队列的长度计算第一平均值。
如图2所示,步骤S102的一种具体实现方式可以为:
S201、确定从所述数据磁盘服务器请求数据所花费的时间差值,并将所述时间差值存储至所述第一队列;
S202、将所述第一队列中的所有的时间差值求和,除以所述第一队列的长度得到所述第一平均值。
具体的,当磁盘用户向控制服务器发送请求数据时,控制服务器从数据磁盘服务器获取请求数据所花费的时间差值,并存储到数据磁盘服务器对应的第一队列中,同时淘汰最老的时间差值,然后将第一队列中的所有差值的和除以第一队列的长度,得出第一平均值。
S103、根据所述第二队列中的所有的时间差值和所述第二队列的长度计算第二平均值。
如图3所示,步骤S103的一种具体实现方式可以为:
S301、确定从所述缓存磁盘服务器请求数据所花费的时间差值,并将所述时间差值存储至所述第二队列;
S302、将所述第二队列中的所有的时间差值求和,除以所述第二队列的长度得到所述第二平均值。
具体的,当磁盘用户向控制服务器发送请求数据时,控制服务器从缓存磁盘服务器获取请求数据所花费的时间差值,并存储到缓存磁盘服务器对应的第二队列中,同时淘汰最老的时间差值,然后将第二队列中的所有差值的和除以第二队列的长度,得出第二平均值。
S104、当再次接收所述磁盘用户发送的读取数据请求时,根据所述第一平均值和所述第二平均值确定目标磁盘服务器。
如图4所示,步骤S104的一种具体实现方式可以为:
S401、比较所述第一平均值和所述第二平均值的大小;
S402、当所述第一平均值大于或等于所述第二平均值时,则确定所述目标磁盘服务器为所述缓存磁盘服务器,将读取所花费的时间差值更新至所述缓存磁盘服务器对应的所述第二队列中,并计算新的第二平均值;
S403、当所述第一平均值小于所述第二平均值时,则确定所述目标磁盘服务器为所述数据磁盘服务器,将读取所花费的时间差值更新至所述数据磁盘服务器对应的所述第一队列中,并计算新的第一平均值。
需要说明的是,第一队列和第二队列可能发生以下三种情况:1、用户长时间没有请求;2、用户每次都是从缓存磁盘服务器请求;3、用户每次都是从数据磁盘服务器请求。
为了避免上面三种情况的出现,在存储用户端设置一个定时器,定时器需要按照一定的时间检查两个队列,比如每5秒钟检查一次。在每次检查队列是否在超时时间范围内存在磁盘请求并更新对应的队列,若超时发现没有更新对应磁盘的队列,系统将设置一个当前队列平均值小得多的值(必须要大于等于0)设置到队列中,同时淘汰一个最久的平均值。然后重新计算出新的平均值。如此反复,时间越久,队列所计算出来的平均值就越小,最后趋近于0或等于0。这样处理的好处在于,当时间的流逝,说明以前比较拥挤或繁忙的磁盘服务器(数据磁盘服务器或缓存磁盘服务器)在此时可能比较空闲,新的数据请求需要从相对应的磁盘服务器中请求。通过本实施例可以正常的将缓存磁盘服务器以及数据磁盘服务器的压力进行分担,使得整个磁盘服务器集群的磁盘处于比较均衡的状态。
以上三种情况的出现处理如下:
第一,若用户长时间没有请求数据,则定时器定时将两个队列中的最新差值进行更新,更新方法参见上面所述,最后将两个队列中的平均值计算出趋近于0或等于0,为新的用户请求做准备。
第二,若用户每次都从缓存磁盘请求数据,则说明数据磁盘服务器存在一段时间很忙了,每次从数据磁盘服务器读取的数据都需要花费较长的时间,那么本次需要从缓存服务器中读取数据。但也不能无休止的从缓存磁盘服务器中读取数据,因此,不能等待缓存磁盘服务器读取的时间计算出来的平均值大于从数据磁盘服务器所对应的平均值大的时候才能从数据磁盘服务器读取数据。通过设定的定时器,定时检查数据磁盘服务器对应的队列,若在超时时间范围内没有更新时间差值,则需要将最新的时间差值设置为一个新的值,并计算新的平均值,当新的平均值比缓存磁盘服务器对应的平均值小的时候,下次的数据请求就会转到从数据磁盘服务器中读取。
第三,若用户每次都从数据磁盘请求数据,则说明存在一段时间从缓存服务器读取的数据量比较大,且缓存磁盘服务器处于忙碌状态。这种情况和第二种情况处理方法一样。在超时时间范围内没有更新缓存磁盘服务器对应的队列,则需要通过定时器重新设定新的时间差值,并计算新的平均值。
如此通过上述的调整,磁盘用户就可以实现比较均匀的从缓存磁盘服务器或数据磁盘服务器中读取数据,且不会导致缓存磁盘服务器到达一个比较大的峰值而拥挤,也不会因为数据磁盘服务器的吞吐量的问题导致整个磁盘服务器集群变慢。
本发明实施例提供一种数据处理方法,应用于控制服务器,所述控制服务器设置第一队列和第二队列,所述第一队列用于存储从数据磁盘服务器读取数据的时间差值,所述第二队列用于存储从缓存磁盘服务器读取数据的时间差值,所述时间差值用于表示磁盘用户发起请求读取数据到磁盘读取完毕回复给所述磁盘用户的时间差,通过本发明提供的数据处理方法,当缓存磁盘服务器的输出达到一定的输出能力时,从缓存磁盘服务器读取的数据会增大延迟,通过缓存服务器的延迟来推断缓存服务器比较忙碌,则后续需要从数据磁盘服务器中读取;同样当数据磁盘服务器读取的速度达到了一定的输出延迟,说明数据服务器比较忙碌,下次读取数据的时候需要从缓存磁盘服务器中读取,从而达到缓存磁盘服务器的输出数据的能力和数据磁盘服务器的输出数据的能力均衡,实现对缓存磁盘服务器进行削峰,达到整个服务器集群的最大数据输出能力。
请参阅图5,基于上述实施例公开的一种数据处理方法,本实施例对应公开了一种数据处理装置,具体包括:接收模块501、第一计算模块502、第二计算模块503和确定模块504,其中:
接收模块501,用于接收所述磁盘用户发送的读取数据请求;
第一计算模块502,用于根据所述第一队列中的所有的时间差值和所述第一队列的长度计算第一平均值;
第二计算模块503,用于根据所述第二队列中的所有的时间差值和所述第二队列的长度计算第二平均值;
确定模块504,用于当再次接收所述磁盘用户发送的读取数据请求时,根据所述第一平均值和所述第二平均值确定目标磁盘服务器。
具体的,如图6所示,上述所述第一计算模块502包括:第一存储单元601和第一计算单元602,其中:
第一存储单元601,用于确定从所述数据磁盘服务器请求数据所花费的时间差值,并将所述时间差值存储至所述第一队列;
第一计算单元602,用于将所述第一队列中的所有的时间差值求和,除以所述第一队列的长度得到所述第一平均值。
具体的,如图6所示,所述第二计算模块503包括:第二存储单元603和第二计算单元604,其中:
第二存储单元603,用于确定从所述缓存磁盘服务器请求数据所花费的时间差值,并将所述时间差值存储至所述第二队列;
第二计算单元604,用于将所述第二队列中的所有的时间差值求和,除以所述第二队列的长度得到所述第二平均值。
具体的,如图6所示,所述确定模块504包括:比较单元605、第一确定单元606和第二确定单元607,其中:
比较单元605,用于比较所述第一平均值和所述第二平均值的大小;
第一确定单元606,用于当所述第一平均值大于或等于所述第二平均值时,则确定所述目标磁盘服务器为所述缓存磁盘服务器,将读取所花费的时间差值更新至所述缓存磁盘服务器对应的所述第二队列中,并计算新的第二平均值;
第二确定单元607,用于当所述第一平均值小于所述第二平均值时,则确定所述目标磁盘服务器为所述数据磁盘服务器,将读取所花费的时间差值更新至所述数据磁盘服务器对应的所述第一队列中,并计算新的第一平均值。
本发明实施例提供一种数据处理装置,通过本发明提供的数据处理装置,当缓存磁盘服务器的输出达到一定的输出能力时,从缓存磁盘服务器读取的数据会增大延迟,通过缓存服务器的延迟来推断缓存服务器比较忙碌,则后续需要从数据磁盘服务器中读取;同样当数据磁盘服务器读取的速度达到了一定的输出延迟,说明数据服务器比较忙碌,下次读取数据的时候需要从缓存磁盘服务器中读取,从而达到缓存磁盘服务器的输出数据的能力和数据磁盘服务器的输出数据的能力均衡,实现对缓存磁盘服务器进行削峰,达到整个服务器集群的最大数据输出能力。
所述基于浏览器的数据处理装置包括处理器和存储器,上述接收模块、第一计算模块、第二计算模块和确定模块,等均作为程序模块存储在存储器中,由处理器执行存储在存储器中的上述程序模块来实现相应的功能。
处理器中包含内核,由内核去存储器中调取相应的程序模块。内核可以设置一个或以上,通过均衡缓存磁盘服务器的输出数据的能力和数据磁盘服务器的输出数据的能力,实现对缓存磁盘服务器进行削峰,达到整个服务器集群的最大数据输出能力。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
本发明实施例提供了一种存储介质,其上存储有程序,该程序被处理器执行时实现所述数据处理方法。
本发明实施例提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行所述数据处理方法。
本发明实施例提供了一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现以下步骤:
接收所述磁盘用户发送的读取数据请求;
根据所述第一队列中的所有的时间差值和所述第一队列的长度计算第一平均值;
根据所述第二队列中的所有的时间差值和所述第二队列的长度计算第二平均值;
当再次接收所述磁盘用户发送的读取数据请求时,根据所述第一平均值和所述第二平均值确定目标磁盘服务器。
进一步的,根据所述第一队列中的所有的时间差值和所述第一队列的长度计算第一平均值的步骤,包括:
确定从所述数据磁盘服务器请求数据所花费的时间差值,并将所述时间差值存储至所述第一队列;
将所述第一队列中的所有的时间差值求和,除以所述第一队列的长度得到所述第一平均值。
进一步的,根据所述第二队列中的所有的时间差值和所述第二队列的长度计算第二平均值的步骤,包括:
确定从所述缓存磁盘服务器请求数据所花费的时间差值,并将所述时间差值存储至所述第二队列;
将所述第二队列中的所有的时间差值求和,除以所述第二队列的长度得到所述第二平均值。
进一步的,当再次接收所述磁盘用户发送的读取数据请求时,根据所述第一平均值和所述第二平均值确定目标磁盘服务器的步骤,包括:
比较所述第一平均值和所述第二平均值的大小;
当所述第一平均值大于或等于所述第二平均值时,则确定所述目标磁盘服务器为所述缓存磁盘服务器,将读取所花费的时间差值更新至所述缓存磁盘服务器对应的所述第二队列中,并计算新的第二平均值;
当所述第一平均值小于所述第二平均值时,则确定所述目标磁盘服务器为所述数据磁盘服务器,将读取所花费的时间差值更新至所述数据磁盘服务器对应的所述第一队列中,并计算新的第一平均值。
本文中的设备可以是服务器、PC、PAD、手机等。
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序:
接收所述磁盘用户发送的读取数据请求;
根据所述第一队列中的所有的时间差值和所述第一队列的长度计算第一平均值;
根据所述第二队列中的所有的时间差值和所述第二队列的长度计算第二平均值;
当再次接收所述磁盘用户发送的读取数据请求时,根据所述第一平均值和所述第二平均值确定目标磁盘服务器。
进一步的,根据所述第一队列中的所有的时间差值和所述第一队列的长度计算第一平均值的步骤,包括:
确定从所述数据磁盘服务器请求数据所花费的时间差值,并将所述时间差值存储至所述第一队列;
将所述第一队列中的所有的时间差值求和,除以所述第一队列的长度得到所述第一平均值。
进一步的,根据所述第二队列中的所有的时间差值和所述第二队列的长度计算第二平均值的步骤,包括:
确定从所述缓存磁盘服务器请求数据所花费的时间差值,并将所述时间差值存储至所述第二队列;
将所述第二队列中的所有的时间差值求和,除以所述第二队列的长度得到所述第二平均值。
进一步的,当再次接收所述磁盘用户发送的读取数据请求时,根据所述第一平均值和所述第二平均值确定目标磁盘服务器的步骤,包括:
比较所述第一平均值和所述第二平均值的大小;
当所述第一平均值大于或等于所述第二平均值时,则确定所述目标磁盘服务器为所述缓存磁盘服务器,将读取所花费的时间差值更新至所述缓存磁盘服务器对应的所述第二队列中,并计算新的第二平均值;
当所述第一平均值小于所述第二平均值时,则确定所述目标磁盘服务器为所述数据磁盘服务器,将读取所花费的时间差值更新至所述数据磁盘服务器对应的所述第一队列中,并计算新的第一平均值。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (10)

1.一种数据处理方法,其特征在于,应用于控制服务器,所述控制服务器设置第一队列和第二队列,所述第一队列用于存储从数据磁盘服务器读取数据的时间差值,所述第二队列用于存储从缓存磁盘服务器读取数据的时间差值,所述时间差值用于表示磁盘用户发起请求读取数据到磁盘读取完毕回复给所述磁盘用户的时间差,该方法包括:
接收所述磁盘用户发送的读取数据请求;
根据所述第一队列中的所有的时间差值和所述第一队列的长度计算第一平均值;
根据所述第二队列中的所有的时间差值和所述第二队列的长度计算第二平均值;
当再次接收所述磁盘用户发送的读取数据请求时,根据所述第一平均值和所述第二平均值确定目标磁盘服务器。
2.根据权利要求1所述的方法,其特征在于,根据所述第一队列中的所有的时间差值和所述第一队列的长度计算第一平均值的步骤,包括:
确定从所述数据磁盘服务器请求数据所花费的时间差值,并将所述时间差值存储至所述第一队列;
将所述第一队列中的所有的时间差值求和,除以所述第一队列的长度得到所述第一平均值。
3.根据权利要求1所述的方法,其特征在于,根据所述第二队列中的所有的时间差值和所述第二队列的长度计算第二平均值的步骤,包括:
确定从所述缓存磁盘服务器请求数据所花费的时间差值,并将所述时间差值存储至所述第二队列;
将所述第二队列中的所有的时间差值求和,除以所述第二队列的长度得到所述第二平均值。
4.根据权利要求1所述的方法,其特征在于,当再次接收所述磁盘用户发送的读取数据请求时,根据所述第一平均值和所述第二平均值确定目标磁盘服务器的步骤,包括:
比较所述第一平均值和所述第二平均值的大小;
当所述第一平均值大于或等于所述第二平均值时,则确定所述目标磁盘服务器为所述缓存磁盘服务器,将读取所花费的时间差值更新至所述缓存磁盘服务器对应的所述第二队列中,并计算新的第二平均值;
当所述第一平均值小于所述第二平均值时,则确定所述目标磁盘服务器为所述数据磁盘服务器,将读取所花费的时间差值更新至所述数据磁盘服务器对应的所述第一队列中,并计算新的第一平均值。
5.一种数据处理装置,其特征在于,包括:
接收模块,用于接收磁盘用户发送的读取数据请求;
第一计算模块,用于根据第一队列中的所有的时间差值和所述第一队列的长度计算第一平均值;所述第一计算模块包括:第一存储单元,用于确定从数据磁盘服务器请求数据所花费的时间差值,并将所述时间差值存储至所述第一队列;
第二计算模块,用于根据第二队列中的所有的时间差值和所述第二队列的长度计算第二平均值;所述第二计算模块包括:第二存储单元,用于确定从缓存磁盘服务器请求数据所花费的时间差值,并将所述时间差值存储至所述第二队列;
确定模块,用于当再次接收所述磁盘用户发送的读取数据请求时,根据所述第一平均值和所述第二平均值确定目标磁盘服务器。
6.根据权利要求5所述的装置,其特征在于,所述第一计算模块还包括:
第一计算单元,用于将所述第一队列中的所有的时间差值求和,除以所述第一队列的长度得到所述第一平均值。
7.根据权利要求5所述的装置,其特征在于,所述第二计算模块还包括:
第二计算单元,用于将所述第二队列中的所有的时间差值求和,除以所述第二队列的长度得到所述第二平均值。
8.根据权利要求5所述的装置,其特征在于,所述确定模块包括:
比较单元,用于比较所述第一平均值和所述第二平均值的大小;
第一确定单元,用于当所述第一平均值大于或等于所述第二平均值时,则确定所述目标磁盘服务器为所述缓存磁盘服务器,将读取所花费的时间差值更新至所述缓存磁盘服务器对应的所述第二队列中,并计算新的第二平均值;
第二确定单元,用于当所述第一平均值小于所述第二平均值时,则确定所述目标磁盘服务器为所述数据磁盘服务器,将读取所花费的时间差值更新至所述数据磁盘服务器对应的所述第一队列中,并计算新的第一平均值。
9.一种存储介质,其特征在于,所述存储介质包括存储的程序,
其中,在所述程序运行时控制所述存储介质所在的设备执行如权利要求1-4中任一项所述的数据处理方法。
10.一种处理器,其特征在于,所述处理器用于运行程序,
其中,所述程序运行时执行如权利要求1-4中任一项所述的数据处理方法。
CN201810421758.0A 2018-05-04 2018-05-04 一种数据处理方法及装置 Active CN108628551B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810421758.0A CN108628551B (zh) 2018-05-04 2018-05-04 一种数据处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810421758.0A CN108628551B (zh) 2018-05-04 2018-05-04 一种数据处理方法及装置

Publications (2)

Publication Number Publication Date
CN108628551A CN108628551A (zh) 2018-10-09
CN108628551B true CN108628551B (zh) 2021-06-15

Family

ID=63695473

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810421758.0A Active CN108628551B (zh) 2018-05-04 2018-05-04 一种数据处理方法及装置

Country Status (1)

Country Link
CN (1) CN108628551B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111506254B (zh) * 2019-01-31 2023-04-14 阿里巴巴集团控股有限公司 分布式存储系统及其管理方法、装置
CN111737298B (zh) * 2020-06-19 2024-04-26 中国工商银行股份有限公司 基于分布式存储的缓存数据管控方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102053800A (zh) * 2010-11-26 2011-05-11 华为技术有限公司 数据存取的方法、消息接收解析器及系统
US8239589B1 (en) * 2010-03-31 2012-08-07 Amazon Technologies, Inc. Balancing latency and throughput for shared resources
CN105204785A (zh) * 2015-10-15 2015-12-30 中国科学技术大学 一种基于磁盘i/o队列的磁盘阵列写方式选择方法
CN106909312A (zh) * 2015-12-23 2017-06-30 伊姆西公司 用于控制从存储系统读取数据的方法和装置
CN107615254A (zh) * 2015-05-21 2018-01-19 新加坡科技研究局 混合对象存储设备的高速缓存架构和算法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9990138B2 (en) * 2015-03-31 2018-06-05 Toshiba Memory Corporation Out of order SGL read sorting in a mixed system with PRP read or system that supports only SGL reads

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8239589B1 (en) * 2010-03-31 2012-08-07 Amazon Technologies, Inc. Balancing latency and throughput for shared resources
CN102053800A (zh) * 2010-11-26 2011-05-11 华为技术有限公司 数据存取的方法、消息接收解析器及系统
CN107615254A (zh) * 2015-05-21 2018-01-19 新加坡科技研究局 混合对象存储设备的高速缓存架构和算法
CN105204785A (zh) * 2015-10-15 2015-12-30 中国科学技术大学 一种基于磁盘i/o队列的磁盘阵列写方式选择方法
CN106909312A (zh) * 2015-12-23 2017-06-30 伊姆西公司 用于控制从存储系统读取数据的方法和装置

Also Published As

Publication number Publication date
CN108628551A (zh) 2018-10-09

Similar Documents

Publication Publication Date Title
CN108023742B (zh) 一种应用的扩容方法、装置和系统
JP7127010B2 (ja) リソースの割り当て方法、装置、電子設備、コンピュータ可読媒体およびコンピュータプログラム
EP3419247B1 (en) Method and device for storage resource allocation for video cloud storage
CN110768912B (zh) Api网关限流方法及装置
US9081623B1 (en) Service resource allocation
JP6886964B2 (ja) 負荷平衡方法及び装置
CN110267060B (zh) 视频文件存储注入方法、装置、计算机设备和存储介质
CN112689007B (zh) 资源分配方法、装置、计算机设备和存储介质
CN106657182B (zh) 云端文件处理方法和装置
CN108628551B (zh) 一种数据处理方法及装置
US20190109901A1 (en) Initiator aware data migration
CN111245732A (zh) 一种流量控制方法、装置及设备
CN111562884B (zh) 一种数据存储方法、装置及电子设备
CN111355814A (zh) 一种负载均衡方法、装置及存储介质
CN110764930B (zh) 基于消息模式的请求或应答处理方法及装置
US11132230B2 (en) Managing quality of service in a network file share environment
US10587527B1 (en) Systems and methods for apportioning bandwidth in storage systems
CN107491551B (zh) 一种分布式文件系统实现客户端访问的方法及装置
US10673937B2 (en) Dynamic record-level sharing (RLS) provisioning inside a data-sharing subsystem
US10789008B2 (en) Reducing write collisions in data copy
CN109561123B (zh) 令牌token的缓存方法及装置
CN102696257B (zh) 实现多物理服务器之间温度均衡的方法及装置
CN109257402B (zh) 请求量控制方法及设备
CN114489463A (zh) 动态调整存储卷qos的方法、装置及计算设备
CN114201113B (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
GR01 Patent grant
GR01 Patent grant