はじめに
AWS には多種多様なサービスがありますが、そのサービス名には "Amazon" を冠したものと "AWS" を冠したものがあることはご存知でしょうか?
たとえば S3 は Amazon S3 ですし、Transit Gateway は AWS Transit Gateway です。
自分はどうしてこの差があるのか長年疑問に思っていたのですが、今日ついに答えにたどりつくことができたのでメモを残しておきます。
答えは stack overflow にあった
みなさんよくご存知の世界的な QA サイトである stack overflow に自分と同じ疑問を持った人がいました。
この疑問の答えは、 naming conventions - Why some services are called "AWS XXX" and the others "Amazon XXX" というスレッドでみることができます。
回答者について
回答は John Rotenstein 氏によって行われました。彼は Amazon Web Services の Senior Developer Advocate として活躍しているようです。つまり、AWS の中の人が答えてくれているので信憑性は高そうです。
真実は?
つまりは以下2点に集約されます。
以下の画像が対象の回答です。
"utility services" について補足すると、それ単体で動作するサービスではなく、他のサービスと連携して動作するサービスのことを指すとのことです。
例:
- AWS Elastic Beanstalk や AWS OpsWorks、AWS CloudFormation は他のサービスを起動するトリガーとなるもの
- AWS Lambda は他のサービスから実行されるもの
- AWS Data Pipeline はデータをサービス間で移動するもの
例外もある
Amazon EBS は Amazon EC2 とセットで使用されるものですが、"Amazon" を冠したサービスになっている点で例外と言えるそうです。
ちなみに AWS ドキュメント を見ると Auto Scaling や Service Quotas のように "AWS" も "Amazon" も冠していないサービスもあるようですね…。
おわりに
長年の謎が解けて最高に嬉しいです。この観点で AWS ドキュメント のサービス一覧を眺めてみると新たな発見があるかも知れませんね。
以上