catch-img

ワーナーさんのキーノートを現地で見ました (山下) その3 | AWS re:Invent 2024参加レポート

こんにちは! AWS認定インストラクターの山下です。

2024年12月最初の週にAWS最大のグローバルイベントにして世界最大のクラウドカンファレンス AWS re:Invent 2024 が開催されました。

このブログはAWSのワーナー・ヴォゲルスさんのキーノートをラスベガス現地で目の前で見て感じたことを全3回に渡りレポートしています。

キーノートの内容そのものを知りたい方はYoutubeで動画が公開されていますのでそちらをご覧ください。

また、そもそもAWSって何?詳しく知りたいという方は、こちらの「AWSとは?AWS認定講師が解説」をご覧ください。

目次[非表示]

    1. セルベースアーキテクチャ
    2. Too Good To Goの場合
    3. グローバルでのシンプルなデータ同期
    4. 現場で活かせるAWSスキル習得はトレノケートのAWS研修で

 

 

セルベースアーキテクチャ

th_IMG_2325

ハッシュキーなどにより特定のユーザーや特定のデータリクエストのみを処理する、"セル"という単位にサービスを分けるセルベースアーキテクチャ。
セルは地域的に分散することもあったり、特定のユーザーごとに分散したりして設計することもあります。
こうして問題の影響がほかのセルに及ぶことがないようにし、全体的な信頼性を高めたり、管理しやすくします。

サービスがスケールしてユーザーが増えた場合も、例えば新たなセルを構築して割り当てれば既存のセルには影響を与えないことになります。
昔、LAMP環境のセットを事業別に分けていましたが、ものすごくシンプルなセルベースアーキテクチャだったのかもしれません。

th_IMG_2327

Simpler approachと書かれたリソースの設定変更を処理するアーキテクチャの例です。

設定変更が指示されると、それをファイルに書き込んでS3バケットに保存します。
リソース側からS3バケットの新しいファイルを取得して処理します。
こうすることで、同時実行数に制限がある設定変更処理を同レベルに維持しています。
この設計パターンは、Constant Workパターンと呼ばれています。

とにかくS3を挟むのは、後々のデータ分析にも非常に有効なんですよね。

th_IMG_2328

Route 53のヘルスチェックでもこのConstant Work設計がされているそうです。
アーキテクチャのアイコンはS3バケットではないので、保存先は違うものが使用されているようです。

th_IMG_2329

何を自動化するのか?で考えるのではなく、何を自動化しないのか?で考えます。
人がやることを例外として考えて、人の判断が絶対に必要なところだけは人がやります。
それ以外は全部自動化します。

th_IMG_2330

多くの自動化を行っている分野がセキュリティ。
セキュリティを守るためには、みんながセキュリティを大事にしないといけません。

だから責任共有モデルが言いたいことは、責任分解点じゃないんですよね。
責任のなすりつけあいを言ってるんではなく、自分が大事にするべき範囲を認識して実施するということですね。
相手側に足りないものやニーズがあるなら、私たちはAWSにフィードバックしますし、AWSは私たちにユースケースやベストプラクティスを共有します。

AWSではセキュリティサポートチケットの処理に、Agentic Workflowなる設計を使用しているそうです。
この設計はServerless Agentic Workflows with Amazon Bedrockというオンデマンドトレーニングで公開されているので、やってみなければですね。

 

Too Good To Goの場合

th_IMG_2331

フードロスの削減に取り組むToo Good To Goさんが登場しました。

th_IMG_2332

なんと!世界中で生産されている食品の40%が廃棄されているそうです。

th_IMG_2333

2015年にこの問題にを解決するべく起業家たちによって設立されました。
余剰食品を割引価格で販売する仕組みで、2018年には100万ユーザーにまでなりました。

th_IMG_2334

創業者たちは理念も素晴らしくビジネスのセンスもあったが、エンジニアではないので開発のセンスがなかった。
ビジネスの成長に伴い問題が起こり始めた。

いわゆるLAMP構成のPHPアプリケーションで、100万ユーザーになった頃には毎日のように過負荷な状態になった。
コンテナアプリケーションとAuroraリードレプリカによっての分散をすることで、対応できるようになった。
その後、1,000万人の登録ユーザー数を達成しました。

th_IMG_2335

開発者は必要な機能をツールボックスから選択して、組み合わせることで複雑さを軽減されています。
プラットフォームエンジニアリングのようなお話ですね。

th_IMG_2336

2020年までにさらに2,400万のユーザー登録になり、16の拠点へ展開されています。

コンテナはEKSで構成しています。
マルチリージョンでのデータ同期にSNSとSQSを活用しています。
そして、現在は1億以上の登録ユーザーのサービスになっています。
4億食以上の食品廃棄を防いできました。

 

グローバルでのシンプルなデータ同期

th_IMG_2337

RDSはデータベースの構築、運用をユーザーに対して非常にシンプルにしました。
最初出会ったときに、今までのデータベース構築やバージョンアップ作業はいったい何だったんだろうと思いました。

Auroraはストレージとコンピューティングを分けたから、サーバーレスのようにオンラインで水平スケールできるんですよね。

th_IMG_2338

リレーショナル・データベースを再発明したのがAurora。
AWSの歴史って再発明(re:Invent)の歴史なんですよね。

th_IMG_2339

新機能のAurora DSQLも小さなマイクロサービス(フロントエンド、Query Processor、Adjudicator、Journal、Crossbar)が集まってその機能を実現しています。
それぞれのサービスはもちろん個別にスケールできます。
SQLを処理するのがQuery Processor、トランザクションコミットの調整がAdjudicator、短期ストレージがJournal、長期ストレージにマージするのがCrossbarです。

ピザを注文するアプリの例で解説されていました。
評価4以上のレストランを探しているので、そのSelect文が実行されます。
SQL実行のためQuery Processorが割り当てられ、トランザクションが開始されます。
この時にタイムスタンプが取得されてからリクエストが送信されます。
データベースはシャーディングされて分散されているので、データの保存先を知るためシャードマップが参照されます。

SQLクエリは特定の行セットのみを取得して、パフォーマンスのボトルネック課題を解決しています。

レストランを見つけたユーザーは次にピザを購入します。
Query Processorがローカルメモリ上でデータの読み取りと書き込みを行い、Adjudicatorがマルチリージョンでの書き込み、更新を単一リージョンと変わらない速度で高速に行います。

th_IMG_2340

AuroraのコンピューティングにもLambdaやFargateでおなじみのマイクロVMのFirecrackerが使われているんですね!
Query ProcessorはFirecrackerで実行されているそうです。

th_IMG_2341

Adjudicatorが、競合や一貫性の確保など書き込み管理をうまくやってるんですね。
ナノ秒クロックで管理されて 、先にコミット送信した側が採用されて、処理中に更新を検知されたほうがアボートされます。
短期ストレージのJournalに書き込まれたコミット済トランザクションが、順序を守ってCrossbarによって長期ストレージに移動されます。

この重要な時間管理を実現しているのが、EC2の時刻設定に使用されているAmazon Time Sync Serviceです。

衛星からの時刻同期が Nitroに伝送されて、Adjudicatorは正確な時間を取得しています。

これらの仕組みをDynamoDBグローバルテーブルでも使用したので、グローバルテーブルの強い整合性のリリースにも繋がりました。

th_IMG_2342

正確な同期時間を扱えるようになったことで、新たなシステムをよりシンプルに実現できました。

th_IMG_2343

CTO Fellowship、AI for Changemakersを設立して、若い企業や組織を支援していく。

th_IMG_2345

シンプルを求めることは重要ですが、それを求めすぎることが制限になってはいけないと知りました。
設計同様に思考も柔軟性が必要ですね。
そして今までの経験は1つの要素として役に立つかもしれませんが、それがすべてではなくこれから学び考えることが重要です。
うまく行ってるときこそ、課題はないか疑問を持って改善を考える。

そして今年もNow Go Build!


 

現場で活かせるAWSスキル習得はトレノケートのAWS研修で

AWS re:Inventでは、たくさんのワークショップやデモ等をいち早く体験することができます。

それらの体験は体験として終わらせず、ぜひ実務や現場(仕事)に活かしてみませんか?

 

トレノケートでは、ハンズオンを体験しながらスキルアップを目指すAWS Skill BuilderAWS研修(認定トレーニング)をご提供しています。実務経験を積んだAWS認定講師のトレーニングは受講者の皆様の満足度も高く、楽しみながらスキルアップを目指すことができます。

 

「まずはAWSの基礎を理解したい」「AWS認定資格を取得したい」等、目的や役割に応じてAWSのスキルアップを支援いたします。

トレノケートのAWS研修をもっと詳しく知りたい方は、こちらからご確認ください。
AWS研修(AWS認定トレーニング)|AWS資格取得や基礎習得ならIT研修のトレノケート

 

山下 光洋(やました みつひろ)

トレノケート株式会社 講師。AWS Authorized Instructor Champion / AWS認定インストラクター(AAI) / AWS 認定ソリューションアーキテクト - プロフェッショナル /AWS認定DevOpsエンジニア - プロフェッショナル / AWS 認定デベロッパー - アソシエイト / AWS 認定 SysOps アドミニストレーター - アソシエイト / AWS 認定クラウドプラクティショナー / kintone認定 カスタマイズスペシャリスト他。AWS認定インストラクターとしてAWS認定コースを実施。毎年1,500名以上に受講いただいている。AWS 認定インストラクターアワード2018, 2019を日本で唯一受賞。著書『AWSではじめるLinux入門ガイド』(マイナビ出版社)。共著書『AWS認定試験対策 AWS クラウドプラクティショナー』(SBクリエイティブ社)。前職では2016年にAWS Summitにパネラーとして参加。その前はLotus Technical Award 2009 for Best Architectとして表彰されている。また、各コミュニティの運営にも個人的に関わり、勉強会にてスピーカーや参加をしている。

無料ダウンロード

オススメコンテンツ

オススメ記事

AWS プロジェクトマネジメント PMP 人材育成 ITスキル クラウド AWS認定トレーニング 田中淳子 Microsoft ビジネススキル PMBOKⓇ IT資格 山下光洋 スキルアップ AMA コミュニケーション Azure 人材開発用語集 PMBOK®ガイド入門 人材育成応援ラジオ 新入社員 横山哲也 DX re:Invent AI(人工知能) セキュリティ PMP試験問題に挑戦 reinvent2024 イベント・セミナー Cisco PMBOKⓇガイド 第6版 キャリア 試験体験記 PMBOK®ガイド第6版の変更点 人材開発 生成AI CCIE CCNA 研修 AI人材 ITエンジニア IT人材 ヒューマンスキル DX人材育成 テレワーク ネットワーク リモートワーク 人材トレンド GCP PMP(R)試験問題 第6版対応 PMP合格体験記 Windows Server リーダーシップ AWS_Q&A Active Directory IT資格解説 Voicy書き起こし アセスメント デジタルビジネス 人気コースランキング 大喜利 部下の育成 PMの心得 reinvent2023 グローバル人材 プログラミング リスキリング 新入社員研修といえば AWS_DiscoveryDay IoT OJT reinvent2022 1on1 CCNP Security Windows PowerShell クリエイティビティ コーチング 試験Tips 認定資格 AWSトレーニングイベント Google Cloud ITインフラ PMP試験対策一問一答 Voicyまとめ ダイバーシティ プロジェクト プロトタイプビルダー 新入社員研修 無料セミナー 試験対策問題 GCP無料セミナー Google Cloud Platform G検定 Linux Power Platform oVice voicy アワード クリティカルシンキング