クラウドの基本を知る
連日のように各社からさまざまなサービスが発表されるクラウド。
今ではその言葉を見ない日はないほどありふれたものになりつつありますが、その反面、なかなか本質がつかめないし、いまいちはっきりしない。そんな人も多いかと思います。
クラウドは正確には「クラウドコンピューティング(Cloud Computing) 」と言い、直訳すると、「 雲(クラウド)を利用したコンピュータの使い方」となりますが、これではさっぱり意味がわかりません。
この、クラウドという言葉ですが、具体的にはインターネットそのものを指します。これは従来から一般的に、コンピュータ関連のイメージ図を書くときにネットワークを雲の図で表す場合が多く、それが由来でインターネット自体をクラウドというようになったと言われています(図1 ) 。
図1 クラウドコンピューティングのイメージ
引用: http://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:Cloud_computing.svg Created by Sam Johnston using OminGroup's OmniGraffle and Inkscape (includes Computer.svg by Sasa Stefanovic)
つまりクラウドコンピューティングとは、インターネットを利用したコンピュータの使い方、となりますが、インターネットを利用したコンピュータの使い方といわれてもいまいち意味がわかりません。
これまでのコンピュータの利用方法は、企業や個人など(ユーザ)がコンピュータのハードウェアやソフトウェア、データなどを自分自身で保有、管理するやり方でした。たとえば自宅にPCやソフトウェアを購入してインストールしたり、会社内にコンピュータやソフトウェアを購入して管理したりしていました。ところがそのように自分自身で保有、管理するとなると、ハードウェアのメンテナンスやソフトウェアのアップデートなども自分でやらなくてはなりません。そこで、インターネット上のハードウェアやソフトウェア、サービスをインターネットから操作し、利用しようという流れが生まれました。このような、インターネット上のハードウェアやソフトウェア、サービスをインターネットから操作し、利用するという考え方をクラウドコンピューティングと呼ぶのです。
ただ、インターネット上のハードウェアやソフトウェア、サービスをインターネットから操作し、利用することがクラウドコンピューティングである、と考えてしまいますと、インターネット上のサービスはすべてクラウドである、と言うことになってしまいそうです。大規模な掲示板サービスや、Webメール、Twitterなども「インターネットで提供されているサービスだからクラウドだ!」と言い切っていいのでしょうか?
クラウドを知るには、まず“X”aaSを知る
実は、「 クラウド」という言葉の定義自体がかなり曖昧なせいもあって、この辺りの定義ははっきりしていません。「 このサービスはクラウドだけど、あのサービスはクラウドじゃない」という区別は人によって違う、と言ってもいいくらいです。
しかし、クラウドが一般的になるに従って、だんだんとクラウドサービスの分類も進んできました。ここでは、クラウドサービスの主な種類とされるものをご紹介いたしましょう。
一般的にクラウドサービスは「“ X” aaS」という名称で表現されます。この「XaaS」は「X as a Service」の略で、「 Xをサービスとしてインターネット経由でユーザへ提供するサービス」といった意味です。たとえば代表的なクラウドサービスとしてSaaSがあります。これはSoftware as a Serviceの略称で、ソフトウェアをサービスとしてインターネット経由でユーザへ提供するサービスのことです(図2 ) 。
図2 クラウドサービスのイメージ
ではここで、さまざまなクラウドサービス(XaaS)を見てみましょう。
SaaS(Software as a Service)=ソフトウェア機能のサービス提供
クラウドが騒がれる前から存在した、インターネット上でソフトウェアを提供するサービス。GoogleのGmailなどが有名です。ユーザは、ソフトウェアのライセンス購入や、インストール作業の必要なくソフトウェアを使うことができます。
従来はASP(Application Service Provider)と言われていましたが、インターネットテクノロジーの発展に伴ってさまざまな機能強化が図られ、SaaSと呼ばれるようになりました。
提供される内容は、メールをはじめとするオフィスソフトやスケジュールソフトなど、デスクトップで使用するような一般的なソフトから、営業支援ソフトウェア、開発用ソフトウェアのような専門的なものまでさまざまです。
アカウントさえ作っておけば、会社でも、出先の喫茶店でも、あるいは携帯電話からでも同じ作業が可能になります。
PaaS(Platform as a Service)=ソフトウェアプラットフォームのサービス提供
SaaSを効率的に利用、開発できるようにしたソフトウェアプラットフォームをPaaSと言います。
SaaSが一般的になってくると、個々のSaaSをもっと効率的に利用したいというニーズが生まれてきました。たとえば、どのSaaSにも同一のID、パスワードでログイン可能(シングルサインオン)にしたり、個々のSaaSで共通のデータを扱えるようにすることなどです。
そのようなニーズに応えるために開発されたのが、ソフトウェアプラットフォームであるPaaSです。PaaS上でソフトウェアを開発、利用することで、ソフトウェア開発のコストを削減できたり、PaaS上のソフトウェアのファイルやデータを連携させたりすることができるようになります。
PaaSがショッピングモール、SaaSがモール内の個々の店舗と考えるとわかりやすいかもしれません。使用されるファイルやデータはショッピングモール内のどの店舗でも共通に使えるポイントカードのようなものです。
IaaS(Infrastructure as a Service)=サーバ資源のサービス提供(ホスティングサービス)
Webサイトの公開や開発に使うサーバ資源(ネットワークやハードウェア、OSやミドルウェアなど)を対象としたクラウドを、IaaSと言います。従来はホスティングサービスといわれ、その利用形態に応じて共用ホスティングサービスや専用ホスティングサービス、VPS(Virtual Private Server)などのように言われていましたが、インターネットテクノロジーの発展に伴ってさまざまな機能強化が図られ、IaaSと呼ばれるようになりました。
IaaSに関しては、追って詳細を説明します。
以上の3つのXaaSをまとめると、表1 のようになります。
ASPとSaaSは何が違うの?と疑問に思われるかもしれません。ソフトウェアをインターネット経由で利用する、という考え方の根本は同じです。インターネットテクノロジーの発展に伴ってさまざまな機能強化が図られてSaaSと名称が変わったということです。
つまり、クラウド・コンピューティングとは、インターネットテクノロジーの発展に伴っていろいろなサービスでさまざまな機能強化が図られ、効率的にそれらのサービスを利用しやすくなったもの、すなわち「新しい形のインターネットサービス全般」であるといえます。
表1 XaaSの名称と位置付け
従来の名称 クラウドコンピューティングでの名称
ソフトウェア ASP(Application Service Provider) SaaS(Software as a Service)
ソフトウェアプラットフォーム 無し PaaS(Platform as a Service)
サーバリソース(ホスティングサービス) 共用ホスティング IaaS(Infrastructure as a Service)
VPS(Virtual Private Server)
専用ホスティング