分散コンピューティング

科目基礎情報

学校 大分工業高等専門学校 開講年度 令和02年度 (2020年度)
授業科目 分散コンピューティング
科目番号 R02S521 科目区分 専門 / 必修
授業形態 授業 単位の種別と単位数 履修単位: 1
開設学科 情報工学科 対象学年 5
開設期 前期 週時間数 2
教科書/教材 分散システム 第2版(石田 賢治・小林 真也・齋藤 正史ほか),共立出版,2019
担当教員 靏 浩二,池部 実

到達目標

(1) 分散コンピューティングのモデルおよび特徴を理解する(定期試験)
(2) 分散コンピューティングの構成要素を理解する(定期試験)
(3) 分散コンピューティングにおけるアルゴリズムの仕組みを理解する(定期試験)
(4) 分散コンピューティングにおける信頼性向上のための仕組みを理解する(定期試験)

ルーブリック

理想的な到達レベルの目安(優)標準的な到達レベルの目安(良)未到達レベルの目安(不可)
評価項目1分散コンピューティングのモデルやアーキテクチャ,その特徴を理解し,十分に説明することができる分散コンピューティングのモデルやアーキテクチャ,その特徴を理解し,説明することができる分散コンピューティングのモデルおよび特徴を理解できない
評価項目2分散コンピューティングの構成要素(プロセス,名前など)の特徴について理解し,十分に説明することができる分散コンピューティングの構成要素(プロセス,名前など)の特徴について理解し,説明することができる分散コンピューティングの構成要素を理解できない
評価項目3講義中に説明した分散コンピューティングにおける複数のアルゴリズムの仕組みを理解し,与えられた条件下のもと,アルゴリズムを実行し,多くのアルゴリズムにおいて正しい結果を導き出すことができる講義中に説明した分散コンピューティングにおけるいくつかのアルゴリズムの仕組みを理解し,与えられた条件下のもと,アルゴリズムを実行し,およそ正しい結果を導き出すことができる講義中に説明した分散コンピューティングにおけるアルゴリズムの仕組みを理解できない
評価項目4講義中に説明した分散コンピューティングにおける複数の信頼性向上のための仕組み(フォールトトレラント性,複製など)を理解し,与えられた条件下のもと,信頼性向上のためのアルゴリズムを実行し,多くのアルゴリズムにおいて正しい結果を導き出すことができる講義中に説明した分散コンピューティングにおけるいくつかの信頼性向上のための仕組み(フォールトトレラント性,複製など)を理解し,与えられた条件下のもと,信頼性向上のためのアルゴリズムを実行し,およそ正しい結果を導き出すことができる分散コンピューティングにおける信頼性向上のための仕組みを理解できない

学科の到達目標項目との関係

学習・教育目標 (B2) 説明 閉じる
JABEE 1(2)(g) 説明 閉じる
JABEE 2.1(1)② 説明 閉じる

教育方法等

概要:
分散コンピューティングは,現在の情報システムにおいてかかせない重要な技術である。分散コンピューティングは,計算機をネットワークで結合し,高速な計算処理や負荷分散などを目的としている。本授業では分散コンピューティングにおける重要な要素技術や分散アルゴリズム,信頼性向上技術を理解する。
(科目情報)
教育プログラム 第2学年 ◎科目
授業時間 23.25時間
関連科目情報数学,コンピュータアーキテクチャI,II
授業の進め方・方法:
授業計画に沿ってスライドを用いて説明する。教科書を補足する講義資料を配付する。達成目標の(1)~(4)について定期試験で評価する。定期試験70%,講義中の小テストおよび課題レポート30%で評価し,60点以上を合格とする。再試験は,総合評価が60点に満たない者に対して実施する。参考書谷口 秀夫 編著,IT Text 分散処理,オーム社,2005
アンドリュー・S・タネンバウム他著,分散システム 原理とパラダイム 第2版,ピアソン・エデュケーション,2009 (絶版)
真鍋 義文著,分散処理システム,森北出版,2013
ほか,必要に応じて,適宜紹介する。
注意点:
(履修上の注意)
オペレーティングシステムやコンピュータネットワークについて理解している前提で講義を進めていきます。
授業をよく聞き理解を深めること。
理解を深めるために,授業中に例題や演習課題を出題するので取り組むこと。
(自学上の注意)
講義資料は公開する予定であるので復習に利用すること

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 分散コンピューティングの概要 分散コンピューティングの構成要素やGoogleの分散システムのモデルや考え方について理解できる
2週 分散コンピューティングの種類と
アーキテクチャ,プロセス,クライアント・サーバモデル
分散コンピューティングにおける水平・垂直アーキテクチャ,プロセスとスレッド,クライアント・サーバモデルについて理解できる
3週 同期(1)~分散システムと時間,クロック同期~ 分散システムにおける時間の考え方,物理時刻の同期方法について理解できる
4週 同期(2)~論理クロックとベクトルクロック~ 分散システムにおける論理クロックとベクトルクロックの考え方について理解できる
5週 同期(3)~排他制御,リーダー選出アルゴリズム~ 分散システムにおける資源の利用方法の排他制御手法,資源を利用する際のリーダーを決めるリーダー選出アルゴリズムについて理解できる
6週 名前付け(1)~構造化された名前空間,名前解決,DNS~ 分散システムにおける名前空間の考え方のひとつである構造化された名前空間,構造化された名前空間における名前解決方法,実装例のひとつであるDNS(Domain Name System)の考え方について理解できる
7週 名前付け(2)~フラットな名前空間,分散ハッシュテーブル,属性ベース名前付け~ 分散システムにおける名前空間の考え方であるフラットな名前空間,属性ベース名前付けについて理解できる。また,フラットな名前空間の例として分散ハッシュテーブル(DHT)について理解できる
8週 分散ファイルシステム 構造化された名前空間と分散ファイルシステムについて理解できる。また,分散ファイルシステムの代表例であるNFS(Network File System),GFS(Google File System)などのモデルについて理解できる
2ndQ
9週 複製と一貫性 分散システムにおける複製の考え方とスケーラビリティについての考え方を理解できる。また,複製した際のデータベースを例にした複製管理方法,複製した内容の一貫性管理方法について理解できる。
10週 小テストおよび小テスト解説
11週 フォールトトレラント(1)~フォールトトレラント性~ 分散システムにおけるフォールトトレラント性の概念について理解できる。合意問題のひとつであるビザンチン将軍問題について理解できる
12週 フォールトトレラント(2)~故障検出~ 分散システムにおける故障検出の考え方について理解できる。誤り回復(後方誤り回復)の方法について理解できる。
13週 分散コンピューティングの最新動向 ビッグデータと分散コンピューティングや,ブロックチェーンと分散コンピューティングなどの分散コンピューティングに関する最新動向について理解できる。また,各話題が分散コンピューティングとどのような関係性があるか理解できる
14週 前期期末試験
15週 前期期末試験の解答と解説 前期期末試験において理解できていなかった内容を把握し,理解できる
16週

モデルコアカリキュラムの学習内容と到達目標

分類分野学習内容学習内容の到達目標到達レベル授業週
専門的能力分野別の専門工学情報系分野コンピュータシステム集中処理システムについて、それぞれの特徴と代表的な例を説明できる。4前1,前2,前9,前11,前12,前13
分散処理システムについて、特徴と代表的な例を説明できる。4前3,前4,前5,前6,前7,前8,前9,前11,前12,前13

評価割合

試験発表相互評価態度ポートフォリオその他合計
総合評価割合70000030100
基礎的能力0000000
専門的能力70000030100
分野横断的能力0000000