API連携・システム設計

2019年7月 - 2019年9月

メディアとの連携掲載

ゴシップガールズトークとECナビのAPI連携を実装し、リアルタイムポイント付与システムを構築。バッチ通知での掲載によりCV数を約30倍に向上させ、売上も約30倍に増加。

プロジェクト概要

チーム構成:1名
役割:設計・開発・連携調整
期間:2019年7月 - 2019年9月

技術スタック

PHPMySQLLinux/UNIXAWSRedshiftAPI GatewayCloudwatchDatadog

プロジェクト背景

ECナビとゴシップガールズトーク(女子専用トークルームサービス)は既に提携していたが、従来ASPを利用したファイル連携式でポイント付与を行っていた。ASP経由だと、ユーザーがコメントしてからポイント付与まで数日かかってしまう問題があった。また、広告面での掲載では検索しないと案件が出てこないため、ユーザーにとって分かりづらかった。

課題・チャレンジ

  • ASPを使わないリアルタイムポイント付与システムの構築
  • データの量・保存期間を考慮したDB設計(毎月100万〜300万件の想定)
  • ASP経由とAPIでのポイント付与が重複しないリリーススケジュールの調整
  • 外部API連携におけるエラーハンドリングと監視システムの構築
  • パーティショニングとRedshift移行による大容量データ管理

解決策・アプローチ

  • API連携によるリアルタイムポイント付与システムの実装
  • 毎月パーティションを切るMySQLテーブル設計と3ヶ月での定期削除
  • Redshiftへの定期的なデータ移行処理の構築
  • バッチ通知での掲載により、リアルタイム付与案件として表示
  • Datadogによるエラー検知とSlack通知システムの実装

技術詳細

アーキテクチャ

API連携によるリアルタイムポイント付与システム。MySQLでのパーティショニング設計とRedshiftへの定期的なデータ移行処理を組み合わせた大容量データ管理システム。

データベース設計

毎月パーティションを切るMySQLテーブル設計。3ヶ月での定期削除とRedshiftへの定期的なデータ移行。毎月100万〜300万件のデータを効率的に管理。

主要なAPI・機能

  • ゴシップガールズトーク API
  • ECナビ API
  • Redshift API
  • CloudWatch API

成果・学び

成果

  • CV数が約30倍に向上
  • 売上が約30倍に増加
  • リアルタイムポイント付与により、ユーザー体験が大幅改善
  • ブログ等で取り上げられ、毎日できる美味しい案件として認知向上

学び

  • 大容量データを考慮したDB設計とパーティショニング手法
  • 外部API連携におけるエラーハンドリングと監視の重要性
  • リリーススケジュールの調整による安全な移行手法
  • Redshiftへのデータ移行処理の実装
  • タスクアラート機能の活用によるユーザビリティ向上