概要
BigQueryに蓄積したニュースデータをLooker Studioで可視化し、記事数推移・ニュースソース別比較・カテゴリ別分布をインタラクティブに分析できるBIダッシュボード。
対象ユーザー
- 収集データの傾向を定期的に把握したい運用担当者
- ニュースソースやカテゴリごとの配信状況を分析したい方
- BIダッシュボードによるデータ可視化を検討しているチーム
Dashboard
🔗 Dashboard を見る
スクリーンショット
ダッシュボード — KPIカード+ソース別時系列チャート
カテゴリ別円グラフ+ソース別棒グラフ
Looker Studioエディタ — ソース別比較チャートの設定画面
開発背景
JP-NewsHourlyで日々収集されるニュースデータが蓄積される中、記事数の推移やソース別・カテゴリ別の傾向を一目で把握できるダッシュボードが必要だった。BigQueryにデータを格納し、Looker Studioで閲覧者が自由にフィルタ操作できるインタラクティブなレポートを構築した。
解決した課題
- 蓄積されたニュースデータの傾向を手動で集計・確認する手間を解消
- ニュースソース(NHK・Yahoo! Japan)ごとの配信量の違いを視覚的に比較
- カテゴリ別の記事分布を可視化し、コンテンツ傾向を把握
主な機能
- 期間フィルタ: 任意の期間を選択してデータを絞り込み
- KPIカード: 総記事数・ニュースソース数など主要指標をリアルタイム表示
- 時系列チャート: 日別の記事数推移をソース別に折れ線グラフで表示
- カテゴリ別円グラフ: ニュースカテゴリの割合を可視化
- ソース別棒グラフ: ニュースソース別の記事数比較
使用技術
- BI: Looker Studio(旧Google Data Studio)
- データウェアハウス: BigQuery
- データ基盤: Supabase → BigQuery
設計上の工夫
- インタラクティブフィルタ: 期間セレクタを設置し、閲覧者が任意の期間でデータを絞り込めるようにした。グラフのクリックでクロスフィルタリングも有効
- 複数視点の組み合わせ: 時系列(いつ)・ソース別(どこから)・カテゴリ別(何の記事か)の3つの視点を1ページに配置し、全体像を一画面で把握できる構成とした
- データウェアハウス構成: SupabaseからBigQueryへデータを集約し、Looker StudioからBigQueryを参照する構成とした。データ更新時はダッシュボードへ自動反映される
アーキテクチャ
JP-NewsHourly
(Data Collection)
│
▼
Supabase (PostgreSQL)
│
ETL
▼
BigQuery
(Data Warehouse)
│
▼
Looker Studio
├─ KPI
├─ Trend
├─ Category
└─ Source
開発周期
1日
担当範囲
データ設計 / BigQuery連携 / ダッシュボード設計 / グラフ選定・配置 / フィルタ設計
成果・実現したこと
- 日々蓄積されるニュースデータの傾向を、ブラウザから即座に確認できるダッシュボードを構築した
- 期間・ニュースソース・カテゴリの3つの視点から分析できるインタラクティブなレポートを実現した
- BigQuery連携により、データ更新がダッシュボードに自動反映される運用不要の構成とした
想定導入効果
- データ集計作業の自動化による確認工数の削減
- ニュース配信傾向の変化を早期に把握
- チーム内でのデータ共有・意思決定の迅速化
開発で直面した課題と解決方法
- データソースの接続: SupabaseのPostgreSQLデータをLooker Studioで直接参照するには制約がある。BigQueryをデータウェアハウスとして配置し、Looker Studioの標準コネクタで安定的に接続できる構成にした
- ダッシュボードの情報密度: グラフを詰め込みすぎると閲覧者が何を見るべきか分からなくなる。スコアカード(全体数値)→ 時系列(トレンド)→ カテゴリ・ソース(内訳)の順に配置し、概要から詳細へ自然に読み進められるレイアウトとした
このプロジェクトで学んだこと
- BIダッシュボードでは、グラフの選定よりも「何を伝えたいか」を先に定義し、それに適したグラフを選ぶ順序が重要だと学んだ
- BigQueryをデータウェアハウスとして利用することで、データソースの変更に影響されない柔軟なBI構成が実現できることを確認した
- インタラクティブフィルタを適切に設計することで、閲覧者が自分の関心に沿ってデータを探索できるダッシュボードになることを実感した