楽天のエアロスパイクを活用したターゲティング広告の実例
楽天株式会社様
- 数百万ユーザーの高トラフィック環境でレコメンデーション・マッピングデータを低レイテンシー・高スループットで処理する必要があり、従来のデータベースでは実現が困難だった
- 増大するデータとトラフィックに対応できるスケールアウト可能なデータベースが必要だった
- 24時間稼働する広告サービスで、ダウンタイムが収益に直結するため安定性が求められた
- Aerospikeをコアデータベースとして採用
- Aerospkeの独自機構により、低レイテンシー・高スループットを達成しユーザーデータの処理効率を大幅に向上
- ハイブリッドメモリアーキテクチャにより、低コストで大規模なスケールアウトを実現
- 数百万ユーザーへの即時のサービス提供により顧客満足度が向上
- クラスター内のサーバー障害時も自動対応、影響が最小限に抑えられ、運用負担を軽減、迅速な復旧が可能に
- 大規模なスケールアウト環境下においても総所有コスト(TCO)を大幅に低減
- ユーザープロファイルデータの一元管理により、開発者間でのデータ共有が容易に。新製品や新アルゴリズムの開発が加速
楽天が提供する広告配信

インターネット関連サービスを中心に展開する日本を代表する企業「楽天」。
同社は、ディスプレイ広告プラットフォームを通じて、Eコマースをサポートするさまざまな種類の広告を提供しています。
楽天では、ディスプレイ広告や検索広告、ソーシャルメディア広告など、さまざまな種類の広告を提供しています。これらは大きく、ターゲティング広告とノンターゲティング広告の2種類に分類されます。
- ノンターゲティング広告:多くのブランドにとって定番の広告。ユーザーの行動にパーソナライズされていないため、特定のページを訪れたすべてのユーザーに適用される
- ターゲティング広告:過去の行動から特定の種類の製品やサービスに興味を持っている、もしくはその可能性があることを示すユーザーに表示。一人一人にパーソナライズされて配信される
関連資料を無料でご利用いただけます
お役立ち資料をダウンロード膨大な量と負荷を処理する高性能データベースの必要性

楽天の広告プラットフォームにおいて、ユーザーは次のような行動を取っています。
①ユーザーがフロントエンドアプリケーションやモバイルアプリを通じて「楽天市場」に入る
②トラッキングデータベースで、ユーザーに関する情報をクッキーや携帯電話のIDから収集。その情報をレコメンデーションエンジンとユーザーマッピングエンジンに転送する
これらのエンジンは、ユーザーのプロファイルデータとユーザー固有のレコメンデーションをターゲティングデータベースに送信し、ユーザーがウェブサイトを訪れたときに配信される広告配信エンジンへと転送されます。
広告配信で効果を出すためには、ターゲティング・データベースは膨大な量のレコメンデーションデータとユーザーマッピングデータを保存できなければなりません。
また、常に増加するトラフィックの需要に対応できるように拡張性を備え、24時間利用可能であることも求められます。
さらに、楽天がインターネットからユーザーに広告を配信するたびに、データ需要が劇的に増加する可能性も考えられます。
これは、あるウェブサイトへの膨大な数の訪問者をターゲットにすると、各機械学習モデルによる計算が2倍または3倍になるからです。
速度とボリュームを処理できるデータストアが必要チームの運用効率も向上

同社は、Aerospikeを導入以前は、データベースがターゲティング広告プラットフォームに最適化されていないという問題を抱えていました。
そのため、ターゲティング広告を効果的に運用するには、大量のデータを高速に処理できるデータストアが必要でした。
具体的に、当時の楽天の担当チームは、以下の重要な要件を満たすNoSQLデータベースの導入を検討していました。
- 大容量のデータストア:データベースアーキテクチャは楽天の非常に高いボリュームのデータ環境に対して低レイテンシーを提供する必要があった。同社の広告データは非常に大量であることから、データを保存するためにRAMに依存するメモリーファーストや「キャッシュ」ソリューションにはなり得ないと判断。
- 低レイテンシー(低遅延):データベースアーキテクチャは楽天の非常に高いボリュームのデータ環境に対して低レイテンシーを提供する必要があった。同社の広告データは非常に大量であることから、データを保存するためにRAMに依存するメモリーファーストや「キャッシュ」ソリューションにはなり得ないと判断。
- 無制限の拡張性:楽天のデータ量とユーザートラフィックは常に増加し続けているため、ノード(サーバーなど)を追加するだけで、データベースを柔軟かつ容易に拡張できる機能が必要だった。
- 高可用性:広告サービスは24時間365日稼働する必要がある。データベースの可用性が高ければ、サービスを停止したり多くのリソースを使用したりすることなくメンテナンスやアップグレードを行うことが可能に。
- マルチモデル:楽天の機械学習チームは、常に新しいモデルを導入して効果を改善し、広告費用に対するリターンを増加させているため、データが予測不可能に。これらの理由から、データベースは複数のデータモデルをサポートし、特定の学習モデルに基づいて望ましいアウトプットを達成するために必要な様々な種類のデータソースを取り込む必要があった。
関連資料を無料でご利用いただけます
お役立ち資料をダウンロードエアロスパイクがすべての要件を満たす

これらの要件を踏まえ、楽天は膨大なデータを高速かつ低レイテンシーで処理できるエアロスパイクをコアデータベースとして採用しました。
特に、楽天はAerospikeのフラッシュストレージ(SSD)を高く評価しています。これは、純粋なRAMよりもはるかに低コスト(TCO)で、大規模な垂直スケールアップが可能だからです。
さらに、Aerospike Databaseは他のNoSQLデータベースとは異なり、強力な一貫性モードを維持しながらエッジへの高速配信を実現します。その理由は、インデックスが完全にメモリ内に格納され、データはSSDに保存されてディスクから直接読み込まれるハイブリッドメモリアーキテクチャ にあります。
このアーキテクチャにより、エアロスパイクはCPUに過度な負荷をかけることなく、高速なデータルックアップを実現します。つまり、メモリ内のインデックスとSSD上のデータを効率的に管理することで、処理速度を最大化できるのです。
また、エアロスパイクの ユーザープロファイルストア は、GBからPB規模のデータに対応し、数百から数億の同時ユーザーに対して 最高のパフォーマンスと最小のレイテンシーを提供。これにより、業界トップレベルの 99.999%(9分の5) の稼働率を維持しながら、サーバーやクラウドインフラのコストを最大80%削減することが可能になります。
チームの運用効率も向上

エアロスパイクを使用することで、楽天チームの運用タスクも容易になりました。
仮にノードがダウンしたり、サーバーが再起動したりするなどの問題が発生した場合でも、エアロスパイクであれば自動的に解決します。
さらに、サーバーがクラスターからダウンしたり削除されたりしても、クラスター全体に影響を及ぼしません。チームはいつでもすぐにサーバーを復元することができるのです。
ライセンスとサーバーの調整が簡単なこともメリットの一つです。
エアロスパイクのライセンスモデルを活用することで、楽天はデータトランザクションの量が膨大であっても、総所有コスト(TCO)を見積もることができます。
関連資料を無料でご利用いただけます
お役立ち資料をダウンロードチームの運用効率も向上

楽天は、Aerospikeをターゲティングデータベースとして使用し、ターゲティング広告のためのユーザープロファイルを格納することで、ブラウジング、購入、デモグラフィック、ユーザーマッピング、証明書といったソースデータをより明確に把握できるようになりました。
また、このデータを開発者を含む全社で共有することで、新製品の開発や新しいアルゴリズムの開発などを行うことが可能となっています。
さらに、自社のレコメンデーションデータを利用しながら機械学習モデルを作成・トレーニングし、ユーザーの購買行動からユーザーが反応しそうなものを予測することで、広告の最適化を行うことができています。
Aerospike導入をご検討の方はこちら
お問い合わせご担当者様のコメント

Daiji Ito,
Manager, Delivery & Tracking Group (Advertisement Delivery Platform)
Aerospikeは常に高い信頼性と最高のパフォーマンスを発揮してくれています。
これからも私たちの成長を支えてくれると確信しています。