スポンサーサイト

一定期間更新がないため広告を表示しています

| スポンサードリンク | - | - | - | pookmark |
←prev entry Top next entry→
CARD_LOGSの設計変更


いままでずっと鬼門だった、CARD_LOGSの設計変更が今日、とうとう出来た。


いままでは、カード情報をMyISAMにインサートしていた。
なので、通信状態が不安定だとカードが増殖するという致命的なバグがあった。
それを、まずなおさないといけない。

バグの原因は、プレゼントやトレードで出したカードは喪失記録が残るけど、新しい人にわたったらインサートしていたところにあった。

そこで、カードを喪失したらUPDATE、わたったらUPDATEすることになった。
この時点でもう「ログ」ではなくなったけれども。

なにしろMyISAMなので、UPDATEのたびにしているテーブルロックが問題になった。
なのでテーブルロックをしないInnoDBに入れ替える必要がある。

カードログはすでに14個に増えた大きなマージテーブルになっている。
これをひとつのテーブルに合体させる作業になる。
2千万レコードある。

何時間かかるか想像も出来ない。
しかもその間ずっとサイトは止まる。
情報がカードなだけにもし万一のことがあれば影響範囲は計り知れない。
なので、、、あとまわしあとまわし、、、で今まで来た。


でもやっと今日できた。
出来たばかりなのでうまくいってるのかまだわからないけど、動いてる。
なのでできたと思う。良かった。

これから始まる企画は、CARD_LOGSをUPDATEしまくることになるから、出来て良かった。

2ギガのデータをダンプしたりインポートしたりインデックスをはったりするのは、ひとつひとつの作業に時間がかかって、積み上げるとけっこうな合計時間になってしまった。
朝4時にやれば朝9時には終わったんだけどな、、、

でも昼にやってしまった。
まだまだ、自分に甘いな。


| 小泉ひろか | お仕事 | comments(0) | trackbacks(0) | pookmark |
スポンサーサイト
| スポンサードリンク | - | - | - | pookmark |
Comment
name:
email:
url:
comments:
Trackback
http://koizumihiroka.jugem.jp/trackback/1100