虚拟存储系统和方法技术方案

技术编号:3852662 阅读:252 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及虚拟存储系统及方法,系统包括主缓存和预取缓存,主缓存和预取缓存,负载分析模块,用于收集到达系统的应用负载,分析得出应用负载的数据块关系信息,发送数据块关系信息;数据预取模块,用于接收数据块关系信息,根据数据块关系信息预测将被应用程序访问的数据,该数据为待访问的数据,将待访问的数据从低速存储设备预取到预取缓存;缓存替换模块,用于接收数据块关系信息,接收应用层的输入输出请求,在主缓存、预取缓存和低速存储设备中查找并读取对应数据,并根据数据块关系信息预测数据块被预取的概率,按概率将数据块存储到主缓存的对应位置。本发明专利技术能够对复杂应用环境自适应,根据应用负载的变化而调整。

【技术实现步骤摘要】

本专利技术涉及信息存储
,尤其涉及。
技术介绍
随着虚拟存储技术的不断发展,存储系统逐渐成为网络服务器系统的主 要瓶颈。网络存储系统主要通过虚拟存储技术向外部提供高性能的数据服务。 传统的系统通过对应用负载进行分析,在线根据负载的变化对系统状态进行 相应调整进行性能优化。对负载特征的描述包括区分读写操作、访问频率、 应用需要的带宽和响应延迟、访问区域等。根据获取的负载特征可以对数据 通路上的数据传输和存放策略进行设计,如缓存和磁盘调度,从而优化存储 系统的性能。但是,传统的虚拟存储系统的分析仅局限于简单特征描述或性能需求描 述,存在以下问题存储系统的应用具有多样性、复杂性和不稳定性,使用简单负载特征难 以对其进行精确持久有效的描述,无法进一步发现应用负载的潜在语义特征, 限制了存储系统的优化潜力。分析简单负载特征所使用的统计方法对复杂语义特征进行分析的开销难 以被实际系统接受。分析过程所占用的系统资源和造成的开销远远超过优化 带来的好处。
技术实现思路
本专利技术的目的在于,提供一种,能够对复杂应用环境自适应,根据应用负载的变化而调整。本专利技术公开了一种虚拟存储系统,所述系统包括主缓存和预取缓存, 负载分析模块,用于收集到达所述系统的应用负载,分析得出所述应用负载的数据块关系信息,发送所述数据块关系信息;数据预取模块,用于接收所述数据块关系信息,根据所述数据块关系信 息预测将被应用程序访问的数据,该数据为待访问的数据,将所述待访问的数据从低速存储设备预取到预取缓存;缓存替换模块,用于接收所述数据块关系信息,接收应用层的输入输出 请求,在主缓存、所述预取缓存和所述低速存储设备中査找并读取对应数据, 并根据所述数据块关系信息预测数据块被预取的概率,按所述概率将所述数 据块存储到所述主缓存的对应位置。所述低速存储设备为磁盘,所述系统还包括,数据分布模块,用于接收 所述数据块关系信息,将同一数据块关系的数据块存放到磁盘上同一个磁道 的相邻扇区。所述负载分析模块进一步用于接收应用层的输入输出请求,以收集到达 所述系统的应用负载;并对预设时长内的应用负载进行挖掘,获取所述数据 块关系信息。所述负载分析模块在对预设时长内的应用负载进行挖掘,获取所述数据 块关系信息时进一步用于采用支持噪音过滤的数据块关系挖掘方法对预设时 长内的应用负载进行挖掘,生成频繁模式树,所述频繁模式树为所述数据块 关系信息的集合。所述数据预取模块进一步用于在应用层的一个输入输出请求到达时,将 当前应用负载中出现的请求序列和频繁模式树中的所有前缀进行匹配,对同 所述请求序列相同的前缀在所述频繁模式树中的后继数据块进行预取。所述缓存替换模块进一步用于当应用层的一个输入输出请求到达时,根 据所述输入输出请求的地址在所述主缓存中查找请求对应数据块,如果查找 到,则将对应的数据块返回所述应用;如果未査找到对应的数据块,则从所 述预取缓存或者通过所述数据分布模块从磁盘中读入对应数据块,并根据所 述数据块关系信息预测数据块被预取的概率,按所述概率将所述数据块存储 到主缓存的对应位置。所述缓存替换模块在根据所述数据块关系信息预测数据块被预取的概 率,按所述概率将所述数据块存储到主缓存的对应位置时进一步用于将访问 所述数据块的请求中出现在符合数据块关系的请求序列中的请求的数量占请 求总数量的比例作为被预取的概率,如果所述概率超过第一阀值,则将所述数据块存放到最近最少使用端;如果所述概率小于第二阀值,则将所述数据 块存放到最近最多使用端;如果所述概率在所述第一阀值和所述第二阀值之 间,则判断当前对所述数据块的请求是否出现在符合数据块关系的请求序列 的前缀中,如果是,则被存放到最近最少使用端,否则,存放到最近最多使 用端;所述第一阀值大于所述第二阔值。所述数据分布模块还用于对于在多个数据块关系中存在的数据块,在磁 盘上存放所述数据块多个副本;当接收到所述缓存替换模块或所述数据预取 模块发送的对所述数据块的输入输出请求时,选择距离磁头最近的副本进行 访问。所述负载分析模块还用于在生成频繁模式树时,对所述频繁模式树中具 有相同或满足相似条件的请求集合的结点进行合并。本专利技术还公开了一种虚拟存储方法,所述方法包括步骤100,收集到达的应用负载,分析得出所述应用负载的数据块关系 信息,发送所述数据块关系信息;步骤200,接收所述数据块关系信息,根据所述数据块关系信息预测将 被应用程序访问的数据,该数据为待访问的数据,将所述待访问的数据从低 速存储设备预取到预取缓存;步骤300,接收所述数据块关系信息,接收应用层的输入输出请求,在 主缓存、所述预取缓存和所述低速存储设备中查找并读取对应数据,并根据 所述数据块关系信息预测数据块被预取的概率,按所述概率将所述数据块存 储到主缓存的对应位置。所述低速存储设备为磁盘,所述方法还包括步骤400,接收所述数据块关系信息,将一个数据块关系的数据块存放 到磁盘上同一个磁道的相邻扇区。 所述步骤100进一步为,步骤IIO,接收应用层的输入输出请求,以收集到达的应用负载;步骤120,对预设时长内的应用负载进行挖掘,获取所述数据块关系信必o所述步骤120进一步为,步骤121,采用支持噪音过滤的数据块关系挖掘方法对预设时长内的应 用负载进行挖掘,生成频繁模式树,所述频繁模式树为所述数据块关系信息 的集合。所述步骤200进一步为,步骤210,在应用的一个输入输出请求到达时,将当前应用负载中出现 的请求序列和频繁模式树中的所有前缀进行匹配,对同所述请求序列相同的 前缀在所述频繁模式树中的后继数据块进行预取。所述步骤300进一步为,步骤310,当应用的一个输入输出请求到达时,根据所述输入输出请求 的地址在缓存中査找,如果查找到,则将对应的数据块返回所述应用;如果 未査找到对应的数据块,则执行步骤320;步骤320,从预取缓存或者从磁盘中读入对应数据块,并根据所述数据 块关系信息预测数据块被预取的概率,按所述概率将所述数据块存储到主缓 存的对应位置。所述步骤320进一步为,步骤321,将访问所述数据块的请求中出现在符合数据块关系的请求序 列中的请求的数量占请求总数量的比例作为被预取的概率;步骤322,如果所述概率超过第一阀值,则将所述数据块存放到最近最 少使用端;步骤323,如果所述概率小于第二阀值,则将所述数据块存放到最近最 多使用端;步骤324,如果所述概率在所述第一阀值和所述第二阀值之间,则判断 当前对所述数据块的请求是否出现在符合数据块关系的请求序列的前缀中, 如果是,则被存放到最近最少使用端,否则,存放到最近最多使用端;所述第一阀值大于所述第二阀值。所述步骤400还包括,步骤410,对于在多个数据块关系中存在的数据块,在磁盘上存放所述 数据块多个副本;步骤420,当接收到所述缓存替换模块或所述数据预取模块发送的对所 述数据块的输入输出请求时,选择距离磁头最近的副本进行访问。所述歩骤100还包括,步骤130,在生成频繁模式树时,对所述频繁模式树中具有相同或满足 相似条件的请求集合的结点进行合并。本专利技术有益效果在于,通过分析获得应用负载数据块关系信息,并根据 该关系信息进行预取和存储,能够在复杂应用环境下自适应根据应用负载的 变化对整条数据本文档来自技高网...

【技术保护点】
一种虚拟存储系统,所述系统包括主缓存和预取缓存,其特征在于,所述系统还包括: 负载分析模块,用于收集到达所述系统的应用负载,分析得出所述应用负载的数据块关系信息,发送所述数据块关系信息; 数据预取模块,用于接收所述数据块关系信息 ,根据所述数据块关系信息预测将被应用程序访问的数据,该数据为待访问的数据,将所述待访问的数据从低速存储设备预取到预取缓存; 缓存替换模块,用于接收所述数据块关系信息,接收应用层的输入输出请求,在主缓存、所述预取缓存和所述低速存储设备中 查找并读取对应数据,并根据所述数据块关系信息预测数据块被预取的概率,按所述概率将所述数据块存储到所述主缓存的对应位置。

【技术特征摘要】

【专利技术属性】
技术研发人员:朱旭东石兴杰许鲁张建刚韩晓明
申请(专利权)人:中国科学院计算技术研究所天津中科蓝鲸信息技术有限公司
类型:发明
国别省市:11[中国|北京]

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

1