Amazon Web Services ブログ
トヨタコネクテッドノースアメリカが Amazon S3 で増え続けるデータを最適化し、ストレージコストを削減した方法
このブログは 2024 年 5 月 28 日に Alex Payne, Kartik Verma, Genta Watanabe によって執筆された内容を日本語化したものです。原文はこちらを参照してください。
2016 年に設立されたトヨタコネクテッドノースアメリカは、トヨタとレクサスの車両向けの高度な技術とデータサービスの開発と提供に注力しています。トヨタコネクテッドの使命は、モビリティをすべての人にとってより身近でエキサイティングな、人間中心の体験にすることです。この目的のために、トヨタコネクテッドはデータ接続を利用して、北米の 800 万を超える小売顧客、数百のディーラー、および車両会社にサービスを提供しています。
トヨタコネクテッドのリアルタイムデータプラットフォームは、コネクテッドカーの数が劇的に増加したため、わずか発売以来 5 年間で指数関数的な成長を遂げました。ビッグデータ分析プラットフォームの要件は、市場の状況に基づいており不確実です。製品サイクルにおける電動化の増加など、企業のビジネスイニシアチブを実現するためには迅速に進化する必要があります。したがって、これらのプラットフォームのデータストレージコストは、トヨタコネクテッドの全体的な予算に大きく直結しています。
この投稿では、トヨタコネクテッドノースアメリカが、 Amazon S3 Intelligent Tiering ストレージクラス、 Amazon S3 ライフサイクル、 Amazon Athena などのマネージドサービスと機能を活用して、データ量が 4 % 増加したにもかかわらず、ビジネスをサポートするためにどのように月間 40 % 以上の節約を実現したかについて説明します。
データ分析とストレージの課題
トヨタコネクテッドのリアルタイムデータプラットフォームは、複数のレイヤーで構成されています。
- Ingest レイヤーは、車両の何百ものセンサーからデータを受信します。
- Decode レイヤーは、バイナリデータを使用可能な形式に変換します。
- Transform レイヤーは、データを変換し、テレメトリ、ドライバースコア、衝突通知、安全サービスなどの多数のデータサービスを顧客に公開します。
- Analyze / Consume レイヤーはビッグデータ分析プラットフォームであり、車両データを処理し、機械学習 / 人工知能( ML / AI )を適用して研究開発のための洞察を提供し、トヨタ車の品質を向上させ顧客満足度を提供します。
車両台数の増加に伴うコスト上昇に対処するため、チームは当初、 S3 ライフサイクル設定を使用して S3 Standard ストレージクラスから S3 Glacier Flexible Retrieval ストレージクラスにデータを移動する保存ポリシーを実装しました。このアプローチは、クラウド全体のコストを削減するために望んでいた節約をもたらしましたが、これらの節約をさらに改善する必要がありました。
課題は保存ポリシーが静的であることでした。これらのほとんどは、 30 日後にデータをあるストレージ階層から別のストレージ階層に移動するなどの単純なルールを使用していました。2 つ目の課題は、ビッグデータ分析プラットフォームのデータ要件が市場の状況に基づいている事による不確実性でした。たとえば、 Prime プラグインハイブリッドや bZ4X 電気自動車に関連するデータは、電動化などの拡大するトヨタの取り組みをタイムリーにサポートするため、より迅速に取得できる必要があります。
欠けていたのは、アクセス頻度の低いデータとは対照的に、どのデータが頻繁に使用またはアクセスされたかを判断するためのインテリジェンスでした。こうしたアクセスパターンの変化に伴い、トヨタコネクテッドは必要に応じてデータを動的に利用できるようにする方法を必要としていました。さらに、アクセス頻度の低いデータを S3 Glacier Flexible Retrieval や S3 Glacier Deep Archive などの低コストのストレージクラスに移動した場合でも、ビジネスニーズの変化に応じて分析ワークロードからすぐにアクセスできるようにする必要がありました。たとえば、 2023 年のアースデイでは、トヨタコネクテッドは、ノーマルモードとエコモードで走行する車両から CAN データをすばやく取得して、特定の期間におけるトヨタ所有車の二酸化炭素排出量を比較する必要がありました。チームは、オペレーションオーバーヘッドを追加したり、既存のワークロードやアプリケーションを完全に再設計したりすることなく、これらの課題に対する無駄のないソリューションを探しました。
ソリューション
トヨタと AWS は、さまざまなデータセット、そのアクセスパターン、データ量、オブジェクト数を分析するためのフォーカスグループを結成しました。この分析の結果、特定のストレージアプローチからメリットが得られる可能性のある分類されたデータセットと、それらのアプローチによる潜在的なコスト削減のリストが提供されました。S3 Storage Lens と S3 ストレージクラス分析が役に立ちました。S3 Storage Lens では、合計ストレージ、オブジェクト数、ストレージクラスまたは S3 バケットごとの平均オブジェクトサイズなど、オブジェクトストレージの使用状況とアクティビティの概要を確認できました。S3 ストレージクラス分析は、「アクセス頻度が低い」ストレージの量を特定するのに役立ちました。
最適化によって最も恩恵を受けるバケットについては、AWS からの提案に従いました。一般に、これらのバケットは、他のバケットよりも多くのデータを格納し、平均オブジェクトサイズが大きく、一時的ではない永続的なオブジェクトを含むバケットでした。AWS チームと協力して、分析した各バケットでどれだけのコスト削減が見込めるかを正確に見積もりました。その後、 3 つの戦略を策定しました。
S3 ライフサイクル設定
分析の結果、アクセスパターンが予測可能な場合では、少数のオブジェクトが何度もアクセスされるシナリオと、多数のオブジェクトが 1 回だけアクセスされるシナリオを区別することが重要であることがわかりました。後者の場合、S3 Intelligent Tiering による節約額は S3 ライフサイクル設定を使用する場合よりも少なくなります。これは、S3 Intelligent Tiering では、オブジェクトのアクセスパターンを監視するための監視および自動化に毎月少額の料金がかかり、 30 日間連続してアクセスされていないオブジェクトは S3 低頻度アクセス層に自動的に移行されるためです。アクセスパターンが予測可能なデータについては、よりカスタマイズされたルールを適用するために S3 ライフサイクル設定をこれらのバケットに残しました。
S3 Intelligent-Tiering
次に、アクセスパターンが予測できないバケットについて、S3 Intelligent Tiering の使用による影響を測定したいと考えました。チームは、インスタントアクセス階層からデータを取得する際にレイテンシーの課題がないことを確認するために、 Amazon Athena や Amazon EMR などのダウンストリームアプリケーションの検証を含む広範な分析を行いました。さらに、これらの AWS サービスを使用する日次ジョブを監視し、オペレーション効率に悪影響がないことを確認しました。
予測不可能なアクセスパターンデータを S3 Intelligent Tiering に移動した後、チームは AWS Cost Explorer を使用してコストを確認しました。2023 年 2 月に最初に確認された直接的な変化は、Amazon S3 の新しい階層へのオブジェクトの初期移行料金が原因の約 1 日のコスト急騰でした。その後、価格は予想通り通常に戻りました。切り替えから約 30 日後、データ量は前月比で 4 % 増加し、1 か月あたり 40 % のコスト削減が見られるようになりました。これは、S3 Intelligent Tiering が、アクセス頻度の低いオブジェクトをより低コストのストレージ階層に自動的に移動したためです。
重複データの回避
ビッグデータ分析プラットフォームでのデータ分析とクエリ処理に関して、トヨタコネクテッドは Amazon Athena を使用して Amazon S3 のデータをクエリしました。データセットには、S3 Standard と S3 Glacier の両方のストレージクラスのファイルが含まれていました。Amazon Athena は S3 Glacier Flexible Retrieval や S3 Glacier Deep Archive などの S3 Glacier アーカイブストレージクラスから復元されたデータを直接クエリすることはできませんでした。しかし、アドホックなビジネスニーズへの対応や技術的な課題のトラブルシューティングを行うために、アーカイブされたデータにアクセスすることが必要な場合があります。
この課題を緩和し、クエリをシームレスに実行するために、回避策を実装しました。これには、復元されたオブジェクトを複製して、Amazon Athena がクエリを実行できるように、復元されたオブジェクトのコピーを S3 Standard ストレージクラスに追加作成する必要がありました。しかし、このアプローチは、データストレージの増大によるコストの増加という形で、意図しない結果をもたらしました。この諸経費が、分析ニーズに Amazon Athena を活用する組織にとっての懸念事項となったため、製品に関するフィードバックを AWS チームと共有しました。
2023 年 6 月 29 日、Amazon Athena は、追加のコピーを必要とせずに、復元された S3 Glacier ストレージクラスのデータを直接クエリする新機能をリリースしました。これにより、プロセスが合理化され、コストが大幅に削減されました。この強化は、 Amazon Athena に依存するデータ分析ワークフローの最適化において極めて重要な瞬間となりました。これにより、経費を抑えながら、データの可能性を最大限に引き出すことができました。このブログ記事では、この新機能の詳細を紹介しています。
結論
この投稿では、ストレージコストを最適化するための 3 つの戦略について説明しました。S3 Intelligent Tiering を実装することで、リソースを効率的に割り当てることができ、パフォーマンスを低下させることなくコストを最適化できました。S3 Intelligent Tiering を最大限に活用するには、アクセス頻度の異なるデータを含むバケットを特定することが不可欠です。これは、月当たり 40 % の節約につながりました。一方、S3 ライフサイクル設定は、予測可能なアクセスパターンを持つデータを含むバケットに、よりカスタマイズされたルールを適用するのに役立ちます。さらに、Amazon Athena を使用して S3 Glacier Archive クラスから復元されたデータを直接クエリすることで、オペレーションオーバーヘッドがなくなり、ストレージコストをさらに節約できます。
こうした最適化の取り組みは、コネクテッドカーの数が増え続けることで指数関数的な成長を遂げてきた、トヨタコネクティッドのリアルデータプラットフォームの持続可能な事業成長を促進しました。また、電動化やアースデイの外部エンゲージメントイニシアチブなど、データ要件が不確実であったり、今後も不確実なデータ要件が続く新しい戦略的事業計画を支援しました。