提供するイベントポイント増加量(10分速、30分速、時速、24時間速)の多様化

Issue #25 resolved
imcgborder repo owner created an issue

やることの要約

プロデューサー(個人)・プロダクションのイベントポイント増加量(10分速、30分速、時速、24時間速)を、もっと広い範囲で提供する。

また、システムID(MobageID・プロダクションID)の増加量と順位の増加量を両方とも提供する。

たとえば:

  • イベント終盤で自分の周辺にいるプロデューサーのイベントポイント増加量を、Webポータルのイベント明細ページで把握できる。
  • 基準順位ではない特定順位(4000位よりも上)のポイント増加量をWebまたはAPIで定点観測できる。
  • 自分または特定プロデューサーの増加量を継続的に(←ここが重要)API経由で観測できる。

副次的戦略目標

現在の時速データは、

  • 時速しか持っていない。
  • システムID単位での増加量しか持っていない。なので順位増加量はツイート出力などの都度計算しており、CPUも圧迫している。
  • ツイート出力などで使いやすいよう非正規化してしまったので、35GBもあってDBの容量をSUGOI圧迫している。インデックスがメモリに乗らないのでI/Oまで奪っているのでとにかく早く潰したい。

ストレージ容量を節約しつつ多様な増加量をユーザに提供できるようにしたい。

やること

  1. イベント増加量を保持する新たなテーブルの新設
  2. 増加量計算イベント観測タスクへの盛り込み。観測タスクに非同期処理ラインとして新規に盛り込む。
  3. 過去イベント分の計算
  4. 時速を出力している既存機能のデータ取得元を変更
  5. Webへのイベントポイント増加量の盛り込み
  6. APIの修正、新設

Comments (1)

  1. Log in to comment