おれさまラボ

実際に手を動かして理解を深めるブログ。

Amazon を冠するサービスと AWS を冠するサービスの違い

はじめに

AWS には多種多様なサービスがありますが、そのサービス名には "Amazon" を冠したものと "AWS" を冠したものがあることはご存知でしょうか?

たとえば S3 は Amazon S3 ですし、Transit GatewayAWS 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点に集約されます。

  • "AWS" を冠したサービスは "utility services"
  • "Amazon" を冠したサービスは "standalone services"

以下の画像が対象の回答です。

f:id:naoto408:20200725082935p:plain

出典:naming conventions - Why some services are called "AWS XXX" and the others "Amazon XXX" - Stack Overflow

"utility services" について補足すると、それ単体で動作するサービスではなく、他のサービスと連携して動作するサービスのことを指すとのことです。

例:

  • AWS Elastic Beanstalk や AWS OpsWorks、AWS CloudFormation は他のサービスを起動するトリガーとなるもの
  • AWS Lambda は他のサービスから実行されるもの
  • AWS Data Pipeline はデータをサービス間で移動するもの

例外もある

Amazon EBS は Amazon EC2 とセットで使用されるものですが、"Amazon" を冠したサービスになっている点で例外と言えるそうです。

ちなみに AWS ドキュメント を見ると Auto ScalingService Quotas のように "AWS" も "Amazon" も冠していないサービスもあるようですね…。

おわりに

長年の謎が解けて最高に嬉しいです。この観点で AWS ドキュメント のサービス一覧を眺めてみると新たな発見があるかも知れませんね。

以上