皆さんは、エッジコンピューティング(Edge Computing)という言葉を聞いたことはありますか? エッジコンピューティングは、クラウドコンピューティングとも関連するITアーキテクチャです。すでに製造業や医療などの業界では活用されており、今後さらにさまざまな産業や応用分野で発展することが予想されています。
エッジコンピューティングが注目されている背景には、センサーやIoT(Internet of Things)機器などさまざまなデバイスから膨大な量のデータが日々生成されているという現状があります。ここでは、エッジコンピューティングについて、紐解いて解説していきます。
キャリアマップ編集部 文/ITライター 深谷歩
キャリアマップ編集部 文/ITライター 深谷歩
データの発生源近くで処理する仕組み
エッジコンピューティングとは、データが生成されるIoT機器やセンサーなどのデバイスに物理的に近い場所(エッジ)で処理される分散型のITアーキテクチャのことです。
これまでユーザーのコンピュータなどで生成されたデータは、リモートサーバーに送られそこで処理や保存が行われ、再びコンピュータに返されるというモデルが一般的でした。
しかしインターネットに接続されたデバイスの数と、デバイスによって生成されるデータの量が急速に増加しており、従来の中央集権的な処理では対応できなくなるという課題が出てきていました。データ量が増加すると、回線が混雑し通信に時間がかかることがあります。またネットワークの障害が混雑を悪化させ、通信が切れてしまうこともあります。
この問題への対策として、ネットワークが運べるデータ量である帯域幅を増やすことがありますが、コストがかかるので、通信に使われるすべての帯域幅を増やすことは困難です。
そこでエッジコンピューティングでは、データ生成源(センサー、デバイスなど)自体やその近くに配置したコンピュータやサーバーでデータの処理や制御を行います。これにより、通信の遅延を減らし、通信の効率を向上させることができるようになります。
クラウドコンピューティングとエッジコンピューティングは相互に補完する
クラウドコンピューティングは、インターネット経由でデータをデータセンターに送り、そこで集約して処理する技術です。先に説明したように、エッジコンピューティングは、データをデバイスの近くで処理する技術です。両者は、異なるコンピューティングモデルですが、互いに補完しあう関係にあります。例えば、エッジデバイスでデータを収集・分析し、必要に応じてクラウドに送り、他のデータと合わせて分析・学習を行い、その結果をエッジデバイスに戻して活用されることがあります。
エアコンの自動温度調整がその一例です。あるオフィスビル内に設置されたIoTセンサーが室温の上昇を検知した場合、データをクラウドに送信して処理を待つのではなく、現地でエアコンをコントロールできます。これにより、すばやい温度調整が可能になります。医療業界では、患者の血圧や脈拍のデータをデバイスやセンサーで収集し、異常が発生した場合にアラートを出すなどの処理を行うことができます。もちろん、これらのデータをクラウドに送信して、中長期的な観点からの分析や他のデータと組み合わせて分析するなどの活用も可能です。このような例から、エッジコンピューティングとクラウドコンピューティングは、データ処理や計算リソースの最適な配置を目指し、異なるユースケースでお互いに補完し合っていることがわかるのではないでしょうか。
センサーやカメラ、スマートウォッチまで。多様なエッジデバイス
では、エッジデバイスにはどんなものがあるのか、見ていきましょう。エッジデバイスは、エッジコンピューティング環境においてデータの生成、処理、分析を行うためのデバイスのことです。エッジデバイスは、さまざまな形態で提供されており、センサー、監視カメラから、スマートウォッチなどのウェアラブル端末、工場の機械などがあります。
センサーはさまざまなデバイスに組み込むことができ、環境からデータを収集し、温度、湿度、明るさ、振動などの情報を収集します。これらのセンサーデータを利用することで、リアルタイムで状況を把握し、環境の変化に効果的に対応できます。
他にも、シングルボードコンピュータ(Raspberry Piなど)やマイクロコントローラー(Arduinoなど)などを使ったエッジデバイスも存在します。これらは、複雑な計算と分析を実行でき、ロボティクス、産業制御システム、スマート農業などの分野で広く活用されています。
またエッジデバイスの中で、複数のデバイスから収集されたデータをまとめ、必要に応じてクラウドに転送するためのゲートウェイが使われる場合があります。これにより、デバイス数が多い場合や異なる通信プロトコルを使用している場合でも、データをきちんとまとめて送ることができます。
エッジコンピューティングの利点は、遅延が少ない
エッジコンピューティングは、データが生成されるデバイスの近くで処理が行われるため、遠隔地のクラウドにデータを送信する必要がなく、遅延が発生しにくいため、リアルタイムで反応できることが利点です。そのため、遅延が許容されないアプリケーションに特に適しています。
最近、自動運転車の話題が増えましたが、自動運転車もその一例です。自動運転車は、周辺の道路環境や交通状況、車両の状態信号などデータをリアルタイムで収集、分析し、処理を行います。データ遅延が発生すると事故のリスクが高まるため、エッジコンピューティングで処理しています。
またエッジコンピューティングは、ローカルで計算を実行し、接続可能な場合のみデータを送信するという活用ができるので、接続が不安定で帯域幅が制限されている場所でも利用しやすいという利点があります。例えば、油田、船舶、砂漠などの環境でも、データをローカルで処理して、送信するデータの量を削減し、少ない帯域幅や接続時間でも対応できます。
セキュリティは高いが、エッジデバイスそのものの管理には注意が必要
膨大なデータを国や地域を超えて送ると、データのセキュリティや個人情報のリスクが上がります。特に欧州では、厳しいルールであるGDPR(General Data Protection Regulation:一般データ保護規則)に従ってデータを取り扱う必要があります。エッジコンピューティングの場合は、クラウドや主要なデータセンターに送信する前に、データをローカルで処理して、機密情報や個人情報を削除して通信することでデータを守ることができます。
また、クラウドやデータセンターまでの通信の安全性についても、エッジコンピューティングでデータを暗号化することで、盗聴やデータ改ざんから保護することが期待できます。
一方で、IoTデバイスの中にはセキュリティの脆弱性を抱えているものもあります。エッジコンピューティングを設計するときには、十分にデバイスの管理を検討し、ソフトウェアの更新やバッチ適用などができるようにしておく必要があります。主なクラウドプロバイダーが提供するIoTサービスには、安全な通信が提供されていますが、自分たちでゼロから構築する場合は、安全性にも配慮する必要があります。また、物理的にIoT機器やセンサーにアクセスされるリスクもあるため、設置場所の入室管理にも気をつけなければなりません。
IoTと共にさまざまな分野での活用が広がる
最後に、エッジコンピューティングのこれからについて考えてみましょう。エッジコンピューティングの機能や性能は向上しており、工場、医療、農業、自動車など幅広い産業で活用が進んでいます。今後、この技術はさらに一般的になり、活用が拡大されると期待されています。
エッジコンピューティングのために設計されたコンピューティング、ストレージ、ネットワークアプライアンス製品は増えており、複数のベンダーが製品の相互運用性と柔軟性を拡充させる動きもあります。5GやWi-Fi6などの無線通信技術も、エッジコンピューティングの利用用途の拡大に寄与するという見方もあります。エッジコンピューティングは、IoTのようなデバイスが生み出す急激なデータの増加によって注目されるようになりました。IoTはまだ発展の余地があるため、エッジコンピューティングとともに進化していくと考えられます。
この記事を通じて、皆さんが少しでもエッジコンピューティングに興味を持ったら、電子工作として手軽に扱えるRaspberry PiやArduinoを使って、温度や明るさに反応するセンサーを使った仕組みなどを構築してみるのがおすすめです。エッジコンピューティングの片鱗を楽しめると思いますので、ぜひ挑戦してみてください。