@dyk
2015-07-12T10:25:25.000000Z
字数 1841
阅读 416
ReadingNote
LISA 2013
当管理员管理云资源时,他们很有可能不小心的删除一个虚拟机磁盘,导致里面的数据全部丢失。undo操作被认为是对于可靠系统的一个重要的组成部分。
作者展示了支持undoability的两大方法
作者的undo机制是以及与检查点的回滚方法。其他的一些方法有基于日志的[13][15],以及在数据库中使用shadow page[15].
[17,18,24]是基于AI的云平台解决方案
作者的undoability的check部分是基于[12]的扩展。
Ingo Weber
Hiroshi Wada
Alan Fekete
Anna Liu
Leonard J. Bass
DSN'14
云平台的应用很容易受到升级,重新不是以及按需的scaling的影响。传统的基于异常检测的争端方案在sporadic操作的场景下并不是十分有效(WHY?)。许多合法的操作混淆了异常的诊断。在sporadic操作的过程之中诊断错误十分依赖日志。然而日志由受到了噪音,不一致性,以及日志量过大的影响。
作者提出了一个Process Oriented Dependability-Daignosis。这个方法将sporadic操作现实建模成为一个进程。这个方法可以1)明确进程的执行顺序,2)使用进程的内容来过滤日志,3)触发言的值,4)访问错误树,5)在线的错误诊断,6)错误根源的分析。
VEE'10
准确重放的应用:容错,精确诊断bug
重放的问题:在重放之前定义的记录规则下记录的重放记录并不能很好的完成终端用户的重放要求
这些记录往往包含的信息过少并不能准确的重放,或者这些记录包含了安全敏感的信息并不允许重放
Similarly,fixing the abstraction level at the time of recording often leads to asemantic mismatch with the end use of replay
本文的工作:对于不同的重放的需求允许定制重放信息的种类,Crosscut允许在时间和抽象层面上面划分日志
抽象层面包括:单个进程,应用,感兴趣的部件,并且排除了处理敏感信息的部件
文章认为带来问题的原因是,系统在进行重放的时候并没有对记录下来的日志进行进一步的划分(细粒度处理)
Crosscut首先将在机器指令级别,综合地有效地做记录(这里的的记录可以进行全系统重放)
记录不确定信息即外部的输入信息的开销往往小于5%
因此Crosscut记录下所有的信息之后根据需求重放
Crosscut是如何处理日志的
(1)可以挑出感兴趣的时间,应用,组件相关的日志
(2)可以挑出处理敏感信息的执行上下文环境,减轻隐私相关的问题
(3)Crosscut可以按照抽象边界选择日志,例如内核类,用户类,中断类,程序类,甚至是单独的模块
Crosscut采用了新的技术——relogging(执行的重放采用同一个日志文件,在重放期间采用过滤器来生成新的log)
Crosscut通过回滚自身来产生一个更加高效安全的日志来满足以后的需求
本文贡献
(1)使用了多级重放的概念
(2)展示了如何使用relogging来生成一个更加有效的用户定制的日志
(3)本文实现了时间划分以及抽象划分两个基本功能,并且利用这两个基本功能达到多种不同的需求
研究 sporadic operation