近年のエッジコンピューティングの注目度が高まる一方で、従来のクラウドコンピューティングに関してはあまり騒がれなくなっているように見えます。しかし、クラウドコンピューティングとエッジ コンピューティングはどちらか一方を選択するものではなく、互いに補い合う関係にあります。ここでは、エッジコンピューティングとクラウドコンピューティングのそれぞれの特徴を述べながら、構築にあたっての注意点やクラウドコンピューティングとエッジコンピューティングの使い分けについて解説します。
クラウドコンピューティングとは
クラウドとは直訳すると「雲」を意味しています。そのイメージから、サーバーの実態は「雲の中」あるいは「雲の上」にあり、エンドユーザは、そのサーバーの実態を意識しないで、使用することができるシステムを表した名称といえるでしょう。「雲の上」には原則として複数のサーバーがあり、役割を分担していますが、「雲の下」、すなわちエンドユーザの側ではそれを意識しないで使うことができます。つまり、複数のサーバーをあたかも1つのサーバーのように扱う技術のことなのです。
登場の背景としては、インターネット環境の進化が挙げられます。インターネットの発達が、結果的に複数のサーバーが乱立する状況を促したといえるのです。こうした状況では、エンドユーザはそれぞれのサーバーに都度アクセスを行う必要があります。たとえば、機能別にサーバーが構築されている場合、クライアントは異なるサーバーにアクセスするたびに異なるパスワードを入力しなくてはなりません。しかし、これはクライアントにとって大変煩雑になってしまうため、サーバーの管理や統合が課題となりました。この問題を解決したのが、クラウドコンピューティングという技術です。
クラウドコンピューティングを支える要素技術
クラウドコンピューティングを支えている主な要素技術としては、仮想化技術、分散技術、セキュリティ技術が挙げられます。ここでは、それぞれの要素技術を見ていきましょう。
- 仮想化技術
仮想化技術はハードウェアやOSの違いにかかわらず同じアプリケーションが動作するようにする技術です。たとえば、サーバーAとサーバーBが異なるOSだったとしても、仮想化技術を用いて同じアプリケーションが走るようにしておけば、クラウドの下にあるエンドユーザはサーバーのOSを意識することなくクラウドサーバーを利用することができます。また、クラウドサーバーの構築に際しても、サーバーの目的に応じて、OSやハードウェアの選択をより柔軟に行うことができることもメリットです。 - 分散技術
分散技術は分散処理技術とも言います。上述したように、雲の中のクラウドサーバーは原則として複数存在しますが、これらのサーバー群を協調させて動作させる技術です。役割を分担させつつ協調させておけば、必要な機能を追加したい場合には、サーバーを追加していけばよいので、柔軟なシステム構築を行うことができます。 - セキュリティ技術
クラウドコンピューティングは、サーバー間やエンドユーザとのやり取りはインターネット上で行われます。これは、場合によってはインターネットを介して第三者に交信を覗かれたり、情報が漏洩したりする可能性があります。したがって、セキュリティ技術は大変重要です。特にクラウドサーバーにはデータが集中して蓄積されるので、一旦情報漏洩が起これば被害が甚大なものになってしまうことも考えられます。このため、いかにセキュリティを確保するか、はクラウドを利用するうえで考えなくてはならないものなのです。
エッジ コンピューティング とは
ここからはエッジコンピューティングについて見ていきましょう。こちらはクラウドコンピューティングの「雲の上」での処理に対して、「雲の下」での処理を行います。つまり、よりエンドユーザに近いところで処理を完結させることが目的です。「エッジ」とは「端」という意味で、ネットワークの末端で処理を完結させることを表しているといえます。エッジサーバー内部で処理を完結させることで、ネットワークへのデータの流出を抑え、クラウドサーバーの負担を軽減することができます。
クラウドコンピューティングが一般的になり、さまざまな分野で使用されるようになりました。しかし、近年のIoT化の流れのなかで、情報システムには大量のデータを高速に処理することが求められています。この命題をクリアするためにも、分散処理が行えるエッジコンピューティングに注目が集まるようになったのです。
エッジコンピューティングを支える要素技術
クラウドコンピューティングを支える要素技術は主にソフトウェアの技術ですが、エッジコンピューティングではハードウェアの要素技術が重要です。主として信頼性技術、無線技術、リアルタイム処理技術が挙げられます。
- 信頼性技術
エッジサーバーには信頼性の高さが要求されます。特に、産業システム分野でのIoTでは、工場のように環境条件の厳しいところに設置する場合が多いので、止まらないことや誤動作しないことが重要です。そのため、ハードウェアを多重化し冗長性を持たせ、接地(アース)を念入りに行うなどの対策が必要になります。 - 無線技術
通常のネットワークでは主にLANケーブル(ツイストペアケーブル)が使われることが多いですが、ツイストペアケーブルは長距離の伝送にはあまり向いていません。また、電気的な雑音にもあまり強くありません。また、有線通信では配線が煩雑になることや、工場の床下にケーブルを設置するスペースがない場合があることなども問題になります。そのため、エッジサーバー間の通信やクラウドサーバーとの通信は主にLPWAのような無線通信で行われることが多いのです。 - リアルタイム処理技術
エッジサーバーは製造装置を常時監視していることから、リアルタイムに近い処理を要求されます。また、エッジサーバーのリソースには限りがあります。したがって、エッジサーバーに乗せるソフトウェアは、できるだけ無駄を省いて処理を高速に実行できることが要求されます。
導入にあたっての考慮すべき点
それでは、クラウドコンピューティングとエッジコンピューティングを導入するにあたっては、どのようなことに注意して進めればよいのでしょうか。主なポイントを以下にまとめます。
システムの適用範囲を明確にする
まず、システムの適用範囲を明確にする必要があります。IoTの場合、すべてをエッジコンピューティング、またはすべてをクラウドコンピューティングで実現するのは、現実的には不可能といってよいでしょう。このため、最初に実現したい機能の割り振りを詳細に描いておく必要があります。これはコスト面でも重要になってきます。というのも、クラウドコンピューティングの場合は必要になれば後から機能を追加できる場合が多いのですが、エッジコンピューティングの場合は同じように考えられないためです。特に後者はイニシャルコストが高い場合が多いので、適用範囲を決めておかないと、採算が取りづらくなります。
システムに必要なスピードを考える
一般的な事務処理にはクラウドコンピューティングのスピードで十分なことが多いでしょう。また、エッジコンピューティングはスピードを要求されるときだけに使用するのがベストです。
コストメリットを考える
以上のことから、一般的な事務処理にはクラウドコンピューティング、IoTにはエッジコンピューティングというのが、コストメリットが最適になる場合が多いです。
クラウドとエッジの特徴をつかんで、合理的なシステム構築を行おう
以上、クラウドコンピューティングとエッジコンピューティングの特徴と、それらを支える要素技術、さらに導入にあたっての考慮すべき点を述べました。上述したように、クラウドコンピューティングと、エッジコンピューティングとは二者択一ではなく、補い合う関係にあります。また、適用される分野によっても、向き不向きがあります。クラウドとエッジの特徴をつかんで、より合理的なシステムを構築すべきでしょう。