クラウドコンピューティング(2)

クラウドコンピューティング(2)
オペレーティングシステム
第13回
今回の内容

クラウドコンピューティングの技術的な話題が中
心
インターネットは“雲”(復習)
雲 = cloud
データやそれを処理する
の中のことは分から
プログラムなどを雲の中
ないから雲に例える
(インターネット)に保存する
クラウドコンピューティング
雲の中では…(復習)





雲の中にあるシステムは
1台のコンピュータで構成されている
かどうか分からない
複数のコンピュータ?
あちこち(世界中)に分散?
雲の中のことは(復習)

どうなっているか,良く分からない

アクセスすれば使うことができる

どれくらいのコンピュータがあるか分からない
 十二分に強力なパワー
クラウド提供者による分類(復習)


パブリッククラウド
 GoogleやAmazonのように,広くサービスを提
供
プライベートクラウド
 自社のコンピュータを集中させ,自社内を対象
にサービスを提供
 一時的に,パブリッククラウドを使うこともあり
うる
クラウドサービスの 分 類(復習)

SaaS

PaaS

IaaS
いくつかのキーワード
S L A
S L A(1)

Service Level Agreement

サービス品質保証契約

クラウドサービス利用にあたり,サービス提供者
と結ぶ質の契約
S L A(2)

SaaS向けSLAガイドライン
(経済産業省 1/21/08)
仮想化
仮 想 化(1)



実際のハードウェアを利用者に見せない・意識さ
せない
理想的なハードウェアを提供
 抽象化
OSの基本
仮 想 化(2)

仮想計算機
 実際のコンピュータ上に,別のOSを(複数)実
行できるようにする仕組みを用意
 そのOSが実行され,アプリケーションを実行
する
 アプリケーションを直接実行しているわけでは
ない
仮想
どこかに脆弱性
があると,
ある仮想計算機
が,
別の仮想計算機
のメモリなどをア
クセスできてしま
う危険
物理的に1台のコンピュータ
複数の仮想計算機(これら
化(3)
は独立している)
仮 想 化(4)

逆の場合もある
 物理的には複数のコンピュータ
 利用者からは1台のコンピュータに見えるよう
な仕組み
 分散処理
仮 想 化(5)

ストレージ(ディスク)の仮想化
 物理的に複数のディスク
 一つの仮想ディスク
分散処理
分 散 処 理(1)

“手分け”をして処理する

例 学生のデータ
年度末に
学年を進める
分 散 処 理(2)


ファイルに格納されている順に処理する
3人で,学年ごとに処理する
 1年担当・2年担当・3年担当
 分散処理
分 散 処 理(3)



学生のデータを学年ごとに分ける
学年別に処理する
 1年・2年・3年の処理は同時に行う
三つの処理結果を,一つのファイルにまとめる
分 散 処 理(4)



データを分けて,同時に処理
 Map
結果をまとめる
 Reduce
MapReduce
 Googleのプログラミングモデル
スケールアップとスケールアウト
処理能力の増強
システムの処理能力の向上

処理データ件数が倍になったら,どうするか?
 高速CPUに交換
 メモリを増やす
 etc.

高性能のコンピュータに交換
クラウドの世界では

コンピュータの台数を増やす
 “手分け”をして処理
 分散処理
スケールアップとスケールアウト(1)


スケールアップ
 高性能=高価なコンピュータに更新する
スケールアウト
 同じ=安価なコンピュータの数を増やす
 コスト面では有利
スケールアップとスケールアウト(2)


高価なコンピュータ
 故障が少ない
安価なコンピュータ
 故障が多い
 多数,使えば,頻繁にどれかが故障
 それを前提としたシステム構築
 可用性の確保
可用性

可用性(availability アベイラビリティ)
 システムが機能を果たせること
 つまり,“使うことができる”ということ
スケールアウトでの可用性確保


データのコピーを複数のコンピュータに格納
データを変更
 変更情報が,すべてのコンピュータに伝わる
までの間,同じであるべきデータが異なる
 もし,その途中でトラブルが起きたら…
 一貫性(consistency)の欠如
CAP定理
複数のコンピュータからなるシステム
“定理”と呼んでいるが
C A P 定 理(1)

Consistency(一貫性・整合性)

Availability(可用性)

Partition-tolerance(分断耐性)
C A P 定 理(2)

Consistency(一貫性・整合性)

同じであるべきデータは,どのコンピュータで
も同じである
C A P 定 理(3)

Availability(可用性)

故障したコンピュータがあっても,システム全
体としては稼働する
C A P 定 理(4)

Partition-tolerance(分断耐性)
 ネットワークが切断されても,稼働可能
C A P 定 理(5)

CAP定理
 エリック・ブリュワー(Eric A. Brewer)
 Consistency(一貫性・整合性)
 Availability(可用性)
 Partition-tolerance(分断耐性)
 三つのうち,二つしか確保できない
C A P 定 理(2)

1台のコンピュータからなるシステムでは
 Consistency(一貫性)
 Availability(可用性)
 Partition-tolerance(分断耐性)
1台しかないものが故障したら,
システムとして稼働しなくなる
C A P 定 理(3)

クラウドでは
 Consistency(一貫性)
 Availability(可用性)
 Partition-tolerance(分断耐性)
あるコンピュータでデータを更新しても,
そのことは別のコンピュータに直ちに伝わらない
C A P 定 理(4)

もちろん,いろいろな手段で,“あきらめた”のも
のにも対処
その他




クラスタリング
NoSQL
etc.
従来とは異なる技術
ま と め
ま と め(1)

SLA

仮想化

分散処理
 MapReduce (Hadoop)

スケールアップとスケールアウト

CAP定理
ま と め(2)

グーグル、MapReduce後継のビッグデータ処理
サービス「Cloud Dataflow」を発表(6/26/14)
http://itpro.nikkeibp.co.jp/article/NEWS/201406
26/566922/