3 分散システムのフォールトトレランス 分散システム Distributed Systems

Slides:



Advertisements
Similar presentations
HBSP モデル上での 行列積を求めるアルゴリ ム 情報論理工学 吉岡健太.
Advertisements

逐次ソート 2011/05/16. ソート(sort) 順序集合の要素a 1 … a n の上下関係を整 える 一般的には、整数の集合 N を考えればよ い ソートの計算量が問題となる どのような入力に対し、どのようなアル ゴリズムが最適か?
論理回路 第 11 回
紹介担当: 石尾 隆(大阪大学) Q11.  Feature Model によって定義される「プロダクトの集合」 (プロダクトライン)の振舞いを検証する手法の拡張 ◦ 通常の振舞い検証: たとえば Promela を使って,1プロダクトの 振舞いを表現したオートマトンの取りうる状態遷移を調べる ◦
相互作用図 FM11010 田中健太.
耐故障アルゴリズム.
キャッシュ付PRAM上の 並列クィックソートと 並列マージソート
メモリコンシステンシモデル memory consistency model
セキュアネットワーク符号化構成法に関する研究
離散数学入門 (集合論、ベン図) 情報システム学科 中田豊久.
1.基礎概念 1.1 ディペンダブルなシステムとは Dependability Fault Avoidance
秘密のリンク構造を持つグラフのリンク解析
ソフトウェア基礎科学 授業資料: 論理関係(logical relations)のお話
多重パスメッセージ転送ネットワークの数理モデルと論理
ASE 2011 Software Model Checking
ファジィ論理と ファジィ構造モデリング 北海道工業大学 情報デザイン学科 三田村 保.
DNASシステム上のアプリケーション起動シーケンスのための基盤であるdsh部分の性能評価
高性能コンピューティング論Ⅰ ほんだ ひろき 本多 弘樹
Prolog演習 PowerPointのアニメーション機能を利用すると分かりやすいと思います.
人工知能特論2011 資料No.6 東京工科大学大学院 担当教員 亀田弘之.
ビザンチン故障と分散制御 九州大学 システム情報科学研究院 山内由紀子
センサノード 時刻同期と位置測定 浅川 和久 2008/11/16 センサノード 時刻同期と位置測定.
3.2 合意問題 agreement problems
Probabilistic Method 6-3,4
ベイジアンネットワーク概説 3.6 構造の探索アルゴリズム
8.Intersecting Families
CSP記述によるモデル設計と ツールによる検証
離散数学I 第6回 茨城大学工学部 佐々木稔.
集団的意思決定支援法の実験環境に関する研究
Occam言語による マルチプリエンプティブシステムの 実装と検証
6. 順序回路の基礎 五島 正裕.
並列計算システム特論演習 SCS特別講義 平成13年10月15日.
第9章 Error and Control Messages (ICMP)
3. 束 五島 正裕.
最適化の方法 中田育男著 コンパイラの構成と最適化 朝倉書店, 1999年 第11章.
耐故障処理 Fault Tolerance 「分散計算の基礎」 12章 発表者 : 高橋 慧.
情報セキュリティ  第4回 メッセージ認証コード.
コンポーネント連携によるサービスを オーバレイネットワーク上で 実現するためのサービス設計技法の提案
第二回 時制論理とリアルタイムリソース.
エージェントアプローチ人工知能 11章 プラニング
確率論の基礎 「ロジスティクス工学」 第3章 鞭効果 第4章 確率的在庫モデル 補助資料
データ構造とアルゴリズム 担当:和田俊和 居室:A603 講義資料等は下記を参照してください.
Basic Tools B4  八田 直樹.
関係 (relation) 集合Aの要素aとBの要素bとが、ある条件Rを満たすとき「Rの関係にある」といい、aRb と書く。
補遺:質問への解答(1) 順序対と非順序対(1回目の授業)
オペレーティングシステムJ/K (仮想記憶管理)
Introduction to Soft Computing (第11回目)
通信機構合わせた最適化をおこなう並列化ンパイラ
並行プログラミング concurrent programming
2. 関係 五島 正裕.
2. 関係 五島 正裕.
Q q 情報セキュリティ 第8回:2005年6月3日(金) q q.
スーパーコンピュータ「京」 理化学研究所 計算科学研究センター
進捗報告 金田憲二.
Distributed Algorithm 輪講 13 章
盗聴・改ざんに対して耐性を持つ ネットワーク符号化について
モデル検査(5) CTLモデル検査アルゴリズム
論理回路 第4回
Ibaraki Univ. Dept of Electrical & Electronic Eng.
コンピュータアーキテクチャ 第 9 回.
マイグレーションを支援する分散集合オブジェクト
第9回 優先度つき待ち行列,ヒープ,二分探索木
KL1 による並列プログラミング 早稲田大学理工学部情報学科 上田研究室 4 年 高木祐介
「マイグレーションを支援する分散集合オブジェクト」
BSPモデルを用いた 並列計算の有用性の検証
コンピュータアーキテクチャ 第 9 回.
Cilk-NOW 米澤研究室 金田憲二 “Adaptive and Reliable Parallel Computing on Networks of Workstations” Robert D. Blumofe (Univ. of Texas) Philip A. Lisiecki (MIT)
BSPモデルを用いた 最小スパニング木 情報論理工学研究室 02-1-47-134 小林洋亮.
クイズ 非同期システムにおいて,1プロセスがクラッシュ故障する可能性がある場合,次のアルゴリズムで非ブロッキング原子コミットが解けないことを示せ アルゴリズム V(=Yes or No)を高信頼ブロードキャスト 全プロセスから値を受信した場合 すべてYesならコミットを決定 そうでなければアボートを決定.
第8章 データベースシステムの発展 8.1 オブジェクトリレーショナルデータベース 8.2 分散データベース 8.3 インターネットとデータベース.
Presentation transcript:

3 分散システムのフォールトトレランス 分散システム Distributed Systems Networkを通して通信可能な複数のプロセス(process)から構成 プロセス≒ プロセッサ (processor) ノード (node) サイト (site)

3.1 分散システムのモデル 3.1.1 基本モデル プロセスPiは局所時計をもつ プロセスは以下のものを持たない Ci(t) = 実時刻tでの局所時計の値 プロセスは以下のものを持たない Shared memory Global Clock

3.1.3 故障モデル Fault Model クラッシュ故障 (Crash Fault) 故障したプロセスは停止 オミッション故障 (Omission Fault) Crashもしくは,メッセージの送信,受信を失敗する可能性 ビザンチン故障 (Byzantine Fault) 任意の動作 Byzantine Faults Omission Faults Crash Faults

3.1.2 同期・非同期 同期システム 条件 非同期システム 1命令の実行時間に上限が存在し,既知 メッセージ遅延に上限が存在し,既知 局所時計のドリフト率rが存在し,既知 非同期システム 同期システムでないシステム P1 t P2 メッセージ遅延

時計同期 Clock Synchronization 同期システムでは時計同期により | Ci(t) – Cj(t)| ≤ e Ci(t) r dCi (t) dt - 1 ≤ r r 1-r 通常定数ρは10-5程度 T 1

同期ラウンドモデル 受信→処理→送信 P1 P2 P3 t ラウンドi-1 ラウンドi ラウンドi+1

3.1.4 論理時計 Event(イベント)のOrdering(順序付け) 必要性 困難さ AよりBが後だと判定したい P1 共通のClockがない メッセージ遅延,プロセス実行速度が可変 AよりBが後だと判定したい P1 P2 A B P3

因果関係 (Happened-before relation, causal relation) 1~3を満たす最小の関係(→で表記) 同じプロセスでaがbより先に起こったならa→b 同じメッセージについてaが送信,bが受信ならa→b a→bかつb→cならばa→c e11 → e12 e21 → e22 e11 e12 e21 → e23 P1 e22 → e23 e11 → e22 e21 → e12 P2 e21 e22 e23 e11 → e23

因果関係 Relation (関係) ・・・ 要素のtuple(組)の集合 strict partial order relation (強半順序関係) (a, a)  R が成り立たない (irreflexivity, 非反射律) (a, b)  R  ¬(b, a)  R (antisymmetry 反対称律) (a, b)  R, (b, c)  R  (a, c)  R (transitivity, 推移律) Partial order relation (半順序関係) (a, a)  R (reflexivity, 反射律) a≠b, (a, b)  R  ¬(b, a)  R (antisymmetry 反対称律)

論理時計(by L. Lamport) Logical Clock (論理時計) 整数LCi:各プロセスPiのevent aの論理時計の値 因果関係に矛盾しない時間 a,b, a→b ならば LCi(a) < LCj(b) e11 e12 e13 e14 e15 e16 e17 P1 (1) (2) (3) (4) (5) (6) (7) Clock values (1) (2) (3) (4) (7) P2 e21 e22 e23 e24 e25

論理時計 ルール 同じプロセスでa,bが連続して起こったら LCi(b) := LCi(a) + 1 メッセージには送信イベントの時刻をtimestamp (時刻印) tmとして付加 受信イベントaは,LCi(a) := max(LCi(a), tm + 1) a,b, a→b ならば LCi(a) < LCj(b) !? e11 e12 e13 e14 e15 e16 e17 P1 (1) (2) (3) (4) (5) (6) (7) Clock values ts=6 ts=2 ts=2 ts=4 (1) (2) (3) (4) (7) P2 e21 e22 e23 e24 e25

全順序関係の設定 同じ論理時計値を持つイベントの解消 Total order relation (全順序関係) (a, a)  R (reflexivity, 反射律) (a, b)  R, (b, a)  R  a = b (antisymmetry 反対称律) (a, b)  R, (b, c)  R  (a, c)  R (transitivity, 推移律) a,b, (a, b)  Rまたは (b, a)  R (totalness, 完全律) Logical Clock + プロセスID e11 e12 e13 e14 e15 e16 e17 P1 (1) (2) (3) (4) (5) (6) (7) (1.1) (2.1) (3.1) (4.1) (5.1) (6.1) (7.1) Clock values (1.2) (2.2) (3.2) (4.2) (7.2) (1) (2) (3) (4) (7) P2 e21 e22 e23 e24 e25

ベクトル時計 論理時計では, ベクトル時計 a→b ならば LCi(a) < LCj(b) しかし,「LCi(a)<LCj(b)ならばa→b」は,必ずしも成り立たない ベクトル時計 a→b  LCi(a) < LCj(b) (1,0,0) (2,0,0) (3,4,1) P1 e11 e12 e13 (0,1,0) (2,2,0) (2,3,1) (2,4,1) P2 e21 e22 e23 e24 (0,0,1) (0,0,2) P3 e31 e32 時間