-
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
45 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,45 @@ | ||
--- | ||
title: "EdgeComputingのプログラマビリティの課題" | ||
description: "あ" | ||
date: "2024/12/02" | ||
updatedAt: "2024/12/02" | ||
path: "edge-computing-probrem" | ||
published: true | ||
--- | ||
|
||
## Intro | ||
|
||
[Edge Computing: Vision and Challenges](https://cse.buffalo.edu/faculty/tkosar/cse710_spring20/shi-iot16.pdf)という論文を読みました。 | ||
EdgeComputingについて、筆者は浅い知識しかなかったのと、論文を読む練習も兼ねて、読んでみました。 | ||
|
||
## 課題 | ||
|
||
この論文では、大きく以下のように定義されています。 | ||
|
||
- プログラマビリティ | ||
- 命名 | ||
- データ抽象化 | ||
- サービス管理 | ||
- プライバシーとセキュリティ | ||
- 最適化指標 | ||
|
||
本記事では特に気になったプログラマビリティについて記載します。 | ||
|
||
## プログラマビリティ | ||
|
||
EdgeComputingは言葉の通り、Edge(端)で様々な処理を行えることがメリットです。 | ||
そしてそういったEdgeComputingで動かされるデバイスのことを、EdgeDeviceと呼びます。 | ||
|
||
デバイスと言うととても広く、例えば筆者は今のスマホはGoogle Pixelを使っています。 | ||
しかし少し前はiPhone SEを使用していました。日々使っていて分かりますが、Google Pixelの方がぬるぬる動きます。 | ||
|
||
このように、ユーザーによって使うデバイスが異なることによる処理速度の差が、今回のプログラマビリティの課題になります。 | ||
他にも当然ですがユーザーのいる場所による通信環境の差などもあります。 | ||
|
||
この課題を解決するために生まれたのがCompute Stream(計算ストリーム)という概念です。これは処理をクラウドかエッジのどちらで実行させるか決めることができるという機能になっています。 | ||
これにより、各エッジデバイスの負荷を減らし、適材適所で処理を実行できるようになりました。 | ||
|
||
そしてここで余談ですが、WebエンジニアでEdgeComputingと聞くと、Fastly ComputeやCloudflare Workerなどがやはり思い浮かぶのではないでしょうか。 | ||
筆者が知識としてあるのはFastly Computeなのでそちらにに絞って話すと、これはエッジデバイスでは実行されず、Fastly側が用意しているエッジサーバー上で動作する機能になっています。 | ||
|
||
なので今ここで書いたプログラマビリティ的な課題はそこまで影響しないかもしれませんが、Fastly Computeを使う場合、Node.jsのようなランタイムに依存できないという点では、環境依存なのである意味この課題が関わっているのかなと考えています。 |