エッジコンピューティングとは?

エッジコンピューティングは、データのソースに演算処理を近づけることにより、インターネットデバイスとWebアプリケーションを最適化します。これにより、クライアントとサーバー間の長距離通信の必要性が最小限に抑えられ、遅延が減り、さらに帯域幅の使用量が減少します。

学習目的

この記事を読み終えると、以下のことができるようになります。

  • エッジコンピューティングの定義
  • ネットワークエッジでコードを実行することの意味を理解
  • エッジコンピューティングの長所と短所の概要

記事のリンクをコピーする

エッジコンピューティングとは?

エッジコンピューティングとは、遅延と帯域幅の消費を低減するために、演算処理を可能な限りデータのソースに近づけることに焦点を当てたネットワークの基本方針です。簡単に言えば、エッジコンピューティングとは、クラウドで実行するプロセスを減らし、それらのプロセスをユーザーのコンピューター、IoTデバイスエッジサーバーなどローカルな場所に移動することを意味します。ネットワークのエッジにコンピューティング機能を移動すると、クライアントとサーバー間で発生する長距離通信の量が最小限に抑えられます。

ネットワークエッジとは?

インターネットデバイスの場合、ネットワークエッジは、デバイス、またはデバイスを含むローカルネットワークがインターネットと通信する場所を指します。エッジは少しあいまいな用語です。たとえば、ユーザーのコンピューターまたはIoTカメラ内のプロセッサはネットワークエッジと見なされますが、ユーザーのルーター、ISP、またはローカルエッジサーバーもまた、エッジと見なされるためです。重要なことは、通信し合うデバイス間の距離が非常に長い配信元サーバーやクラウドサーバーとは異なり、ネットワークのエッジが地理的にデバイスに近いことです。

エッジコンピューティングと他のコンピューティングモデルとの違いは?

初期のコンピュータはかさばる大型の機械で、直接アクセスするか、基本的にコンピュータを拡張した端末を介してしかアクセスできませんでした。パソコンの登場により、コンピューティングはより分散した形で行われるようになりました。一時期は、パーソナルコンピューティングが主流でした。アプリケーションの実行やデータの保存は、ユーザーのデバイスや、時にはオンプレミスのデータセンター内で、ローカルに行われました。

比較的最近になって開発されたクラウドコンピューティングには、このようなローカルで行われるオンプレミスコンピューティングと比べて多くの利点がありました。クラウドサービスは、ベンダーが管理する「クラウド」 (データセンターの集合体)に集中しており、インターネットを介してあらゆるデバイスからアクセスできます。

しかし、クラウドコンピューティングでは、ユーザーとクラウドサービスがホストされているデータセンターとの間に距離があるため、遅延が発生する可能性があります。エッジコンピューティングは、クラウドコンピューティングの集約型という性質を保ちながら、コンピューティングをエンドユーザーに近づけることで、データの移動距離を最小限にします。

要約:

  • 初期のコンピューティング:1台の独立したコンピュータ上でのみ動作する、集約型アプリケーション
  • パーソナルコンピューティング:ローカルに動作する分散型アプリケーション
  • クラウドコンピューティング:データセンターで動作する集約型アプリケーション
  • エッジコンピューティング:ユーザーに近い場所、デバイスまたはネットワークエッジ上で動作する、集約型アプリケーション

エッジコンピューティングの例は?

数十台の高解像度IoTビデオカメラで保護された建物を想像してください。これらは、生のビデオ信号を単純に出力し、その信号をクラウドサーバーに継続的にストリーミングする「低性能」のカメラです。クラウドサーバーでは、すべてのカメラからのビデオ出力がモーション検出アプリケーションに送られ、アクティビティを特徴とするクリップのみがサーバーのデータベースに保存されるようにします。これは、転送される大量のビデオ映像によってかなりの帯域幅が消費されるため、建物のインターネットインフラストラクチャに一定の大きな負担がかかることを意味します。また、すべてのカメラからのビデオ映像を同時に処理するクラウドサーバーには非常に大きな負荷がかかります。

ここで、モーションセンサーの計算がネットワークエッジに移動したとします。各カメラが独自の内部コンピューターを使用してモーション検出アプリケーションを実行し、必要に応じて映像をクラウドサーバーに送信した場合はどうなるでしょうか?これにより、カメラ映像の多くをクラウドサーバーに移動する必要がなくなるため、帯域幅の使用が大幅に削減されます。

さらに、クラウドサーバーは重要な映像の保存のみを担当するようになります。そのため、サーバーは過負荷になることなく、より多くのカメラと通信できます。これがエッジコンピューティングの概要です。

エッジコンピューティングの他の使用例は?

エッジコンピューティングは、さまざまなアプリケーション、製品、サービスに取り入れることができます。以下はその一例です:

  • セキュリティシステムの監視:前述の通りです。
  • IoTデバイス:インターネットに接続されたスマートデバイスは、クラウドではなくデバイス自体でコードを実行することで、より効率的なユーザーとのインタラクションが可能になります。
  • 自動運転車:自律走行車は、サーバーからの指示を待つことなく、リアルタイムに反応する必要があります。
  • より効率的なキャッシング: CDNエッジネットワーク上でコードを実行することで、アプリケーションはコンテンツのキャッシュ方法をカスタマイズし、より効率的にユーザーにコンテンツを提供することができます。
  • 医療用モニター機器:医療機器は、クラウドサーバーからの連絡を待つことなく、リアルタイムに対応することが重要です。
  • ビデオ会議:インタラクティブなライブビデオは、かなりの帯域幅を必要とするため、バックエンドプロセスをビデオのソースに近づけることで、ラグや遅延を減らすことができます。

エッジコンピューティングの利点とは?

コスト削減

上記の例に見られるように、エッジコンピューティングは帯域幅の使用とサーバーリソースの最小化に役立ちます。帯域幅とクラウドリソースは有限であり、費用がかかります。すべての家庭やオフィスでカメラ、プリンター、サーモスタット、トースターに至るまでスマート製品が装備されるようになるなど、2025年までに世界中で750億台以上のIoTデバイスがインストールされると、Statistaは予測しています。これらすべてのデバイスをサポートするには、かなりの量のコンピューティングをエッジに移動する必要があります。

パフォーマンス

プロセスをエッジに移動することのもう1つの重要な利点は、レイテンシーを短縮することです。デバイスがどこか離れた場所にあるサーバーと通信する必要があるたびに、レイテンシーが発生します。たとえば、IMプラットフォームでチャットしている同じオフィスの2人の同僚は、それぞれのメッセージを建物の外にルーティングし、世界中のどこかのサーバーと通信し、受信者の画面に表示される前に戻す必要があるため、かなりのレイテンシーが発生する可能性があります。そのプロセスがエッジにもたらされ、会社の内部ルーターがオフィス内チャットの転送を担当している場合、その顕著なレイテンシーは存在しません。

同様に、あらゆるタイプのWebアプリケーションのユーザーが外部サーバーと通信する必要のあるプロセスを実行すると、レイテンシーが発生します。これらのレイテンシーの期間は、利用可能な帯域幅とサーバーの場所に基づいて異なりますが、ネットワークエッジにより多くのプロセスを導入することで、これらのレイテンシーを完全に回避できます。

新しい機能

さらに、エッジコンピューティングは、これまで利用できなかった新しい機能を提供できます。たとえば、企業はエッジコンピューティングを使用して、エッジでデータを処理および分析できます。これにより、リアルタイムでの分析が可能になります。

要約すると、エッジコンピューティングの主な利点は次のとおりです:

  • レイテンシーの減少
  • 帯域幅の使用と関連コストの削減
  • サーバーリソースと関連コストの減少
  • 追加機能

エッジコンピューティングの欠点とは?

エッジコンピューティングの1つの欠点は、攻撃ベクトルが増加する可能性があることです。エッジサーバーや堅牢な内蔵型コンピューター付きIoTデバイスなど、より多くの「スマート」デバイスが混在するため、悪意のある攻撃者たちがこれらのデバイスを侵害する新たな機会があります。

エッジコンピューティングのもう1つの欠点は、より多くのローカルハードウェアが必要になることです。たとえば、IoTカメラには、生のビデオデータをWebサーバーに送信するための組み込みコンピューターが必要ですが、独自のモーション検出アルゴリズムを実行するには、より処理能力の高い、より洗練されたコンピューターが必要ですが、ハードウェアのコストの低下により、よりスマートなデバイスの構築が安価になっています。

余分なハードウェアの必要性を完全に軽減する方法の一つに、エッジサーバーを有効活用する方法があります。たとえば、地理的に分散した335のエッジ拠点を持つCloudflareのネットワークなら、Cloudflareのお客様はCloudflare Workersを使って、世界中どこでもエッジコードを実行できます。