前回はコンピュータ1台の中身を見ました。今回は、そのコンピュータを複数組み合わせて、大きなシステムをどう作るか——という話です。「クラウド」の正体も、ここで明らかになります。
クラウドって、雲の上にデータがふわふわ浮いてる、みたいなイメージなんだけど
そのイメージ、今日で直させてもらうね
え、違うの?
うん、雲の上どころか、実はものすごく地上の、しかも巨大な建物の中にある
……え、うそ


まず基本の構成、クライアントサーバシステム。利用者が使う側の機器(クライアント)と、サービスを提供する側の機器(サーバ)に役割を分けた仕組み。スマホでアプリを使うとき、裏側では必ずどこかのサーバとやり取りしてる
アプリの裏に、サーバがあるのね
そう。で、そのサーバが止まったら大変なことになるから、冗長化という考え方がある。代表例がデュアルシステムとデュプレックスシステム
また似た名前……
デュアルシステムは、2系統のシステムが常に同じ処理を並行して行い、お互いの結果を照合し合う構成。片方が故障しても、もう片方がすぐに引き継げる。デュプレックスシステムは、主系(普段使う側)と従系(待機している側)に役割が分かれていて、主系が故障したときに従系へ切り替える構成
両方同時に働かせるか、片方を待機させておくか、の違いね
あと、アクセスが集中したときに、複数のサーバに処理を分散させる負荷分散という考え方も、システム構成の重要な要素
じゃあ本題、クラウドの正体。クラウドサービスは、実際には世界中のデータセンター——サーバがずらっと並んだ巨大な施設に、実体がある
そこにデータが置いてあるのね
そう。私たちは、そのデータセンターのコンピュータ資源をインターネット経由で"借りて"使ってる、というのがクラウドの正体
じゃあ、雲は関係ないのね
英語の“cloud”は、ネットワークの向こう側の仕組みを雲の絵で表現していた、というのが由来の1つと言われてる。データそのものが雲に浮いてるわけじゃないよ
なるほど、名前のイメージに騙されてたわ
このクラウドを支える技術が仮想化。1台の物理的なサーバを、ソフトウェア的に複数台のサーバであるかのように分割して使う技術。効率よくリソースを使い分けられる
1台を、何台にも見せかけるのね
あと、将来の負荷(利用者数やデータ量の増加)を見越して、どれだけリソースを確保しておくか計画するのがキャパシティ管理

最後に、クラウドサービスの提供形態。SaaS・PaaS・IaaSという分類がある。違いは『利用者がどこまで管理するか』
範囲が違うのね
SaaS(Software as a Service)は、ソフトウェアの機能そのものをサービスとして提供するタイプ。利用者は用意されたアプリを使うだけ。PaaS(Platform as a Service)は、アプリを動かすための土台(OSやミドルウェア)まで提供するタイプ。利用者はその上でアプリを開発する。IaaS(Infrastructure as a Service)は、サーバやネットワークなどインフラ部分だけ提供するタイプ。利用者はOSから自分で構築する
利用者が管理する範囲が、SaaS<PaaS<IaaSの順で広くなるのね
まさにそういう理解でOK

1つ目は、デュアルシステムとデュプレックスシステムの構成の違い。『2系統が同時並行』か『主系と従系』か
2つ目は、SaaS・PaaS・IaaSで利用者が管理する範囲ね
そう。『どこまでを提供者が用意してくれるか』の線引きを問う問題が定番だよ
クラウドが雲の上じゃないの、地味にショックだった
次は、身近な機器の話に戻ろう。OSって、結局何をしてくれてるものか、説明できる?
……アプリの一種、じゃないの?
……そこも、次回で直させてもらうね
著者が作った無料の過去問アプリ「ITパスポート学習」の「システム構成要素」で、そのまま手を動かして確認できます。間隔反復法(SRS)が「忘れかけた瞬間」に自動で再出題してくれるので、読みっぱなしでは終わりません。