エラー忘却型コンピューティング
表示
エラー忘却型コンピューティング(エラーぼうきゃくがたコンピューティング、英: Failure-oblivious computing)は、計算機処理において、フォルトトレラントシステムの構成に向けた技法の一つ。2004年にMITのMartin Rinardらが提唱した[1]。
一般的な処理系では、処理途中でメモリエラーが発見された場合はアプリケーションにエラーを通知するか、または該当プログラムを異常終了させる。エラー忘却型コンピューティングでは、メモリ上でエラーが生じた場合は原則としてこれを隠蔽し、ロギングのみ行って応用プログラムに通知しない。
- メモリの読み出しエラーが生じた場合は、適当な値を生成して応用プログラムに返却する。
- メモリの書込みエラーが生じた場合は、これを無視する。
なお代償としてCPUに掛かる負荷は高くなる。これはアドレスの有効性を動的に検査する処理を挿入することになるためで、処理時間が80%〜500%ほど増大する[2]。
Googleによると、同社の大規模データ処理技術であるGoogle File System(GFS)、BigTable、MapReduceに特化した並列データ処理言語である「Sawzall」は、エラー忘却型コンピューティングの概念を実装している[3]。楽天技術研究所の所長森正弥は、Googleがエラー忘却型コンピューティングを適用した意図は「処理の大規模化、高速化を優先したのではないか」と推測している[4]。Googleは一カ月に数百ペタバイトにも及ぶ膨大なデータを扱うので、事前に想定できないような異常なデータが潜在している可能性を否定できず、エラー発見時にいちいちプログラムを止めたのでは安定稼働が見込めないからである[4]。
脚注
[編集]関連項目
[編集]外部リンク
[編集]- 中田, 敦 (2008-09-09), そのソフト,売る?売らない?, 日経BP 2013年5月22日閲覧。
- Rinard, Martin; Cadar, Cristian; Dumitran, Daniel; Roy, Daniel M.; Leu, Tudor; Beebee, William S. (2004), “Enhancing server availability and security through failure-oblivious computing”, Proceedings of the 6th conference on Symposium on Operating Systems Design & Implementation, 6, Berkeley, CA: USENIX Association, CiteSeerx: 10.1.1.68.9926
- Keromytis, Angelos D. (2007), “Characterizing Software Self-Healing Systems”, in Gorodetski, Vladimir I.; Kotenko, Igor; Skormin, Victor A., Computer network security: Fourth International Conference on Mathematical Methods, Models, and Architectures for Computer Network Security, Springer, ISBN 3-540-73985-8
- Pike, Rob; Dorward, Sean; Griesemer, Robert; Quinlan, Sean (2005), Interpreting the Data: Parallel Analysis with Sawzall 2013年5月22日閲覧。