Document

平成15年度
夏季休業課題報告
知識科学研究科 M1 丹野聖司
分散システム:定義

統合化コンピュータソフトウェアを整備して,
ネットワークによって統合された自立コン
ピュータの集合体
分散システムのアプリケーション




ユーザ群が利用するコンピュータシステム
自動バンキングシステム
マルチメディア・コミュニケーションシステム
etc
分散システムの特徴






資源共有(resource sharing)
開放性(openness)
並行性(concurrency)
規模透過性(scalability)
フォールトトレラント性(fault-tolerance)
透過性(transparency)
資源共有

ハードウェア資源の共有


プリンタ,大規模ディスクなど
ソフトウェア資源の共有

データ,コンパイラなど
各資源は他の資源へアクセスし,手際よく処理され,確実に
首尾一貫して更新することを可能にする通信インタフェース
を提供するプログラムによって管理されなくてはならない.
資源共有モデル1

クライアント・サーバモデル


サーバプロセス:資源管理者
クライアントプロセス:タスク
要求
応答
:サーバ
:クライアント
すべての資源はサーバプロセスによって管理される
資源共有モデル2

オブジェクト指向モデル



実行するプログラムの実体は,操作へのアク
セスを提供する,メッセージ通信インタフェース
を持ったオブジェクトとする.
各共有資源はオブジェクト
オブジェクトは唯一のものとされ,ネットワーク
内のどこにでも移動することが可能
開放性


システムをさまざまな方法で拡張できるか
どうかを決定する特性
新しい資源共有サービスを,既存のサービ
スの破壊や重複なしに,どの程度追加でき
るかを決定する
並行性

N個の処理を並行に実行し,作業効率を
上げる
規模透過性

分散システムにおいて,システムの規模が
拡大するとき,システムとアプリケーション
ソフトウェアに変更があってはならない
フォールトトレラント性

システムの故障に対する対策


ハードウェア冗長性
ソフトウェア回復性
透過性

ユーザとアプリケーションプログラマから,
分散システムの構成要素が分離している
ことを隠蔽する
プログラムを完全に並行に実行
システム全体の崩壊なしに,故障を抑制・回復
セキュリティ,プロテクションを実行するために通信チャネルを
分離し制御のためにしよう
構成要素の追加,削除によるシステムの成長,衰退
8つの透過性








アクセス透過性
位置透過性
並行透過性
複製透過性
故障透過性
移動透過性
性能透過性
規模透過性
参考文献のまとめ


ORB・分散コンピューティングを用いたWeb
リンク収集
HORBを使用した分散Webリンク収集シス
テム
ORB・分散コンピューティングを
用いたWebリンク収集

システム概要


分散オブジェクト技術HORBを用いた分散コン
ピューティング環境下での,Webのハイパーリ
ンク収集システム
Master-Slave方式の負荷配分の採用
マシン構成




Pentium2-400MHz,128M-SDRAM
Master PC:1台
Slave PC:10台
PostgreSQL データベースサーバ1台
Master-Slave方式

Master
Slaveのタスク量を決めるURL数とリンク収集の
深さの初期変数を持ち,データベースから取得し
たURLデータをSlaveへ渡す.
常にSlaveのタスクを監視し,タスクが終了した
Slaveへ新しいURLタスクを渡す.
Slaveから渡されたリンクデータをデータベース
へ保存し,未解析URLを新たなタスクURLとして
Slaveへ渡す.
Master-Slave方式

Slave
割り当てられたURL先のWebページを解
析し,リンクを取得する.タスク終了後,取
得したリンクデータをMasterへ渡す
この文献に対する意見

実験結果について


Slave1台あたりの探索件数について
Master-Slave方式について

Master-Slave間のタスク割り当て方法の改善
Master-Slave方式について
同量のタスク
処理不可能
計算リソースに
余裕がない
処理可能
計算リソースに
余裕がある
HORBを使用した分散Webリンク
収集システム

システム概要


分散オブジェクト技術HORBを使用した,分散
協調型Webリンク収集システム
負荷均一化を用いた各サーバの負荷を均一
化する
ネットワーク構成
:ルートサーバ
:サーバ
通信


計算機が収集したURLの共有
負荷を移動させることによる負荷の均一化
各計算機の働き



Webリンクの収集
URLデータの管理
計算機間の通信
以上を,マルチスレッド処理で行う
負荷均一化アルゴリズム
①均一化処理開始の依頼
②ネットワーク全体の総負荷量の算出
③ルートサーバによる均一負荷のブロード
キャスト
④各サーバでの負荷量の調整
負荷均一化について
均一負荷量
処理不可能
計算リソースに
余裕がない
処理可能
計算リソースに
余裕がある
研究方針について
研究の背景と目的



実際のGridを考えるとき,各ノードにあたる
ものは計算機である
各計算機は,こちらが意図する処理以外
の処理を行っている
計算機の計算リソースは動的に変化する
動的に変化する計算リソースを考慮した
単純な負荷の均一化では不十分
負荷割り当ての実現
計算対象の決定

本研究により作成する分散システムにより,
どのようなものを対象とするか
負荷均一化法との比較を考えているため,
Webリンク収集がいいのではないか.
各計算機の働きの決定

サーバ



負荷の割り当て
クライアントのタスク監視
クライアント

タスクを処理
Client-Server型のプログラミング
もしくは,Server-Server型プログラミング
分散システムの実装と実験


分散システムの実装
負荷割り当てが目的どおりかつ効率的に
できているかを確認する
負荷均一化法との比較実験

負荷均一化法を実現しているシステムとの
評価実験
研究の実現方法

分散オブジェクト技術HORB




Java用の分散オブジェクト技術
SunのJavaと100%互換性がある
無償で使える
etc
研究の実現方法
負荷割り当てのアルゴリズム概略
①負荷割り当て見直し要求
②負荷量とリソース状態の把握
③負荷量とリソース状態の返信
④適切な負荷量の算出と,送信
