260 likes | 405 Views
研究生园地之四. 文件访问预测. Aigui.LIU. CC-IHEP 2007-07-13. 主要内容. 文件访问预测概述 相关研究工作介绍 我的研究进展. 文件访问预测概述(1). 现实中存在的问题 处理器与 I/O 存在速度鸿沟 网络带宽的限制,特别是无线移动网络 网络应用的断连操作,如移动计算、 AFS 导致数据访问的延迟 I/O 和网络成为性能的瓶颈. 文件访问预测概述(2). 两种解决的办法 缓存( Cache)
E N D
研究生园地之四 文件访问预测 Aigui.LIU CC-IHEP 2007-07-13
主要内容 • 文件访问预测概述 • 相关研究工作介绍 • 我的研究进展
文件访问预测概述(1) • 现实中存在的问题 • 处理器与I/O存在速度鸿沟 • 网络带宽的限制,特别是无线移动网络 • 网络应用的断连操作,如移动计算、AFS • 导致数据访问的延迟 • I/O和网络成为性能的瓶颈
文件访问预测概述(2) • 两种解决的办法 • 缓存(Cache) 被动方式,利用数据访问的时间局部性,对访问过的数据进行暂时的保留。但由于缓存空间大小以及更新算法的制约,当数据频繁更新时,缓存带来的性能改善不再显著。 • 预取(Pre-fetch) 主动方式,利用数据访问的空间局部性,对将来可能发生的数据请求进行预测,在访问之前取出并Cache,以备用户访问,从而减少访问延迟。 • 预取的缺陷 • 影响正常的数据访问负载 • 错误的预取会降低整个系统性能 • 很难做到精确地预测并在需要时完成预取
文件访问预测概述(3) • 预取的基础是预测 • 预测有效的依据 • 数据请求并非完全随机,由用户或程序行为驱动 • 数据之间存在内在的关联 • 预测的关键 • 挖掘数据访问行为模式 • 构建数据之间的关联分组、聚类
文件访问预测概述(4) • 预取的基本思想 通过对数据本体或历史访问记录的分析,构造合适的预测模型,对未来的访问模式进行预测,在访问之前取出并缓存,以备用户访问,减少访问延迟。 • 预取的两种方法 • 基于预测的预取(显式) 精确的预测模型,尽量减少错误预测,平滑预取 • 基于分组的预取(隐式) 构建稳定数据分组,适用于比较稳定的访问模式 • 相关理论和技术 • 概率统计、模式挖掘、机器学习、数据分组和聚类等
相关研究工作介绍(1) • Markov预测模型 • 假设:数据请求具有齐次马尔可夫链特征 • 马尔可夫性 • 历史无关性,即在已知“现在”的条件下,“过去”和将来是相互独立的,未来状态仅于现在所处的状态有关,与过去的状态无关。 • P{ X(n+1) = j | X(0) = i0, … ,X(n) = in } = P {X(n+1) = j |X(n) = in } • 模型定义 • MC = (X, A, λ) • 其中,X为随机变量,x对应一个文件,称为一个状态;A为转移概率矩阵;λ为初始状态分布, • 构造转移矩阵 • 根据历史日志计算转移概率 • K步转移概率 • P(m)=P(m-1)P(1) = (P(1) )n
相关研究工作介绍(2) • 基于历史事件的预测模型 • 基本思想 • 文件访问序列与文本压缩轨迹的跟踪方法相似,借鉴数据压缩建模技术,基于上下文匹配和相似度阈值来对数据访问事件进行预测。 • 存在问题 • Order的大小,空间复杂度、时间复杂度 • 几种模型 • FMOCM (Finite Multi-Order Context Modeling) • PCM (Partitioned Context Modeling) • EPCM (Extended PCM)
相关研究工作介绍(3) • N元访问路径预测模型 • 自然语言中n元语言模型 n元概率预测模型 • N元预测模型 • 基于对请求频率的统计,建立一张以n元项为索引的预测表,记会话中出现在n元项后面的m个不同的请求出现在次数,并以此计算其条件概率。 • N值大小的确定 • 2元模型,仅基于当前请求,只利用了整个用户会话很少的信息,预测精度不高,但模型简单,适合于实际使用。 • 多元模型,利用了用户访问的一定长度的路径信息,得到更高的预测精确度,但通常模型复杂,实用性能不好。 f1 f2 … fm f1 f2 … fn m个后继 N元索引
相关研究工作介绍(4) • 基于事务(Session)的预测模型 • 一次程序运行、网页浏览等称之为一个事务 • 基本思想 • 对事务进行聚类,并计算每个类别的聚类中心 • 计算当前事务的事务特征,并据此进行分类 • 根据同类事务的信息对访问模式进行预测 • 聚类算法 • K-均值聚类算法、层次聚类算法、模糊聚类算法等 • 主要应用于WEB预测 • 页面本体信息,提取兴趣特征 • 访问频率、浏览时间、页面顺序,提取事务特征 • 利用兴趣对用户的行为进行预测
相关研究工作介绍(5) • 基于流行度的预测模型 • Zipf定律 • 第一定律(高频):Pi = C / ia 一个对象的访问频度值与其位次之间在关系表现幂函数关系 • 第二定律(低频):In / I1 = 2 / n (n+1) 可以估算,1次占50%,2次占17%,3次点8.3% • 流行度模型 • 访问频率高的对象,用Zipf第一定律建模 • 访问频率低的对象,用Zipf第二定律建模 • 将流行度高的对象预取到Cache,提高命中率 • 设置一个合适的阈值 • 去除访问频率低的噪音数据的干扰 • 往往需要和其他预测模型综合使用
相关研究工作介绍(6) • LS及其改进预测模型 • LS (Last Successor) • 以最近的访问后继作为下次访问的预测,简洁实用,对访问模式的反映快,但易受偶然因素、访问顺序的影响。 • PNLS (Program-based Last N Successors) • 以程序信息提高预测精度,适用于程序驱动的数据访问模式。 • SLS (Stable Last Successor) • 对LS模型的重新定义,设置频次阈值,去除噪音,降低偶然因素对模型性能的影响。 • FSS (First Stable Successor) • 已首个出现N次的后继永久作为预测结果,适用于稳定的模式。 • Recent Popularity (k out of n) • 维护N个最近后继,至少发生了K次的作为预测结果,当存在多个侯选时,以最近度作为选择依据。
相关研究工作介绍(7) • 基于分组(Group)的预测模型 • 基本思想 • 通过文件历史访问信息动态建立文件之间的关联,并据此进行有效分组,以group代替单个文件进行Cache管理和文件提取。 • 文件关联度表示 • 概率图 (Probability Graph) • 文件关系图 (File Relationship Graph)
相关研究工作介绍(8) • 基于聚类的预测模型 • 聚类 • 按照事物的某些属性,把事物聚集成类,使类间相似性尽量小,类内相似性尽量大,按照相似程度大小,将事物逐一归类。 • 基本思想 • 将可能在一次事务中被一起访问的文件聚成一类,当某个文件被访问时,将其在同一个类中的其他文件也同时装入CACHE。 • 相似性度量 • 文件语义距离、Zipf定律(TOPN)、Recency等 • 关键步骤 • 1、定义度量相似性指标 • 2、计算相似系数,构造相似矩阵 • 3、选择合适的算法进行聚类(直接聚类法、图论法、模糊聚类法等)
我的研究进展(1) • 研究的切入点 • 调研该领域的研究现状和相关工作 • 借鉴已有工作的精华 • 发现其中的一些缺陷和不足之处 • 提出和实现自己的一些想法 • 从预取的两种实现方法着手 • 基于预测的预取,重点是挖掘访问模式,构造预测模型 • 基于分组的预取,重点是建立数据关联,构造分组模型 • 研究的契机 • 度量统计指标的定义 频率、最近性、访问时间、语义距离、访问顺序、访问路径 • 日志数据的预处理 噪音数据的剔除(如访问频率低的请求),数据可预测性的提高(如基于用户或程序)
我的研究进展(2) • 研究的切入点 • 研究的契机(续) • 预测模型和算法的改进 预测精确度、时间复杂度、空间复杂度 • 模型的自学习和自适应能力 在实际运行中,不断学习新的知识,进行更精确的预测;可以根据应用特点和已有知识,对预测参数进行自动调整。 • 性能评价 预测精确度、可应用性、正确预测率、错误预测代价 • 其他预测模型的影响因素 • 预测观察窗口大小 • Cache大小 • 预取文件数量 • … …
我的研究进展(4) • ULNS文件预测模型 • LS算法 • 能有效反映文件访问顺序 • 可快速适应访问模式的变化 • 忽略了不同用户访问模式的差异,预测依赖于顺序 • ULNS模型的提出 • 利用用户信息进行更精确的预测 • 相当于N(用户数)个LS预测模型 • 对多用户系统非常有效 ULNS Metadata表示
我的研究进展(5) • ULNS文件预测模型(续) • 预测更精确的原因 • 基于LS模型,能有效反映文件访问顺序 • 对于单个个用户,访问顺序相对更为稳定,能反映用户兴趣 • 不仅可表达访问模式是什么,还能反映模式产生的原因 • 防止了多用户访问顺序变化对LS模型的影响 • ULNS模型的构造 • 元数据的收集 三元组<file, username, successor>表示,扫描日志获得。 • N值的确定 N最优值为用户数,但用户众多导致空间复杂性呈性增长。根据80-20定律,设定访问阈值,过滤噪音信息。降低模型的规模和复杂性,无需对N进行严格限制。 • 与LS模型的综合 ULNS预测精度高,LS可适用度高,两者综合,获得较好的整体性能。
我的研究进展(6) • ULNS文件预测模型(续) • 预测算法 • 评价参数 • 精确度:Precision = P+/ (P++ P-) • 可适用度:Applicability = (P++ P-) / R • 正确率:Correct = P+/ R = Precision * Applicability • Cache命中率:Hitrate = H / R • 实验数据 • EPA-HTTP , DFSTrace, CASTOR
我的研究进展(7) • ULNS文件预测模型(续) • 实验结果
我的研究进展(8) • GFPM预测模型 • 目前正处于研究之中,许多想法需要实验验证 • 基本思想 • 将强相关的文件分成一组,据此进行预测和预取 • 分组模型 • 文件关系图表示法 • 以空间语义距离作度量文件间的关联度 • 距离有向性,一个文件对应一个分组 • 动态文件分组,允许分组间存在交集 • 提高Cache命中率 • 隐式的预取减少了实际的文件访问需求 • 合理的文件分组减少了不合理的Cache替换
我的研究进展(9) • GFPM预测模型(续) • 以空间语义距离作为相似性度量指标 • 定义:两次引用之间的文件数 Sequence: ABBC[CADDEB]CGH • 相关定义:时间和生命周期语义距离 • 辅助度量指标 • 访问频率:去除噪音,降低规模和复杂度 • 访问最近度:选择依据,反映最近访问模式 • 多值距离计算 • FIRST, LAST, MIN, MAX都不能客观、全面地表示 • 采用平均值表示法: • 算术平均值:突出大数的比重 • 几何平均值:突出强调小数的比重 • 调和平均值:倒数算术平均值的倒数,物理意义不明确 • 众数:出现次数最多的样本值 • 中位数:按序排列后中间位置的样本值
我的研究进展(10) • GFPM预测模型(续) • 模型构造 • 日志预处理,抽取出所有有效会话 • 对每个会话,使用观测窗口统计频率,计算distance和age • 使用合适算法,以每个文件为索引,建立一个分组 条件:freq > f_threshold && distance < d_threshold 满足条件的多于分组大小时,选择age最小的group_size个 • 分组算法 • 直接分组、凝聚分组、模糊分组 • 相关影响因素 • 观测窗口大小 • 分组大小 • 缓存空间大小
我的研究进展(11) • GFPM预测模型(续) • 初步实验结果
我的研究进展(12) • 未来工作展望 • ULNS模型的完善 • 不断有新的想法,需要不断进行修正 • GFPM模型的改进 • 文件关联度的表示 • 更优的分组算法 • 模型的自学习和自适应能力 • 实验基础上寻求应用实例 • 多种预测模型的综合,根据应用特征自动选择