前回は、エッジコンピューティングにおける管理機能を提供するエッジプラットフォームサービス「Volterra」のユースケースとして、店舗のデータを収集・分析するモニタリングを紹介しました。今回は、もう1つのユースケースとして、エッジでの1次処理について解説していきます。
今までのクラウドコンピューティング(集中処理)では、あらゆるデータをすべてクラウドやデータセンターにアップロードし、そこで情報を処理していました。しかし、最近よく耳にするAIを使ったアプリケーションでは、通信効率が悪化するケースがあります。
例えば、顔認識やオブジェクト認識といった、画像を分析するようなアプリケーションです。今回は顔を認識して認証をかけるアプリケーションを例にとって、エッジでの1次処理について説明します。
エッジで1次処理するメリット
画像を認識する一般的なアプリケーションでは、カメラの映像ストリーミングデータを受け取り、フレーム単位で処理をします。そのため、クラウドコンピューティングの場合は、すべての映像データをインターネット経由でアップロードする処理が発生します。
この場合、カメラの台数、画質の解像度、フレームレートによってはインターネットへの帯域が足りず、適切な解析ができないことにもなりかねません。また、すべてのデータを1カ所に集めるので、コンピューティングの負荷も集中してしまいます。ここで、エッジコンピューティングを用いることで、このような帯域と負荷の問題を解決することができます。
今回は、RealNetworksのAI顔認証ソフトウェア「SAFR」を使用した顔認識システムを用いたユースケースを紹介します。SAFRは、カメラの映像データから映った人の顔を抜き取るアプリケーションと、抜き取った顔のデータをデータベースに照合するアプリケーションを分けて構築することができます。つまり、映像データから顔を抜き取るアプリケーションをエッジに実装し、顔のデータを照合するアプリケーションをクラウドやデータセンターに実装する構成が取れます。
この構成では、まず、エッジ側では、AIで映像データから人の顔を抜き取って画像データにします。これによって、従来は映像データを全てクラウドにアップロードしていましたが、画像データのみをアップロードすればよくなり、通信量を劇的に削減します。
続いて、クラウド側では、エッジで生成した画像データを人物画像のデータベースと照合する処理のみをすればよく、処理負荷も大幅に低減されることになります。
エッジコンピューティングの構築
エッジコンピューティングによる負荷の分散やネットワークトラフィックの効率化を、アプリケーションの構築方法で実現できました。次に考えるべき点は、各エッジにアプリケーションをいかに効率よくデプロイできるかです。
もちろん、小型PCのエッジデバイスにLinuxなどのOSを単体で動作させて、その上に手動でアプリケーションをインストールすることでもエッジコンピューティングを実現可能です。数台程度のエッジデバイスを管理するだけなら、さほど問題にならないと思いますが、エッジデバイスの台数やアプリケーションの種類などが増えていくと、単体での管理では手に負えなくなります。ここで、エッジコンピューティングの構築を簡単にするプラットフォームをVolterraで実現します。
Volterraにはエッジとなるハードウェア(サポートされているハードウェア一覧)に「VoltMesh/VoltStack」 をセットアップできます。そして、「VoltConsole」から、セットアップが完了したエッジに対してアプリケーションを自動で展開することもできます。
これによって、エッジにVolterraをインストールすれば、アプリケーションのデプロイまで自動化することができます。必要なことはインターネットへの接続のみです。また、全エッジのネットワークやコンピューティングリソースの管理もVoltConsole から一括で管理することが可能です。
エッジコンピューティングの運用
続いて、運用面にも目を向けていきます。アプリケーションの展開を自動化した後、運用している中でアプリケーションをアップデートすることも多々あるでしょう。こうした中、デバイスやアプリケーションを一つずつアップデートする方式では、対象デバイスが増えるほど、エンジニアを現地へ向かわせるコスト・作業負荷・時間などの運用負荷が増加します。
これに対してVolterraでは、管理しているアプリケーションのコンテナイメージを差し替えるのみで、アプリケーションのバージョンアップをリモートで簡単に実施できます。そのため、エンジニアを現地へ向かわせるコストも不要になり、作業時間の短縮にもつながります。
以上、エッジでの1次処理を意識したアプリケーション構成で、通信帯域や処理負荷を軽減することができました。これに加えて、エッジコンピューティングを活用する上で欠かせないのは、アプリケーションやエッジデバイスを管理するプラットフォームです。前々回から紹介してきたVolterraを利用することで、管理・運用の両面での課題を解決することができます。
著者プロフィール
スハルトノ リオスナタ(Ryosunata Suhartono)
ネットワンシステムズ株式会社 ビジネス開発本部 第1応用技術部
新卒でネットワンシステムズに入社。エンタープライズネットワーク分野でのスイッチ製品担当を経て、ネットワークセキュリティ、自動化を経験。現在はP4、ローカル5G、エッジコンピューティングの分野を担当。