ドットインストール代表のライフハックブログ
前提: ゲームに限らずランキング機能が必要になるケースは多い つまり需要はある だが、MySQLで高速なランキング表示は難しい 具体的に言うと、以下の要件を満たすのが不可能 1行の更新コストが要素数Nに対して O(log N) 以下 任意のランキング位置周辺のSELECTコストが O(log N) 以下 ならば、専用のストレージエンジンを作ればいいのではないか いつやるか? 今でしょ! 以下理由 MySQL 5.5以降?だとストレージエンジンをまたぐトランザクションがまともになってるはず*1 ランキング専用でいいから、テーブル構造とか固定でいい(つまり実装が簡単!) ランキング専用だから、テーブル・ロックで十分(つまり実装が簡単!) 更新すると順位がずれる(つまりテーブルの大部分に影響がある)ので行ロック実装するメリットが小さい*2 ランキング専用でいいから、全データをメモリにもっても問題
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く