検索
特集

番組視聴者数を秒単位で分析 テレビ東京のGCP活用事例「つらいことはしない」(2/2 ページ)

テレビ東京では社内に構築していた視聴データ分析基盤を、Google BigQueryなどを活用して新たに構築し直した。なぜ、GCPを選んだのか。どのように視聴者数をリアルタイムに分析しているのか。テレビ東京でテックリードを務める段野祐一郎氏が語った。

Share
Tweet
LINE
Hatena
前のページへ |       

リアルタイム視聴データ分析基盤の構築方法と勘所

 段野氏が開発したリアルタイム視聴データ分析基盤では、テレビから取得した情報をフルマネージドなメッセージングサービス「Google Cloud Pub/Sub」を通じてオブジェクトストレージ「Google Cloud Storage」(GCS)に保存した各種マスターデータを参照したり、ビッグデータ分析サービス「Google Cloud Dataflow」でデータを統合し、BigQueryやBigQuery BI Engine、Google データポータルを用いてグラフィカルに分析したりできるようにした。この基盤をモニタリングツールの「Google Stackdriver」を利用して統合監視しているという。

アーキテクチャの概要
アーキテクチャの概要

 分析する際は、テレビデバイスのユーザーエージェント(UA)とテレビの型番、販売価格を照合し、「大画面で高機能なテレビを利用していたら生活レベルが高いユーザー」など、ユーザーを分類してから分析しているという。

 「テレビデバイスのUAとテレビの型番をまとめているデータは公開されていなかったため、ECサイトなどの情報を利用して手動で構築した。分析基盤の構築はGCPが提供するベストプラクティスに沿った形で、BigQuery BI Engine以外に目新しいことはない。他の業務を行いながら開発していたので半年程度かかったが、実装は1人月程度でできた」

ダッシュボードの画面
ダッシュボードの画面

 利用サービスの選定や使い方については、コストや今後の運用が大変にならないように考えて決めていった。例えば、データを統合する場面では「Cloud Data Fusion」の利用も検討していた。

 しかし、Cloud Data Fusionのコストは1時間当たり1.8ドル、Cloud Dataflowは1時間当たり0.1ドルという価格差があったため、Dataflowを選択した。

Dataflowを用いたデータのパイプライン
Dataflowを用いたデータのパイプライン

 また、マスターデータを管理する場合、インスタンスを立ててDBを管理するとコストがかかってしまう。そこで、DBではなくCSVファイルをGCSに保存し、Dataflowから読み込んで処理するなどコストがかからないよう工夫した。他にも以下のような細かい工夫を行っている。

  • BigQuery BI Engineで利用するSQLにおいて、日付条件やCOUNTをそれぞれ推測値にすることでスキャン量を半減させて利用料金を節約
  • Google データポータルはデータの更新頻度が最短1時間で、リアルタイムに分析できなかったため、秒単位で再読み込み可能なChrome 拡張機能を実装
  • 頻繁に利用するBigQueryのクエリは「Connected Sheet」を用いてGoogle スプレッドシートで実行、結果を表で取得できるように環境を構築

参考記事:100億行のデータをスプレッドシートで扱う機能など、Google Cloudのデータ関連発表をまとめた

ちょっとした失敗も

 段野氏はちょっとした失敗談も披露した。初めてデータ分析基盤をデプロイした際、DataflowのジョブのためにGoogle Compute Engineのインスタンスが100台も立ち上がったことがあったという。

 「原因は内部で起きていたエラーを解消するためにワーカーが複数立ち上がってしまったためで、番組の視聴分析だから100台ないとできないのか、と思っていたらエラーが原因だと気付いた。請求金額がとんでもないことになるところだった。運用している現在はStackDriverによる統合監視と予算アラート(Billing Alert)を設定しているため、とんでもない請求金額が求められるという心配もなく、運用できている」

 段野氏は最後に、GCPによるデータ活用と、今後の意気込みを述べて講演を締めくくった。

 「各企業がデータの民主化、浸透に取り組んでいる。だが、最も大切なのはデータを使っていかに結果を出すかという点だ。データ活用のハードルを下げる意味でも、Google データポータルやConnected Sheetsのような仕組みがGCPにあるのはありがたい。GCPを活用したことで、エンジニア1人、1人月であっても保守性が高く、スケーラブルなリアルタイム視聴データ分析基盤を開発できた。本番運用開始から2カ月がたち、数億レコードのデータが蓄積されている。今後は、SNSの投稿などテレビ視聴分析に利用できるデータも収集したり、GCPが提供する機械学習サービス『BigQuery ML』を用いて番組視聴者の視聴傾向をクラスタ分析したりするなど取り組みを続けていきたい」

Copyright © ITmedia, Inc. All Rights Reserved.

前のページへ |       
[an error occurred while processing this directive]
ページトップに戻る