エッジキャッシングとは、メモリストレージ、つまりキャッシュを一か所に集約するのではなく、ネットワークのエッジに近い場所へ移す手法です。
エンドユーザーがこれらのエッジキャッシュにあるデータへアクセスすると、ネットワーク全体を横断して取得する場合よりも、はるかに効率的にデータを取得できます。この効率化により、ネットワーク全体の負荷とレイテンシが低減し、データセンターへの負担も軽減されます。
ここでエッジキャッシングの出番となります。デジタルリソースや一時データ、ファイルをエッジサーバーにキャッシュしておけば、ユーザーがそのリソースを要求した際に、エッジや遠隔地のサーバーでリクエストを処理するのではなく、キャッシュから直接配信できます。
エッジキャッシングを理解するには、グローバルなデジタル環境と、それを支えるテクノロジーを理解することが欠かせません。本記事では、エッジサーバーとエッジコンピューティングの原理、エッジキャッシングの仕組み、そのメリットとデメリットを解説し、最後に、現在のネットワークでエッジキャッシングが利用されている例を紹介します。
エッジコンピューティングとは?
エッジコンピューティングは、データやアプリケーションサービスのプロバイダーが、サーバー処理をエンドユーザーのできるだけ近くへ移す分散型ネットワークのフレームワークです。
大容量の遠隔データセンターは長年、デジタルエコシステムに不可欠な存在でした。しかし、データセンターとそこへアクセスするユーザーとの距離は、ネットワーク障害や帯域幅の制約、レイテンシの問題を引き起こす可能性があります。これは、ビッグデータやコンテンツ配信ネットワーク(CDN)の時代において、特に深刻です。
エッジコンピューティングは、ユーザーに近い場所にエッジデータセンターを設置することでこの問題を解決し、レイテンシを低減するとともに、パフォーマンスとセキュリティを向上させます。
エッジコンピューティングは、リモートコンピューティングに連なる数十年来のネットワーク概念ですが、その価値が認識されるようになったのは新しい millennium に入ってからです。モバイルデバイスやモノのインターネット(IoT)デバイスとその機能の普及は、ネットワークエッジにより多くのストレージと処理リソースがあったからこそ可能になりました。
エッジコンピューティングは商用分野として、分散型ネットワークを構築するためのソリューションをベンダーが提供し、ローカルなコンピューティング能力を実現するとともに、エンドユーザーとの接続性を高めています。
エッジサーバーとは?
エッジサーバーは、ネットワークのエッジに戦略的に配置された物理ハードウェアデバイスです。通常は小型のラックマウント型サーバーで、高性能なCPUやGPUなどのコンピューティングリソースを搭載しています。ただし、より小型のデバイスに導入することもできます。
エッジサーバーは、IoTデバイスやカメラ、センサーなど、ネットワークのエッジで生成されたデータの処理と保存を担うよう設計されています。データをユーザーの近くに置くため、エッジサーバーは通常、ネットワークのノードとして導入されます。
エッジサーバーはクラウドデータセンターより小規模な場合がありますが、目的は同じで、データの保存と処理を行います。また、クラウドデータセンターがシステムの中心に位置するのに対し、エッジサーバーは分散配置されます。主なエッジサーバーおよびエッジコンピューティングプロバイダーには、Microsoft、IBM、Amazon Web Services(AWS)、Google Cloud Platform、NVIDIA、Dellなどがあります。
エッジサーバーの種類
- デバイスエッジ:エンドユーザーデバイスのコンポーネントまたは付属品
- オンプレミスエッジ:ネットワークまたは施設内に物理的に配置されたノード
- ネットワークエッジ:基地局や通信事業者のデータセンターなど、ネットワーク固有のノード
- リージョナルエッジ:広大な地理的地域にサービスを提供する従来型のデータセンター
エッジキャッシングの仕組み
エッジキャッシングは、頻繁にアクセスされるリソースをアクセスするエンドユーザーの近くへ移すことで、重複・冗長なネットワークトラフィックを抑え、読み込み時間を短縮します。
これを実現するため、データセンター、エッジサーバー、ローカルメモリコンポーネントが連携し、メモリ階層を構築します。
従来型のデータセンターは最大の容量を備えていますが、エッジコンピューティングの環境では、そのリソースがネットワークのエンドユーザーから利用される頻度は最も低くなります。一方、エッジサーバーは容量が少ないものの、より頻繁に使用されるリソースを保存します。
そしてローカルストレージは保存容量が最も小さい一方、最も頻繁に必要とされるコンテンツやリソースを保持します。
効果的に導入すれば、エッジキャッシングはエンドポイントのパフォーマンスを高めると同時に、遠隔データセンターへの負荷を、ロードバランシングによって軽減します。
キャッシュの実例:Webブラウザー
ほとんどのエンドユーザーにとって、Webブラウザーはキャッシュが機能する最も身近な例です。エッジキャッシングを含むWebブラウジングのキャッシュは、通常、次の手順で動作します。
- エンドユーザーが特定のWebサイトまたはアプリケーションにアクセスする。
- Webブラウザーが、ユーザーに表示するコンテンツをダウンロードする。
- ユーザーが後で同じWebサイトにアクセスする。
- ブラウザーが、すべてのデータを再度ダウンロードするのではなく、キャッシュメモリから元のWebサイトのコンテンツを取得する。
- ブラウザーがWebページをスキャンして新しいコンテンツの有無を確認し、必要に応じてリソースを更新する。
ユーザーが訪問するたびにWebページの静的コンテンツを再読み込みする代わりに、キャッシュによって新しい動的コンテンツを適応的に更新できます。エッジキャッシングにも同じ原則が適用されます。
エッジキャッシングのメリット
速度や効率からセキュリティ、信頼性まで、エッジキャッシングには数多くのメリットがあります。
エッジキャッシングで可能になること:
- パフォーマンスを向上させ、レイテンシを低減する。
- 自動運転車からライブストリーミング、ソーシャルメディア、eコマースまで、さまざまなアプリケーションでリアルタイムの応答を実現する。
- 帯域幅を削減し、セキュリティを向上させる。
- 転送が必要なデータ量を削減する効率的なアルゴリズムを導入する。
- クエリのパフォーマンスを向上させるため、データ構造を最適化する。
- 並列処理と分散コンピューティングを活用し、エッジコンピューティングシステムのスケーラビリティを向上させる。
エッジキャッシングのデメリット
エッジキャッシングはネットワークのパフォーマンスとスケーラビリティを向上させる優れた方法ですが、いくつかのデメリットもあります。
エッジキャッシングで最も一般的な課題は次のとおりです。
- ストレージと構成:キャッシュにはストレージ容量の制限と構成の複雑さがあります。通常、管理者やユーザーは、障害発生後に機能を復旧するため、空き容量を確保するか、キャッシュを再構成してください。
- コストの増加:エッジキャッシングでは追加のハードウェアとソフトウェアを導入する必要があるため、ネットワークのコストが増加する可能性があります。
- 複雑性の増大:エッジキャッシングによってネットワークが複雑になり、管理や保守が難しくなる可能性があります。
- 制御性の低下:キャッシュに関する判断がネットワークのエッジで行われるため、エッジキャッシングによってネットワーク管理者のネットワークに対する制御性が低下する可能性があります。
エッジキャッシングはどこで、どのように使われる?
エッジキャッシングは、CDN、ワイヤレス、IoTサーバーなど、さまざまな種類のエッジサーバーを通じて導入され、スマート製造施設から小売の顧客接点、医療センターまで、幅広い業界で利用されています。
エッジキャッシングサーバー
最も一般的なエッジサーバーの種類は次のとおりです。
- CDNエッジサーバー:CDNエッジサーバーは、Webページ、動画、画像などのコンテンツをエンドユーザーに配信するために使われます。通常、CDNのユーザーが特に集中している世界各地の戦略的な場所に配置されます。
- ワイヤレスエッジサーバー:ワイヤレスエッジサーバーは、スマートフォン、タブレット、ノートパソコンなどのワイヤレスデバイスに接続性とコンピューティングリソースを提供するために使われます。通常、セルラーネットワークのエッジに配置されます。
- IoTエッジサーバー:IoTエッジサーバーは、センサーやアクチュエーターなどのIoTデバイスからデータを収集・処理するために使われます。IoTデバイスの近くに配置されます。
- エッジコンピューティングサーバー:エッジコンピューティングサーバーは、ネットワークのエッジで計算負荷の高いタスクを実行します。エンドユーザーの近くに配置されます。
特定のアプリケーションに最適なエッジサーバーの種類は、配信するコンテンツの種類、エンドユーザーの所在地、アプリケーションに求められるパフォーマンスなど、複数の要因によって決まります。
エッジキャッシングを利用する業界
エッジキャッシュを利用する業界や新しいテクノロジーには、次のようなものがあります。
- スマート工場・製造施設
- 倉庫
- AI・機械学習(ML)
- 生体認証(顔・指紋認証)
- アグリテック
- 拡張現実・仮想現実(AR・VR)
- スマートシティ
- ロボティクス、IoT、産業用IoT
- 小売の顧客接点
- エネルギー
- 5GとOpen RAN
- 医療
- 防衛
ハードウェア対ソフトウェアのエッジキャッシュ
さらに、エッジキャッシングはハードウェアキャッシュとして物理的に構築することも、ソフトウェアキャッシュとして仮想的に導入することもでき、それぞれにメリットとデメリットがあります。
開発者は、ユースケースに最適な選択肢を決める前に、ソフトウェアキャッシュとハードウェアキャッシュのコスト、複雑性、セキュリティ、パフォーマンスを評価する必要があります。
ソフトウェアキャッシュの例:
- オペレーティングシステム
- ドメインネームシステム(DNS)
- データベース
- Webアプリケーションサーバー
ハードウェアキャッシュの例:
- CPUまたはGPU
- ハードディスクドライブ(HDD)
- SSD
結論:エッジキャッシュが実現する現代のネットワーク
エッジコンピューティングがなければ、私たちが知るデジタル世界も、何十億人もの人々が日々利用するオンラインサービスも存在しなかったでしょう。データがどこにあり、どれだけ速く処理・転送できるかは、私たちの社会にとって不可欠になっており、エッジキャッシングはその実現に大きく貢献しています。
世界が生成するデータ量が増え続けるなか、高度に革新的なデジタルエコシステムにおいて、エッジコンピューティングとエッジキャッシングの必要性はますます高まるでしょう。エッジインフラの拡大に伴い、キャッシュ機能も強化され、より高速で信頼性の高い配信が可能になります。
Sam Ingallsがこのガイドに寄稿しました。
完全ガイドで、あなたのエッジコンピューティングネットワークを構築・改善しましょう。