「数百万人が同時視聴する大規模配信でも、配信が実施できる限りログも必ず収集する」。2月18日~20日に開催されたウェビナー「TECH+ EXPO 2025 Winter for データ活用 データを知恵へと昇華させるために」で、AbemaTV Development Headquarters Data Engineerの山村英貴氏が「ABEMAログ基盤のクラウドベースリアーキテクチャの内容と運用について」と題して講演。サービス成長の裏側で進化し続ける動画ストリーミングプラットフォーム「ABEMA」のデータ基盤の舞台裏を明らかにした。大規模スポーツイベント配信など、視聴者数が歴代最高を更新するような瞬間でも確実にデータを収集し、迅速な分析を可能にした取り組みの詳細とは。

※なお、資料はSpeakerDeckのサイバーエージェント公式カテゴリで共有されている。

歴代最高視聴数も確実に計測 - 大規模配信を支える3つの要件

山村氏はまず、リアーキテクチャに至った背景として、2022年の世界的スポーツ大会での安定稼働を見据えたログ基盤の要件整理から始めた。

主な要件として挙げられたのは、迅速なプレスリリース配信を可能にするレポーティング要件、「配信が実施できる限りログも必ず収集する」という高い信頼性を確保する安定性要件、そしてスケーラビリティを実現するインフラキャパシティの柔軟性だった。

「データ基盤の最終的なアウトプットであるレポートに関して、日時集計の遅延を最大でも数時間程度に抑え、視聴者数が歴代最高を更新した際にも迅速にプレスリリースを打てるようにするという狙いがありました。また、配信状況が正常にもかかわらず、ログ収集状況が異常になると、仮に歴代最高視聴数を記録していても正確に計測できないという非常にまずい状況になってしまいます。さらに、予想を超える負荷がかかった場合、リソースの追加から実際のスケールアウトまで1日から数日以内で対応できる必要がありました」(山村氏)

リアーキテクチャ以前のABEMAのログ基盤は、各種デバイスからのHTTPリクエストをCloudFrontで受信後、EC2インスタンスで前処理を行い、Kinesis Data Streamsに書き出し、その後サイバーエージェントのプライベートクラウドを経由して最終的にBigQueryに格納する構成だった。

  • リアーキテクチャ前の構成

この構成では、予測不可能な定常負荷の増大に対応することが難しい課題があった。「問題はプライベートクラウドを利用している箇所だった。データセンターの制約を受けるため、リソースの柔軟性はパブリッククラウドに比べて劣るものがあった」と山村氏は振り返る。

フルクラウド化への道 - バッチとストリームの2層構造で実現した安定性

この課題を解決するため、ログ基盤全体をパブリッククラウドで完結させるリアーキテクチャを実施した。新たな構成では、処理をバッチレイヤーとストリームレイヤーの2つに分離。バッチレイヤーでは、CloudFrontのアクセスログをS3に出力し、Lambdaで行動ログに変換後、Google Cloud Storage(GCS)へStorage Transfer Serviceで転送、最終的にBigQueryへ1時間ごとにバッチロードする仕組みを構築した。

  • リアーキテクチャ後の構成

「CloudFrontのマネージドなS3アクセスログ出力機能を使うことで、バックエンドにエラーが生じても、CloudFrontが機能する限りログを確実に収集できます。また、ほぼ全てのコンポーネントをマネージドサービスとし、十分なスケールアウトを可能にしました」(山村氏)

リージョン選択についても興味深い判断があった。最終データ保存先がUSのBigQueryだったため、日本で処理する必然性がなく、クオータの緩和申請が通りやすく、ABEMA本体のリソースとも干渉しないUSリージョンを優先的に利用したという。

「マネージドサービス」の落とし穴 - 大規模イベントから学んだ教訓

実際の2022年の大規模イベントを経て、山村氏はいくつかの重要な学びを共有した。

「当初Dataflowは完全なマネージドサービスとして捉えていましたが、Googleのジョブテンプレートによっては精密なチューニングが必要なパラメータが存在していました。具体的には、ストリームデータをGCSバケットに永続化する際の書き出しシャード数設定は十分な検証が必要でした」(山村氏)

クオータ緩和申請の重要性も強調された。

「ABEMAでは、Cloud Pub/Sub、AWS Lambda、Kinesis Data Streamsについて緩和申請を実施しました。この申請では審査が発生するため、最短でも1カ月、できれば2カ月以上の余裕を持って進めるべきです」(山村氏)

データ基盤の次なる進化 - 半構造化データとガバナンス強化がもたらす未来

2023年以降の開発では、開発効率向上とガバナンス強化に焦点が当てられた。開発効率向上に関しては、半構造化型(JSON型)データ構造の導入とBigQuery Storage APIを活用したストリーム書き込みが実装された。半構造化データ構造により、JSON形式データの一部フィールドのみの効率的な読み取りが可能になり、ストレージコストを抑えながら柔軟なスキーマ変更に対応できるようになった。

ガバナンス強化としては、BigQueryのポリシータグによるきめ細やかなデータアクセス制御が導入された。特にセンシティブなデータについては、カラムレベルでポリシータグを付与し、データのリスクレベルに応じた参照権限の設定が可能になったという。

今後の展望として、データガバナンスのさらなる強化とデータメッシュアーキテクチャの採用が計画されている。

「データの社内外共有時にはAnalytics Hubを必ず利用して一元管理を目指し、部署間連携はデータメッシュ的な管理トポロジーの実現を進めています。またDataplex Catalogのアスペクトなどを活用してメタデータを充実させ、データ品質の可視化と向上を図っていきます」(山村氏)

ABEMAのデータ基盤は、大規模スポーツイベントを通じて鍛えられた高負荷対応の基盤を基に、今後もサービスの進化を支える重要な役割を担っていくことだろう。