アマゾンのCTOが語った分散コンピューティングの必要性
今回は「アマゾンのCTOが語った分散コンピューティングの必要性」についてご紹介します。
関連ワード (クラウド等) についても参考にしながら、ぜひ本記事について議論していってくださいね。
本記事は、ZDNet Japan様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。
Amazon Web Services(AWS)は、年次イベント「re:Invent 2022」を米国時間11月28日~12月2日に米国ラスベガスで開催している。12月1日の最後の基調講演には、Amazon バイスプレジデント 最高技術責任者(CTO)のWerner Vogels氏が登壇し、分散コンピューティングの必要性やそれに関連する新サービスを取り上げた。
ITシステムが処理するデータは年々増大と多様化が進み、システムが備える機能やサービスもまた同様に複雑になってきている。しかしながら、これまで多くのシステムがモノリシック(一枚岩)で構築されており、データの増大と機能やサービスの多様化への対応が難しくなってきている。
講演の中でVogels氏は、Amazonが創業してしばらくの1998年に作成したという技術文書「The Distributed Computing Manifesto」を紹介した。「これは、SOA(サービス志向アーキテクチャー)の言葉が知られる前に作った」(Vogels氏)といい、現在のAmazonの巨大なECビジネスを支えるITシステムの基本的な在り方をまとめている。
Vogels氏によれば、Amazonの創業当初のITシステムはモノリシックだった。しかし、急激にシステムの利用が伸び、商品の紹介や検索、決済、払い戻し、レビュー、おすすめといった機能がどんどん追加される中で、早々に分散コンピューティングの必要性を認識したそうだ。上述のマニフェストの基に、SOAとマイクロサービスの取り組みを積極的に推進し、爆発的なECの拡大にも耐え得るシステム環境を実現した。例えば、クラウドストレージ「S3」で提供するマイクロサービスの数は、AWS創業の2006年当時は8つだったが、今日では235以上という。
またVogels氏は、各種の機能やサービスがイベント駆動型で実行されるべきであるとも述べた。分散コンピューティングにおいて、同期並列処理により求める成果を瞬時に達成しようとしがちであるものの、「それは幻想だ」とVogels氏。極めて複雑で膨大なリソースを必要とするため、企業の実際のビジネスでは、トラブルなどのリスクにつながりかねず、投資負担も大きい。
そこで非同期・イベント駆動型の並列処理とすることが、システム利用の急拡大や頻繁なサービス・機能の追加や変更に対応しやすい現実的なアプローチということだ。「イベント駆動形のアーキテクチャーであれば、1つ1つのシステムやサービスをシンプルにして、それらが疎結合され、巨大で複雑なシステム群となっても適切に稼働する」(Vogels氏)
Vogels氏が25年近く前から分散コンピューティングを推進してきたことで、現在のAWSが提供する多数のサービスや機能をユーザーが柔軟に組み合わせシステムを構築することが当たり前になっている。ただ、年間に追加されるサービスや機能の数も非常に多い。ユーザーはキャッチアップし続けながらシステムを構築、拡張しなくてはならず負担が大きい。Vogels氏は、この状況を改善する目的で以下の新サービスを発表した。
AWS Step Function Distribution Map
分散型サービスのオーケストレーションやワークフロー構築を行う「AWS Step Function」で設定可能な並列処理数を従来の40から1万に拡張した。例えば、数百万ファイルもの画像の処理を反復並列で行える。
AWS Application Composer
ブラウザーベースのGUIを通じてAWSのサービスを組み合わせたサーバーレス環境を簡単に構築でき、Infrastructure as Code(IaC)を提供する。「AWS CloudFormation」で作成した既存の構成や設定などの変更や改良にも使用できる。
Amazon EventBridge Pipes
イベント駆動型システムの環境において、イベント発生元のサービスとそのイベントによって実行されるサービスとの間の設定などが容易になる。従来はサービスごとにノウハウが必要だった。カスタムの設定も扱える。
Amazon CodeCatalyst
AWS環境の開発でチームが使用するコラボレーションや統合開発環境などのツールの設定、コミットやプルリクエストなどの課題の管理、CI/CD(継続的なインテグレーション/継続的なデプロイメント)のパイプラインを提供する。
講演の後半でVogels氏は、例えば、ECサイトで3次元立体(3D)の靴の商品画像を360度方向から見ることができたり、その画像を拡張現実(AR)にしてあたかも実際に履いているような体験がしたりできるなど、3Dを動画並みに活用する時代が来るだろうとした。
また、衛星画像や測地データ、IoTセンサーなどを使って現実空間のあらゆる姿を仮想空間に再現するデジタルツインを構築したり、ユーザーが仮想空間で自由自在にシミュレーションを作成、実行したりするようになるとも述べた。
こうしたことがもたらす価値は計り知れないものの、そのためには今以上の膨大なデータと計算資源、複雑なサービス・機能のシステムを用意しなければならなくなる。Vogels氏はこのような未来を予想して、基調講演のテーマに分散コンピューティングの必要性を取り上げた。
(取材協力:アマゾン ウェブ サービス ジャパン)