基于云存储平台的媒体数据高效访问预取方法

文档序号:8457110阅读:293来源:国知局
基于云存储平台的媒体数据高效访问预取方法
【技术领域】
[0001]本发明涉及数据传输技术领域,特别是一种基于云存储平台的媒体数据高效访问预取方法。
【背景技术】
[0002]随着云存储技术的发展,用户越来习惯于将自己的个人数据放在云端上,其中媒体数据占用了相当大的比例,包括JPG、PNG等格式的照片,MP3、WAV、APE等格式的音频文件以及AV1、MKV、RMVB等格式的视频文件。
[0003]与一般数据相比,媒体数据具有两个个重要的特点:1、读操作请求远远大于写操作请求,针对视频等大文件基本不存在写操作请求。用户习惯于直接在云端访问媒体数据,而不是通过某种方式下载到本地再访问。2、文件的访问序列存在一定的规律性,如视频的读取操作往往是顺序的。媒体数据的这些特点决定了为其设计专门高效访问框架的必要性,具体应包括预取和缓存技术的应用。
[0004]为了提高云端数据的访问效率,开发者一般采取预取和缓存策略相结合的方式。其中的关键在于维持一个滑动的窗口,提前将数据从服务器端下载下来并缓存。当有新的读请求发生时,若请求的数据范围落在预取的窗口内或者已经缓存的数据范围内,则本次请求就可以避免网络操作,直接从本地读取,从而将本次操作的时间开销降低了一个甚至几个数量级。采用这项技术的传统做法往往是在访问云端数据的客户端实现一个精妙的预取算法配合着缓存管理一起使用,从而达到提高数据访问速度的问题。鉴于用户操作的复杂性、文件类型的多样性以及预取无效的开销,在算法设计的时候人们往往从文件的底层访问序列出发,并试着用已有的底层访问信息预测下一次的读请求。然而这种做法存在着以下问题:一、首先由于算法是固定在客户端的,通用的,难以根据用户的个人情况给予调整和定制。二、为了尽可能的避免开销,只考虑底层文件访问序列并针对所有类型文件的通用识别框架往往只能分辨出特定情况下的读请求,使得一些本可预取的情况被忽略。因此,如何充分利用云环境下的文件特性、文件底层访问序列和用户信息提高访问云端媒体数据的效率是云存储领域需要解决的一个技术问题。

【发明内容】

[0005]本发明所要解决的技术问题是:在云存储环境下充分利用媒体数据的文件特性、文件底层访问序列和用户信息制定出高校的数据访问策略,提高用户访问速度和体验。为解决以上技术问题,本发明采用如下技术方案,一种基于云存储平台的媒体数据高效访问预取方法,其特征在于,包括:
[0006]步骤1.建立数据访问策略服务器,所述数据访问策略服务器包括序列分析模块和策略生产模块,所述序列分析模块和策略生产模块根据用户ID、文件类型和当前状态生产访问策略文件的服务;
[0007]步骤2.客户端初始化策略管理模块,根据用ID、文件类型向所述策略服务器请求访问策略;
[0008]步骤3.客户端解析策略文件,并根据解析后的策略文件初始化缓存管理、序列分析相关参数;
[0009]步骤4.客户端处理用户请求,并根据具体情况从缓存中读取数据或从服务器端读取数据,同时依据之前请求的策略决定向服务器端请求数据;
[0010]步骤5.打包上传本地文件访问日志。
[0011]步骤I中所述序列分析模块负责对以往操作日志的分析,所述操作日志包括用户上传的日志和开发者生产的没有跳跃情况下的的访问序列日志;在进行日志分析后,所述策略服务器生成针对每一类文件的相关参数,所述策略服务器按照文件后缀来进行区分;得到的相关参数包括文件分类、当前每次网络请求建议块大小、特殊预取区间和通用预取算法。
[0012]所述序列分析模块在分析过程中,用哈希表记录每次访问的位移空间,统计各个区间出现的频率和变化规律,如果某非连续区间出现10%以上则将其归为特殊预存空间。
[0013]所述特殊预取空间是一个四元组,包括开始位移、结束位移和建议预取开始位移和建议预取结束位移;当请求的位移落在特殊预取空间时将按照建议预取开始位移和建议预取结束位移进行预取,其中建议开始预取空间和建议结束预取空间为序列中本特殊空间的下一个元素。
[0014]客户端在收到访问文件请求后会检查本地是否存在该类后缀文件的访问策略,如不存在则会向策略服务器请求,在得到策略文件返回来的信息后,客户端会为该文件初始化缓存管理器即分配一个哈希表结构,其中key为位移,value为布尔值,这些key-value对全部存在内存当中。
[0015]所述通用预取算法主要针对顺序访问和交织访问,随机访问不在支持的访问内,其中顺序访问维持一个预取窗口而预取访问维持两个预取窗口。
[0016]所述预取窗口分为若干预取块,所述预取块大小是由策略服务器得到的日志中取该类型文件请求次数最多的数据块的大小决定。
[0017]步骤4的客户端处理用户请求,具体包括以下步骤:
[0018](I)、根据用户请求的数据块是否存在于本地缓存,若数据块存在本地缓存中则直接将数据返回;
[0019](2)、更新文件访问序列并记录,检查是否触发预取,若触发预取则计算出要取得的数据块;
[0020](3)、根据以上计算得到的应取数据块,到数据服务器取数据;
[0021](4)、将取得数据返回上层,更新缓存管理和预取窗口。
[0022]所述预取触发条件分为初次触发条件和非初次触发,所述初次触发条件其特征在于最近10次访问不在预取窗口或者特殊预取窗口内,同时是连续递增的;所述非初次触发条件在于最近一次访问位于预取窗口内,同时预取窗口剩余大小小于规定值;
[0023]优选的,预取窗口随着最近连续命中次数的增加而增大,其增长规律为:在连续命中预取窗口次数*预取块大小,512*预取块大小中取较小值,当出现一次不命中的时候预取窗口减为O。
[0024]步骤5中上传本地文件访问日志是将如下信息打包上传:具体的上传信息包括用户ID、完整的文件名、文件大小的元数据信息以及文件访问记录,每条记录包括时间、请求数据块的位移和大小。
[0025]本发明的积极效果是:
[0026]本发明提供了一种基于云存储平台的媒体数据高效访问方法,针对媒体数据特点和云存储的特定应用场景,设计了一个不断优化的、易于提升的数据访问策略生成机制,综合考虑上层统计信息和下层访问序列制定出了一个准确的预取算法,配合本地的缓存管理,提高了访问媒体数据的速度和体验。
【附图说明】
[0027]图1本发明整体架构图;
[0028]图2预取窗口示意图。
【具体实施方式】
[0029]为了使本发明的目的、技术方案和优点更加清楚明白,下面结合【具体实施方式】,对本发明做进一步详细说明。在此,本发明的示意性实施方式及其说明用于解释本发明,但并不作为对本发明的限定。
[0030]实施例1:
[0031]根据图1本发明实施例所述云存储平台下媒体数据高效访问方法整体架构图,该方法包括以下步骤:
[0032]步骤一、建立数据访问策略服务器。主要包括序列分析模块和策略生成算法,提供根据用户ID、文件类型和当前状态生成访问策略文件的服务。
[0033]步骤二、客户端初始化客户端的策略管理模块,根据用户ID、文件类型向策略服务器请求访问策略。
[0034]步骤三、客户端解析策略文件,并根据其初始化缓存管理、序列分析相关参数。
[0035]步骤四、客户端处理用户请求,并根据具体情况从缓存中读取数据或从服
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1