一种虚拟化环境下用户数据的读写方法、系统及物理机技术方案

技术编号:10184653 阅读:120 留言:0更新日期:2014-07-03 15:12
本发明专利技术实施例提供一种虚拟化环境下用户数据的读写方法、系统及物理机,其中方法包括:检测各虚拟机是否存在用户数据读写请求;汇集各虚拟机的用户数据读写请求,将读请求加入到读请求队列中,将写请求加入到写请求队列中;当读请求队列,和/或写请求队列中的第一请求地址与第二请求地址的对应度符合预设条件时,按照与预设条件对应的请求队列调整方法,对第一请求地址对应的请求队列进行调整;调取优先级相对高的请求队列中的在前请求,向存储用户数据的服务器发送所调取的请求。本发明专利技术实施例大幅减小了物理机的通信接口和存储用户数据的服务器的读写压力,提高了用户数据的读写效率。

【技术实现步骤摘要】
一种虚拟化环境下用户数据的读写方法、系统及物理机
本专利技术涉及虚拟化技术,更具体地说,涉及一种虚拟化环境下用户数据的读写方法、系统及物理机。
技术介绍
目前虚拟化技术被越来越多的用户所接受,这里所指的虚拟化包含面向最终用户的桌面虚拟化以及面向服务的计算虚拟化;虚拟化技术可以扩大硬件的容量,简化软件的重新配置过程,通过虚拟化技术可以将单CPU(处理器)模拟成多CPU并行,允许一个平台同时运行多个操作系统,如在一台物理计算机上模拟出二台或多台虚拟的计算机(即虚拟机)。在虚拟化应用场景中主要存在两种不同类型的数据:系统数据和用户数据。系统数据是指虚拟机中的操作系统、软件的数据,用户数据是指用户在使用虚拟化系统时所产生的数据,这两类数据通常是分离存储的。现有技术中一种典型的用户数据存储方式是,将用户数据保存在与虚拟机所在物理机不同的服务器上,如将用户数据保存在一种网络文件系统中;通过在虚拟机内安装数据读写客户端,如在虚拟机内安装网络文件系统客户端,在需要进行用户数据读写时,虚拟机与存储用户数据的服务器之间进行通信,实现用户数据的读写,图1为现有技术中虚拟机进行用户数据读写的示意图,可一同参照。在虚拟化应用场景中,虚拟机在进行用户数据读写时,均会通过物理机的通信接口与存储用户数据的服务器进行通信,由于虚拟机调度的不确定性,造成每个虚拟机对通信接口的使用是不公平的,这就造成多台虚拟机对物理机的通信接口的竞争,这使得物理机的通信接口和存储用户数据的服务器存在较大的读写压力,使得用户数据的读写效率较低。
技术实现思路
有鉴于此,本专利技术实施例提供一种虚拟化环境下用户数据的读写方法、系统及物理机,以解决由于多台虚拟机对物理机的通信接口的竞争,而使得物理机的通信接口和存储用户数据的服务器存在较大的读写压力,造成用户数据的读写效率较低的问题。为实现上述目的,本专利技术实施例提供如下技术方案:第一方面,本专利技术实施例提供一种虚拟化环境下用户数据的读写方法,包括:检测各虚拟机是否存在用户数据读写请求;当虚拟机存在用户数据读写请求时,汇集各虚拟机的用户数据读写请求,将读请求加入到读请求队列中,将写请求加入到写请求队列中;当读请求队列,和/或写请求队列中的第一请求地址与第二请求地址的对应度符合预设条件时,按照与预设条件对应的请求队列调整方法,对第一请求地址对应的请求队列进行调整,所述第一请求地址为刚加入读请求队列,和/或写请求队列的请求对应的请求地址,所述第二请求地址为刚加入的请求的在前请求对应的请求地址;检测读请求队列的调取优先级,及写请求队列的调取优先级,调取优先级相对高的请求队列中的在前请求,向存储用户数据的服务器发送所调取的请求。结合第一方面,在第一方面的第一种可能的实现方式中,所述读请求队列,和/或写请求队列中的第一请求地址与第二请求地址的对应度符合预设条件时,按照与预设条件对应的请求队列调整方法,对第一请求地址对应的请求队列进行调整包括:读请求队列中刚加入的读请求所请求的读数据地址,与在前读请求所请求的读数据地址的对应度,符合预设第一条件时,按照预置的与预设第一条件对应的读请求队列调整方法,对读请求队列进行调整;和/或,写请求队列中刚加入的写请求所请求的写数据地址,与在前写请求所请求的写数据地址的对应度,符合预设第二条件时,按照预置的与预设第二条件对应的写请求队列调整方法,对写请求队列进行调整。结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述刚加入的读请求所请求的读数据地址,与在前读请求所请求的读数据地址的对应度,符合预设第一条件包括:刚加入的读请求所请求的读数据地址,与在前读请求所请求的读数据地址相同,或相连续,或同属于一个文件地址,所述文件地址对应的文件承载有多个数据;所述按照预置的与预设第一条件对应的读请求队列调整方法,对读请求队列进行调整包括:当刚加入的读请求所请求的读数据地址,与在前读请求所请求的读数据地址相同时,将刚加入的读请求合并到所述在前读请求中,形成具有相同读数据地址的同一请求;或,当刚加入的读请求所请求的读数据地址,与在前读请求所请求的读数据地址连续时,将刚加入的读请求所请求的读数据地址与所述在前读请求所请求的读数据地址,按照地址的连续顺序进行叠加,将刚加入的读请求和所述在前读请求合并成具有叠加地址的请求;或,当刚加入的读请求所请求的读数据地址,与在前读请求所请求的读数据地址同属于一个文件地址时,对读请求队列进行重排,将刚加入的读请求的排序调整到所述在前读请求之后,使得所述读请求队列中同属于一个文件地址的读请求的排序连续。结合第一方面的第一种可能的实现方式,在第三种可能的实现方式中,所述刚加入的写请求所请求的写数据地址,与在前写请求所请求的写数据地址的对应度,符合预设第二条件包括:刚加入的写请求所请求的写数据地址,与在前写请求所请求的写数据地址相同,或相连续,或同属于一个文件地址,所述文件地址对应的文件承载有多个数据;所述按照预置的与预设第二条件对应的写请求队列调整方法,对写请求队列进行调整包括:当刚加入的写请求所请求的写数据地址,与在前写请求所请求的写数据地址相同时,将刚加入的写请求合并到所述在前写请求中,形成具有相同写数据地址的同一请求;或,当刚加入的写请求所请求的写数据地址,与在前写请求所请求的写数据地址连续时,将刚加入的写请求所请求的写数据地址与所述在前写请求所请求的写数据地址,按照地址的连续顺序进行叠加,将刚加入的写请求和所述在前写请求合并成具有叠加地址的请求;或,当刚加入的写请求所请求的写数据地址,与在前写请求所请求的写数据地址同属于一个文件地址时,对写请求队列进行重排,将刚加入的写请求的排序调整到所述在前写请求之后,使得所述写请求队列中同属于一个文件地址的写请求的排序连续。第二方面,本专利技术实施例提供一种虚拟化环境下用户数据的读写系统,包括:请求检测模块,用于检测各虚拟机是否存在用户数据读写请求;请求汇集模块,用于在虚拟机存在用户数据读写请求时,汇集各虚拟机的用户数据读写请求;请求列队模块,用于将用户数据读写请求中的读请求加入到读请求队列中,将写请求加入到写请求队列中;请求队列调整模块,用于在读请求队列,和/或写请求队列中的第一请求地址与第二请求地址的对应度符合预设条件时,按照与预设条件对应的请求队列调整方法,对第一请求地址对应的请求队列进行调整,所述第一请求地址为刚加入读请求队列,和/或写请求队列的请求对应的请求地址,所述第二请求地址为刚加入的请求的在前请求对应的请求地址;请求调取模块,用于检测读请求队列的调取优先级,及写请求队列的调取优先级,调取优先级相对高的请求队列中的在前请求,向存储用户数据的服务器发送所调取的请求。第三方面,本专利技术实施例提供一种物理机,包括:处理器,通信接口,存储器和通信总线;其中所述处理器、所述通信接口、所述存储器通过所述通信总线完成相互间的通信;所述通信接口,用于获取所述处理器调取的用户数据读写请求,向存储用户数据的服务器发送该读写请求;所述处理器,用于执行程序;所述存储器,用于存放程序;其中程序用于:检测各虚拟机是否存在用户数据读写请求;当虚拟机存在用户数据读写请求时,汇集各虚拟机的用户数据读写请求,将读请求加入到读请求队列中,将写请求加本文档来自技高网...
一种虚拟化环境下用户数据的读写方法、系统及物理机

【技术保护点】
一种虚拟化环境下用户数据的读写方法,其特征在于,包括:检测各虚拟机是否存在用户数据读写请求;当虚拟机存在用户数据读写请求时,汇集各虚拟机的用户数据读写请求,将读请求加入到读请求队列中,将写请求加入到写请求队列中;当读请求队列,和/或写请求队列中的第一请求地址与第二请求地址的对应度符合预设条件时,按照与预设条件对应的请求队列调整方法,对第一请求地址对应的请求队列进行调整,所述第一请求地址为刚加入读请求队列,和/或写请求队列的请求对应的请求地址,所述第二请求地址为刚加入的请求的在前请求对应的请求地址;检测读请求队列的调取优先级,及写请求队列的调取优先级,调取优先级高的请求队列中的在前请求,向存储用户数据的服务器发送所调取的请求。

【技术特征摘要】
1.一种虚拟化环境下用户数据的读写方法,其特征在于,包括:检测各虚拟机是否存在用户数据读写请求;当虚拟机存在用户数据读写请求时,汇集各虚拟机的用户数据读写请求,将读请求加入到读请求队列中,将写请求加入到写请求队列中;当读请求队列,和/或写请求队列中的第一请求地址与第二请求地址的对应度符合预设条件时,按照与预设条件对应的请求队列调整方法,对第一请求地址对应的请求队列进行调整,所述第一请求地址为刚加入读请求队列,和/或写请求队列的请求对应的请求地址,所述第二请求地址为刚加入的请求的在前请求对应的请求地址;检测读请求队列的调取优先级,及写请求队列的调取优先级,调取优先级高的请求队列中的在前请求,向存储用户数据的服务器发送所调取的请求;其中,所述读请求队列,和/或写请求队列中的第一请求地址与第二请求地址的对应度符合预设条件时,按照与预设条件对应的请求队列调整方法,对第一请求地址对应的请求队列进行调整包括:读请求队列中刚加入的读请求所请求的读数据地址,与在前读请求所请求的读数据地址的对应度,符合预设第一条件时,按照预置的与预设第一条件对应的读请求队列调整方法,对读请求队列进行调整;和/或,写请求队列中刚加入的写请求所请求的写数据地址,与在前写请求所请求的写数据地址的对应度,符合预设第二条件时,按照预置的与预设第二条件对应的写请求队列调整方法,对写请求队列进行调整;其中,所述刚加入的读请求所请求的读数据地址,与在前读请求所请求的读数据地址的对应度,符合预设第一条件包括:刚加入的读请求所请求的读数据地址,与在前读请求所请求的读数据地址相同,或相连续,或同属于一个文件地址,所述文件地址对应的文件承载有多个数据;所述按照预置的与预设第一条件对应的读请求队列调整方法,对读请求队列进行调整具体包括:当刚加入的读请求所请求的读数据地址,与在前读请求所请求的读数据地址相同时,将刚加入的读请求合并到所述在前读请求中,形成具有相同读数据地址的同一请求;或,当刚加入的读请求所请求的读数据地址,与在前读请求所请求的读数据地址连续时,将刚加入的读请求所请求的读数据地址与所述在前读请求所请求的读数据地址,按照地址的连续顺序进行叠加,将刚加入的读请求和所述在前读请求合并成具有叠加地址的请求;或,当刚加入的读请求所请求的读数据地址,与在前读请求所请求的读数据地址同属于一个文件地址时,对读请求队列进行重排,将刚加入的读请求的排序调整到所述在前读请求之后,使得所述读请求队列中同属于一个文件地址的读请求的排序连续。2.根据权利要求1所述的方法,其特征在于,所述刚加入的写请求所请求的写数据地址,与在前写请求所请求的写数据地址的对应度,符合预设第二条件包括:刚加入的写请求所请求的写数据地址,与在前写请求所请求的写数据地址相同,或相连续,或同属于一个文件地址,所述文件地址对应的文件承载有多个数据;所述按照预置的与预设第二条件对应的写请求队列调整方法,对写请求队列进行调整具体包括:当刚加入的写请求所请求的写数据地址,与在前写请求所请求的写数据地址相同时,将刚加入的写请求合并到所述在前写请求中,形成具有相同写数据地址的同一请求;或,当刚加入的写请求所请求的写数据地址,与在前写请求所请求的写数据地址连续时,将刚加入的写请求所请求的写数据地址与所述在前写请求所请求的写数据地址,按照地址的连续顺序进行叠加,将刚加入的写请求和所述在前写请求合并成具有叠加地址的请求;或,当刚加入的写请求所请求的写数据地址,与在前写请求所请求的写数据地址同属于一个文件地址时,对写请求队列进行重排,将刚加入的写请求的排序调整到所述在前写请求之后,使得所述写请求队列中同属于一个文件地址的写请求的排序连续。3.根据权利要求1至2任一项所述的方法,其特征在于,所述将写请求加入到写请求队列中包括:缓存写请求对应的待写数据,将包含待写数据对应的写数据地址的写请求加入到写请求队列中;所述向存储用户数据的服务器发送所调取的写请求具体包括:调取所缓存的待写数据,向存储用户数据的服务器发送,包含所述待写数据及所述待写数据对应的写数据地址的写请求。4.根据权利要求3所述的方法,其特征在于,所述方法还包括:在缓存写请求对应的待写数据,将包含待写数据对应的写数据地址的写请求加入到写请求队列之后,向写请求对应的虚拟机返回写请求完成响应。5.根据权利要求1至2任一项所述的方法,其特征在于,在汇集各虚拟机的用户数据读写请求之后,还包括:检测所汇集的读请求所请求读的数据,与预先缓存和/或预先调取的用户数据是否相对应;在所汇集的读请求所请求读的用户数据,与预先缓存和/或预先调取的用户数据相对应时,向对应的虚拟机返回读请求完成响应,调取预先缓存和/或预先调取的对应数据给对应的虚拟机。6.根据权利要求1所述的方法,其特征在于,所述检测读请求队列的调取优先级,及写请求队列的调取优先级包括:检测读请求队列的读请求个数,及写请求队列的写请求个数;当读请求个数大于写请求个数,且差值不大于预设第一阈值时,或读请求个数小于写请求个数时,确定读请求队列的调取优先级大于写请求队列的调取优先级;当读请求个数大于写请求个数,且差值大于预设第一阈值时,确定读请求队列的调取优先级小于写请求队列的调取优先级;所述调取优先级相对高的请求队列中的在前请求,向存储用户数据的服务器发送所调取的请求包括:在读请求队列的调取优先级大于写请求队列的调取优先级时,调取读请求队列中的在前读请求,向存储用户数据的服务器发送所调取的读请求;在读请求队列的调取优先级小于写请求队列的调取优先级时,调取写请求队列中的在前写请求,向存储用户数据的服务器发送所调取的写请求。7.根据权利要求1、2、4、或6所述的方法,其特征在于,还包括:检测读请求队列中的读请求个数;若读请求个数大于预设第二阈值,则按照预置的读请求响应时间期限,推迟向虚拟机返回读请求队列中预设个数的读请求的读请求完成响应。8.一种虚拟化环境下用户数据的读写系统,其特征在于,包括:请求检测模块,用于检测各虚拟机是否存在用户数据读写请求;请求汇集模块,用于在虚拟机存在用户数据读写请求时,汇集各虚拟机的用户数据读写请求;请求列队模块,用于将用户数据读写请求中的读请求加入到读请求队列中,将写请求加入到写请求队列中;请求队列调整模块,用于在读请求队列,和/或写请求队列中的第一请求地址与第二请求地址的对应度符合预设条件时,按照与预设条件对应的请求队列调整方法,对第一请求地址对应的请求队列进行调整,所述第一请求地址为刚加入读请求队列,和/或写请求队列的请求对应的请求地址,所述第二请求地址为刚加入的请求的在前请求对应的请求地址;请求调取模块,用于检测读请求队列的调取优先级,及写请求队列的调取优先级,调取优先级相对高的请求队列中的在前请求,向存储用户数据的服务器发送所调取的请求;其中,所述请求队列调整模块包括:读请求队列调整单元,用于在刚加入的读请求所请求的读数据地址,与在前读请求所请求的读数据地址的对应度,符合预设第一条件时,按照预置的与预设第一条件对应的读请求队列调整方法,对读请求队列进行调整;和/或,写请求队列调整单元,用于在刚加入的写请求所请求的写数据地址,与在前写请求所请求的写数据地址的对应度,符合预设第二条件时,按照预置的与预设第二条件对应的写请求队列调整方法,对写请求队列进行调整;其中,所述读请求队列调整单元包括:预设第一条件判断子单元,用于判断刚加入的读请求所请求的读数据地址,与在前读请求所请求的读数据地址是否相同,或是否相连续,或是否同属于一个文件地址,所述文件地址对应的文...

【专利技术属性】
技术研发人员:马久跃姜继陈克平熊劲
申请(专利权)人:华为技术有限公司中国科学院计算技术研究所
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1