クラウド・コンピューティングとはなにか?オンプレミスとの違いなどわかりやすく解説!
こんにちは!
現役Webエンジニアの今井(@ima_maru)です。
今回は「クラウド」について解説していきたいと思います。
クラウドは、私たちの中で常識となりつつある概念・技術です。
雲のイメージが強いですが、実際はどんな仕組みで成り立っているのか、見ていきましょう。
クラウドとは何か?実は2種類の意味で使われている?
現在、「クラウド」という言葉は2種類の意味でつかわれていることが多いです。
1つは、「クラウド・コンピューティング」という技術や概念として使う「クラウド」。
もう1つは、「クラウドサーバ」を指して使う「クラウド」。
クラウド = クラウド・コンピューティング
クラウドとは、「クラウド・コンピューティング」を指す言葉です。
クラウド・コンピューティングとは、ネットワーク経由でほかのコンピュータの機能を使えるという技術です。
このように、「インターネットを通じて他のコンピュータの機能を使える」といったようなことを可能にする技術こそが「クラウド・コンピューティング」です。
どのような機能を提供するかはサービスによって異なり、Gmailであればメール機能、iCloudであればストレージ(データ保管庫)、AWSであればサーバそのものだったりします。(いろいろ)
クラウドの技術ってすごいですね。当たり前のように使っているGmailも、実は自分の端末ではないところにメールが保存されていたんですね。
クラウド = クラウドサーバ
また、「クラウド上に」といったように、場所についてクラウドという言葉を使うことがあります。
「クラウド上に」データを保存するといえば、図に示す「クラウドサーバのストレージに」データを保存すると同じ意味になります。
「クラウド上に」っていう言葉はよく使いますね。そのときは「クラウドサーバのことを言ってるんだな」と考えれば大丈夫。
代表的なクラウドサービスからクラウドを理解する
ここで、クラウドを使ったサービスを2つ紹介しましょう。
1つ目は、Appleが提供する「iCloud」というサービスです。
iCloudは、スマホで撮った写真や動画などを、端末内ではなくて、クラウド上に保存するというサービスです。
「いままでは端末内に保存していたものを、クラウド上に保管しよう!」っていうサービスです。
これに似たサービス(Google Drive, Dropboxなど)がたくさんありますね。
2つ目は、Amazonが提供する「AWS」というサービスです。
AWSは、ネットワーク経由でサーバを貸し出すサービスです。
これにより、自社内に設置していたサーバをクラウドで管理することができるようになります。
つまり、Amazonが所有する大規模サーバを、ネットワーク経由で必要な分だけ借りてサービスを展開できるようになったのです。
このように、クラウド・コンピューティングの技術を用いると、ネットワーク上のどこかのサーバの機能やサーバ自体を使うことができるのです。
オンプレミスとクラウドの違い
クラウドについて調べるとちょくちょく出てくるワードとして「オンプレミス」があります。
オンプレミスとは、システム稼働やインフラ構築に必要なサーバーやネットワーク機器などを自社で管理し運用することを指します。
一方、オンプレミスと比較される「クラウド」が表していることは、このようなサーバーやネットワーク機器などを自社で管理することなく、クラウドコンピューティングの技術を使って提供してもらおうということです。
つまり、オンプレミスは自社で用意するのに対し、クラウドはクラウドサービスを利用する(他から借りる)ということです。
実は、一昔前まではオンプレミスが当たり前でした。そこで、クラウドの技術が発展し、サーバーを貸し出すということが現実的に可能になったことで、このようなインフラ環境が大きく変わり始めました。
そんな歴史もあり、オンプレミスはクラウドと非常に関係が深いワードなのです。クラウドの理解を深めるためにも知っておいたほうが良いワードでしょう。
クラウドサービスの種類【IaaS・PaaS・SaaS】
クラウドサービスには、主に3つの形態があります。(他もいろいろありますが)
それが、「IaaS」「PaaS」「SaaS」です。
一見むずかしそうな単語ですが、中身は単純なので、サクッと理解しちゃいましょう。
IaaS(Infrastructure as a Service)
IaaS(イアース)とは、Infrastructure as a Serviceの頭文字をとった言葉で、サーバやストレージといったインフラを提供するクラウドサービスです。
「インフラ」を提供する「サービス」 そのままですね。
「機材を用意しとくから使っていいよ。」という開発者向けのサービスです。
例えば、「Amazon EC2」といったサービスがIaaSに当たります。
これは、ハードウェアが用意されていて、その中身の構築はユーザーに任せられているというイメージです。
OSとかも全部入れるイメージ。
IaaSは、1から構築できるため自由度が高いですが、その分構築が大変で、より上級者が好むサービスになっています。
PaaS(Platform as a Service)
PaaS(パース)とは、Platform as a Serviceの頭文字をとった言葉で、開発環境を提供するクラウドサービスです。
「開発環境=プラットフォーム」を提供する「サービス」 ということですね。
「開発環境まで整えておくから自由に開発していいよ。」という開発者向けのサービスです。
例えば、「AWS」や「Microsoft Azure」といったサービスがPaaSに当たります。
開発環境をクラウド上に簡単に構築できるため、Web系のエンジニアは重宝するサービスです。
SaaS(Softwear as a Service)
SaaS(サース)とは、Softwear as a Serviceの頭文字をとった言葉で、ソフトウェアを提供するクラウドサービスです。
「ソフトウェア≒アプリケーション」を提供する「サービス」 ということですね。
「こんな機能あります。どうぞお使いください。」という一般ユーザー向けのサービスです。
例えば、「Gmail」や「iCloud」といったサービスがSaaSに当たります。
SaaSの利用者は、開発環境やインフラとはあまり関係ないように思えます。
より、一般向けのサービスというイメージです。
クラウドのメリット
クラウドの技術は、私たちの生活に大いに役立っています。
ここでは主に「SaaS」(一般向けのクラウドサービス)のメリットについて紹介していきます。
いろんな機器からアクセスが可能
クラウド上でデータを管理すると「いろんな機器からのアクセスが可能」というメリットがあります。例えば、
- 家のパソコンからでも職場のパソコンからでもアクセス可能
- デスクトップPCからでもノートPCからでもスマホからでもアクセス可能
といったように、「異なる機器で同一のデータにアクセスできる」、もしくは「複数人で共有できる」といった利点があります。
このいい例として、「Google Drive」があります。
Google Driveは同じGoogleアカウントでログインすれば、違う端末でも同じデータを見れます。
また、複数人で共有できるというメリットもあります。
めちゃくちゃ使いやすいですね。
こんな風に、クラウド上でデータを管理すると、「いろんな機器からのアクセスが可能」になるのです。
この特徴を全面的に利用すれば、端末を変えるときのデータ移行が必要なくなります。
だって、データがあるのは端末内じゃなくて、クラウド上なのですからね。
クラウド上にデータを置いておくのって結構便利。これからはもっとクラウド化が進んでいくのかもしれませんね。
保存容量を気にしなくていい
クラウドのメリットに「保存容量を気にしなくていい」ということが挙げられます。
これは、クラウドサービスの多くが、後からデータ容量を増やせるからです。
もし自分のパソコンの容量が限界まで達してしまったら、外付けのハードディスクを買うか、ストレージを交換しなくてはいけません。
スマホの場合であれば、そのようなことがしにくいですね。
ですが、クラウドのサービスは、後からデータ容量を増やしたり減らしたりといったことがスムーズに行えます。
iCloudであれば、「2GB→100GBプランに変更(月々500円)」みたいなのありますよね。
こんな手軽に保存容量を変更できるのも、クラウドの大きなメリットの一つとなっています。
僕もパソコンのデータ容量が足りなくなったときは、ちょっと苦労してます。データ系は全部クラウドに移しちゃおうかな。
インストールがいらない
クラウドサービスの特徴として、「インストールがいらない」ということが挙げられます。
パソコンやスマホは、ソフトウェアやアプリケーションを使うとき、一度端末にアプリをインストールしないといけません。
つまり、端末上で使えるようにする作業が必要ということです。
しかし、クラウドサービスではもともとそういった環境が整っている環境を使えるため、インストールがいらないという利点があります。
例えば、Outlookというメールアプリはパソコンにインストールしないと使えませんが、Gmailはインターネットブラウザさえあれば使えますよね。
これは、クラウドサーバ上でメールアプリが動いているので、お使いの端末にインストールする必要がないということです。
長いインストールとはおさらば!
クラウドサーバ側に高負荷の処理を任せることができる
これは、クラウドゲームなどに用いられる手法ですね。
例えば、高負荷のゲームはある程度処理能力が高いパソコンなどでしか動きませんね。
そこで、クラウド・コンピューティングの技術を利用すると、高負荷のゲームをいろんな端末でプレイすることができます。
それは、「クラウドサーバに高負荷の処理を任せる」という方法によって実現されます。
このように、コントローラーの入力をクラウド側が受け取り、クラウド側で処理され、画面情報や処理結果がお使いの端末に戻ってきます。
ポイントは「重い処理の部分をクラウド側のコンピュータが担っていること」です。
こうすることで、ユーザ側の負担が軽くなるので、スマホや性能のがあまり高くないノートパソコンといった重い処理を苦手とする端末でも、快適に高グラフィックのゲームなどができるようになるのです。
今話題のクラウドゲームというものです。この考えは天才的ですね。
クラウドの活用例
クラウド技術は目を見張るものがありますが、それを使ったサービスもまた魅力があります。
そのなかでも超有名どころのクラウドサービスを紹介します。
Appleが展開する「iCloud」
iCloudとは、写真などのデータをクラウド上で管理するといったAppleのクラウドサービスです。
有名なクラウドサービスですね!
Amazonが展開する「AWS」
AWSとは、Amazon Web Serviceと呼ばれるAmazonのクラウドサービスです。
世界中で一番多く使われているクラウドプラットフォームです。
Amazonはショッピングサイトのイメージが強いですが、実はクラウドでも有名な企業なのです。
SoftBank×NVIDIAが展開する「GeForce NOW Powered by SoftBank」
GeForce NOW Powered by SoftBankとは、
「グラフィックボードで有名なNVIDIA」
「5Gを展開するソフトバンク」
この最強タッグから生まれたクラウドゲームサービスです。
日本国内、いろんな機器から、臨場感のあるゲームをプレイすることができるという今話題のクラウドサービスです。
e-Sports界がさらに盛り上がってくれるのではないかと期待しています。
まとめ
今回は「クラウド」について解説しました。
- 「クラウド・コンピューティング」や「クラウドサーバ」を指す言葉
- ネットワーク経由でほかのコンピュータの機能を使えるという技術
また、クラウドの代表的なサービス形態を3種類紹介しました。
- インフラだけを用意してくれている開発者向けサービス「IaaS」
- 開発環境まで整えてくれている開発者向けサービス「PaaS」
- ソフトウェアを提供する一般向けサービス「SaaS」
- ほかにも...
そして、クラウドはこんなメリットがありました。
- いろんな機器からアクセスが可能!
- 保存容量を気にしなくていい!
- インストールがいらない!
- クラウドサーバ側に高負荷の処理を任せることができる!
最後に、クラウドサービスを使う上で注意を紹介して終わりにします。
その注意とは、「データが解析されている可能性」です。
これは、ビッグデータ解析などで皆さんの情報を解析している可能性があるということです。
特定の個人を調べ上げる目的ではないことは確かですが、サービスを使う上でどのようにデータが扱われているかは確認しておきましょう。
最後までご覧いただきありがとうございます。