ABEMAのCM配信を支えるスケーラブルな分散カウンタの実装

Proposal: (エントリー済み)

中級者   Architecture Design

ABEMAの広告配信では、生放送番組中にCMが挿入されると全視聴者からのCM取得や視聴計測のリクエストが同時多発的に発生し、特に人気番組ではトラフィックが数十万rps規模でスパイクします。こうした負荷に対応しながら、様々な条件をリアルタイムに判定し、広告配信制御を行っています。ユーザごとのCMの視聴状況や広告予算は時々刻々と変化するため、発生したイベントをニアリアルタイムにカウントし把握できるスケーラブルなカウンタの存在が不可欠です。
これをKubernetes上のGoで実装したアプリケーションとValkey Cluster、Cloud Spanner、BigQuery等を用いて分散カウンタとして実装しました。
当初はすべてオンメモリで実現する予定でしたが、事業要件を検討する過程でカウンタのキー数が10億個程度であることがわかり、読み書き性能とストレージ容量を両立すべくNewSQLとのハイブリット構成にしました。
本セッションでは、この分散カウンタの設計の工夫や実際の実装例についてや、さらなるスケーラビリティを見据えた結果整合性のある分散データ構造の導入の構想などをお話しします。

Honoka Toda
CyberAgent, Inc.
ソフトウェアエンジニア

第二新卒としてサイバーエージェントに入社し、ABEMA の広告配信チームにて広告配信サーバーの開発を担当。
また、IPA 未踏IT人材発掘・育成事業 2025年度クリエイターに採択され、ソフトウェア設計に関するプロジェクトを推進中。
CNCF 認定 Kubestronaut。