Upgrade to Pro — share decks privately, control downloads, hide ads and more …

行動トラッキングデータベースリプレイスの道のり

Avatar for ば
January 15, 2019

 行動トラッキングデータベースリプレイスの道のり

Avatar for ば

January 15, 2019

Other Decks in Programming

Transcript

  1. 2017年7月 ー9月 (暫定対応) • 方針「アプリ改修せず、半年もつDBに」 • 方式検討 ◦ 改修後のシステムと移行方式、両方の検討が必要 ◦

    テクニカルエキスパート 2名が素案作成 ◦ パフォーマンス検証と移行リハーサルを繰り返す • 方式決定 ◦ パーティション変更 / 現状と同じビューを用意 / insert trigger ◦ 直近 データは fdw による double insert 、過去データはRedshift 経由の移行 によりテーブル構成を変換しながら copy
  2. 実際に手を動かす • 動かしてみると初めてわかること 大規模のシステムではチュートリアルにあるようなシンプルな方法 だとシステム要件満たさない マニュアルに書いてあっても見過ごす細かい仕様が設計を左右す る(fdw の トランザクションレベルとか) •

    新技術採用などの設計時から実際の稼働に近い形で検証すること で骨や肉になる知見が得られる ◦ AWS RDS の スナップショットの利用が可能だったのは楽だった ◦ リプレースだと非機能要件の見積もりが(比較的)容易
  3. 解決方法は技術以外にもある • 当初は現行仕様を一切変更せずに実現する方法を考えていた • ただしリソースは有限 ◦ Lambda Architecture などは実装コスト高い ◦

    トラッキングデータを無期限で保存するのは運用コスト高い ◦ それで実現できるのが「3年前のメールクリック行動でターゲティング可能」 ◦ 仕様の矛盾なども • その機能・サービスは必要か? ◦ 実装しない ≠ 力不足、負け ◦ この機能を維持するリソースで、他の価値あるものができないか?