クラウド利用における基本用語を解説します。

はじめに
クラウドを利用するうえで、非常によく出てくる用語(や横文字)が存在します。本記事ではそのような頻発用語について解説します。
当ブログでも一部の用語はよく出てくるものになりますので、その際はここに記載されている内容を確認していただければと思います。
クラウドコンピューティング(Cloud Computing)
そもそもクラウドとは?
クラウド(クラウドコンピューティング)とは、インターネット上のリモートサーバーにデーターやアプリケーションを保存・管理し、必要な時にそれらを利用できるようにする技術のことを指します。

従来のパソコンやサーバーに比べて、インターネット上のリソースを活用することで柔軟性や拡張性を高めることができます。
クラウドの特徴
クラウドには以下のような特徴があります。
- リソース共有
クラウドでは、複数のユーザーが同じインフラストラクチャ(インフラ)やリソースを共有することができます。これにより、コストを削減することができます。
- スケーラビリティ
クラウドでは、需要に応じてリソースを柔軟に拡張することができます。ユーザーは必要に応じてコンピューティングパワーやストレージ容量を増減させることができます。
- オンデマンドサービス
クラウドは必要な時に必要なサービスを提供することができます。ユーザーは必要なアプリケーションやデータにいつでもアクセスすることができます。
- メンテナンスの軽減
クラウドプロバイダーがシステムのメンテナンスやアップグレードを行うため、ユーザーは自分でハードウェアやソフトウェアの管理をする必要がありません。
クラウドの提供形態
クラウドはビジネスや個人のニーズに合わせてさまざまな形態で提供されています。
主なクラウドサービスとして以下の形態で提供されています。
IaaS(Infrastructure as as Service)
「インフラストラクチャーとしてのサービス」と言われており、基盤となるインフラストラクチャ(仮想サーバやストレージ、ネットワークなど)を提供するサービスモデルです。ユーザは自身のアプリケーションやデータをそのインフラに載せるために必要な基盤として利用します。IaaSでは、ユーザはオペレーティングシステム(OS)やアプリケーションのインストール、管理、設定など、インフラストラクチャの制御と管理を担当します。
IaaSの主なサービスとして、Amazon Web Service(AWS)の「EC2」、Microsoft Azureの「Virtual Machines」、Google Cloud Platform(GCP)の「Compute Engine」などがあり、これらのサービスでは、仮想サーバの作成やネットワークの設定、ストレージの管理などが行えます。
PaaS(Platform as a Service)
「プラットフォームとしてのサービス」と言われており、アプリケーションの開発や実行に必要なプラットフォーム(ランタイム、ミドルウェア、データベースなど)を提供するサービスモデルです。
ユーザは自身のアプリケーションを開発、テスト、デプロイするために必要なプラットフォームを利用します。PaaSでは、ユーザはアプリケーションのロジックやデータに焦点を当てることができ、インフラストラクチャの詳細な管理はPaaSプロバイダが担当します。
PaaSの主なサービスとして、「Heroku」やGCPの「App Engine」、Azureの「Azure App Service」などがあり、これらのサービスでは開発者はアプリケーションのコードやデータベースの設定に集中し、プラットフォームの管理はPaaSプロバイダが行います。
SaaS(Software as a Service)
「ソフトウェアとしてのサービス」と言われており、クラウド上で実行されるソフトウェアアプリケーションを提供するサービスモデルです。ユーザはウェブブラウザやモバイルアプリを通じて、アプリケーションにアクセスし、その機能を利用します。ユーザはアプリケーションの利用に集中し、バックエンドのインフラストラクチャやプラットフォームについては意識する必要がありません。
SaaSの主なサービスとして、「Salesforce」、「Google Workspace(旧G Suite)」、「Microsoft 365」などがあり、これらのサービスではユーザはWebブラウザやモバイルアプリを通じて、既存のソフトウェアアプリケーションを利用することができます。
例えば、SalesforceはCRM(顧客関係管理)ソフトウェアを提供し、Goole WorkspaceやMicrosoft 365はオフィススイート(メール、ドキュメント、スプレッドシートなど)を提供しています。それぞれのサービスは、企業や個人のニーズに合わせて利用することができます。
また、クラウドサービスは柔軟性、拡張性、管理の容易さなどの利点を持ちながら、企業や個人にとって負担の少ない形で必要な機能を提供します。
利用者は必要な機能に応じて、IaaS、PaaS、SaaSのいずれか、またはこれらの組み合わせを選択することができます。

最近の傾向として、○○aaS(○○ as a Service)がいろいろ出てきており、収集がつかなくなりつつあります(F(unction)aaS、D(esktop)aaS、…)。
最近ではクラウドを利用したAIやビッグデータ処理、IoT(Internet of Things:モノのインターネット)などの技術をクラウドを利用して行うことも注目されています。
クラウドはビジネスや個人の生産性を向上させるための強力なツールであり、将来的にもさらなる発展が期待されています。
クラウドサービスプロバイダー(CSP)
クラウドサービスプロバイダー(単にクラウドプロバイダーとも)とは、クラウドコンピューティングの各種サービスを提供する企業や組織のことを指します。
クラウドサービスプロバイダーが提供するサービスの範囲は広範ですが、主に上記のIaaS、PaaS、SaaSを提供していることが多いです。
オンプレミス(On-Premises)
クラウドの対義語はオンプレミス(On-Premises、オンプレとも)です。
オンプレミスとは、データやアプリケーションを自社の物理的なサーバーやインフラストラクチャに設置し、自社内で管理・運用する方式を指します。

つまり、クラウドではなく、自社でデータセンターやサーバールームを保有し、ハードウェアやソフトウェアを自己管理する形態です。
クラウドとオンプレミスにおけるメリットデメリット
クラウドとオンプレミスにおけるそれぞれのメリットデメリットなどの特徴はそれぞれの対になることが多いです。
クラウドのメリット
- 初期コストの削減
自社でインフラストラクチャを構築する必要がないため、初期投資やランニングコストを削減することができます。
- 柔軟性と拡張性
必要に応じてリソースを追加・縮小することができるため、ビジネスの成長や需要変動に対応することが容易です。
- 高い可用性と信頼性
クラウドプロバイダーは冗長化やバックアップを行い、高い可用性と信頼性を提供します。
- グローバルなアクセス
インターネットに接続できる場所ならどこからでもアクセス可能です(設定による)。
- 環境への負荷軽減
クラウドは物理的なサーバーやハードウェアの使用を最適化するため、エネルギー効率や環境への負荷を軽減することができます。
- バックアップとデータの保護
クラウドはデータのバックアップやセキュリティ対策を提供し、データの損失やセキュリティリスクを軽減します。
クラウドのデメリット
- セキュリティ
クラウド上のデータやアプリケーションのセキュリティは適切に設定したり、データを暗号するなどの対策が必要です。
- データの所有権とプライバシー
クラウド上にデータを保存する場合、データの所有権やプライバシーに関する問題が生じる可能性があります。利用規約や契約内容を注意深く確認する必要があります。
- インターネット接続の依存
クラウドはインターネットに接続することが前提です。インターネット接続が不安定な場合、アクセスやパフォーマンスに問題が生じる可能性があります。
オンプレミスのメリット
- データのセキュリティーと完全な制御
組織はデータやアプリケーションの物理的な場所をセキュリティ対策を自ら管理することができます。また、オンプレミス環境では、特定の規制や法律要件に適合しやすいという利点もあります。
オンプレミスのデメリット
- 高い初期投資とランニングコスト
オンプレミスでは、ハードウェアやソフトウェアの購入、設置、保守、アップグレードに関する高い初期投資とランニングコストがかかります。
- スケーラビリティの制限
オンプレミス環境では、需要の変動に応じてリソースを柔軟に拡張することが難しい場合があります。物理的な制約や予算の制約により、スケーラビリティに制限があります。
- メンテナンスとアップデートの負担
ハードウェアやソフトウェアのメンテナンス、アップデート、セキュリティパッチの適用などを自社で行う必要があり、これには時間とリソースが必要です。
- リスク管理と災害復旧
オンプレミスでは自社がデータのバックアップ、災害復旧計画、セキュリティ対策などを全て管理する必要があります。これらのリスク管理は適切な専門知識と投資が必要です。
クラウドとオンプレミスについてのまとめ
個人や組織はクラウドかオンプレミスかを選択する際に、セキュリティ要件、コスト効率、スケーラビリティ、管理の容易さなど、自身のニーズや要件に基づいて判断する必要があります。
一般的には、中小企業やスタートアップ企業はクラウドを選択することが多く、大規模な企業や特定の業界(金融機関や政府機関)ではオンプレミス環境を選択することが多いですが、最近では特定業界でもクラウドを選択するようになってきています。

また、最近では「ハイブリッドクラウド」という選択肢も増えています。
ハイブリッドクラウドでは、一部のデータやアプリケーションをクラウドに移行し、他の重要なデータやアプリケーションはオンプレミスで保持するという組み合わせが行われます。
これにより、セキュリティやコントロールのニーズとクラウドの柔軟性やスケーラビリティの利点を両立させることができます。
デプロイ(する)
クラウド関係の記事やブログを見ていると、「デプロイ(する)」ということがよく書かれています
「デプロイ」とは、ソフトウェア開発でよく使われる用語で、開発されたソフトウェアやアプリケーションを特定の環境(例えばテスト環境や本番環境など)に置き、実行可能な状態にすることを指します。
つまり、データやアプリケーションや環境そのものを特定の場所に展開し、使えるようにするということです。
インスタンス
特にIaaSなどの仮想マシンにおいてこの単語はよく出現します。
クラウド内の言葉における「インスタンス」とは「実体」のことを表しており、起動(や作成した)仮想マシンや仮想ルータのことを主に示しますが、「仮想的に存在している何か」そのものを示すこともあります。
スケーラビリティ
スケーラビリティを日本語にすると「拡張性」です。他にも「スケーラブルな」などの表現があります。
クラウドでは規模や需要に応じて性能を向上や縮小を簡単に行うことができます。需要などに応じて、自由に使用しているインスタンスやサービスの性能を伸縮できることからよく使われます。
スケーラビリティの度合いを示すものの中に以下のようなものもあります。
スケールアップ
インスタンスそのものの性能を上げてしまうことを言います。垂直スケーラビリティとも言います。
スケールアウト
インスタンスの数を増やし、並列に処理を行うことで処理速度を向上させる方法のことを言います。水平スケーラビリティとも言います。
レプリカ、レプリケーション、レプリケート
レプリカ(複製品)というのは、データや環境をまるままコピーした複製品のことを言います。
レプリカ自体を作ることをレプリケーションといいます。
レプリカを使って、環境などを復元することをレプリケートといいます。
まとめると複製品自体のことを「レプリカ」、それを作ることを「レプリケーション」、レプリカを復元することを「レプリケート」です。
クラウドサービスでは、ユーザが意図的に(またはユーザが特に意識することなく自動的に)レプリケーション、レプリケートするサービスが存在します。
フェイルオーバー
フェイルオーバー (Failover)とは、稼働中のサーバやアプリケーションやシステムなどに障害発生した際、自動的に待機システムに切り替える仕組みことを言います。
〇〇ドリブン
クラウド関係では、「〇〇ドリブン」という言葉がちょいちょい出てきます。筆者の間隔としては、「〇〇ドリブン=〇〇きっかけ」と読み替えるようにしていますが、いくつか紹介します。
イベントドリブン(イベント駆動型)
RPGなどでは、特定の場所に到達したり、誰かに話しかけたりすることで「イベントが発生する」とよく言います。また、プログラミングの世界などでは、ユーザが何か操作(キーボードやマウス操作、WEB上のボタンをクリックしたなど)ことなどを「イベントが発生する」言ったりします。また所定の場所にデータが格納されたり、エラーが発生したなどの事象に対しても同様に「イベントが発生する」と言ったりします。
このように何かのイベントをきっかけにして、次の流れが発生していくことをイベントドリブン(またはイベント駆動型)と言います。
反対語として、「手続き型」「フロー駆動型」と言ったりします。この場合あまり、「フロードリブン」などとは言ったりしないです。
データドリブン
クラウド用語というよりはどちらかというとビジネス用語だと筆者は思っています。
データドリブンとは、経験や勘ではなく、計測・測定データやマーケティングのデータなど、データを基にして判断したり、次のアクションを起こすことを言います。
職人の経験や勘ではなくデータを使って根拠を示すということですね。
マイクロサービス
クラウド用語というよりも、ソフトウェア開発における手法(またはアーキテクチャ)です。
1つのアプリケーションを複数の小さなサービスで分割して、それらを組み合わせ、1つのアプリケーションを動作させる手法です。
このようにすることで、1つのアプリケーション全体を改修や修正するのではなく、1つの小さなサービスのみを改修・修正することができることから近年主流となっていています。
インテグレーション
2つ以上のものやサービスを組み合わせて(接続、連携、統合)新しいものを作ることを言います。
シームレス
シーム(seam:継ぎ目)がレス(less:ない)ということです。途切れることなく処理できるなどを「シームレスな処理」と言ったりします。
また、枠などのとらわれたものを超えるような意味で使う場合もあります。
ベストプラクティス
これもクラウド関係で調べ物などをしているとよく出てくる言葉です。
ベストプラクティスとは、特定の業界や領域において、最も効率的な方法や手法を示す経験則やガイドラインのことを指します。

また、特定の目標を達成するために確立された成功の手段や方法論であり、その分野での専門家や組織の経験や知識に基づいています。
結局のところ、その事柄や領域において、先人が行った中で最も良い道といったところでしょうか。
以下のような特徴を持っているものをベストプラクティスと呼ぶことが多いです。
- 効果的性
ベストプラクティスは目標達成や問題解決において高い効果を発揮することが期待されています。
過去の経験や実績に基づいて、より良い結果を生み出す方法として確立されています。
- 効率性
ベストプラクティスはリソースの最適利用や時間の節約など、効率性の向上を促進します。組織や個人が業務などをよりスムーズかつ迅速に進めるための手法やプロセスが含まれている場合があります。
- 標準化
ベストプラクティスは特定の業界や領域に広く受け入れられ、標準化される傾向があります。これにより、異なる組織や専門家が同じ問題に取り組む際に、一貫性と比較可能性が確保されます。
- 持続性
ベストプラクティスは継続的な改善と更新によって進化します。
新しい技術やトレンドの出現に合わせて、より効果的な手法が見つかれば、それが新たなベストプラクティスとして採用されることがあります。
まとめ
クラウドを利用する上で頻出の単語について解説しました。今後も当ブログや動向などにより追加していく予定です。
コメント