ゲームテーブル、Playersテーブル、およびUsersテーブルがあるとします。MySQLで大きなテーブルを扱うには? (ゲームのDBデザイン)
- 各ゲームは、各プレイヤーが「死んだ」または「生きている」のような、ステータスがあり、多くのプレーヤー
- を持っています。したがって、プレーヤーはユーザーではありません。
- 各プレーヤーは、ユーザー
構造これまでに正常に見えるがあります。しかし、1日に何千ものゲームがある場合(この種のゲームの時間は非常に短い)、各ゲームには10人または20人のプレイヤーがいると思います.Playerテーブルの何百万行も1年以上。そして、私はどのゲームをも再生できるようにしたいので、ゲーム終了後も各プレーヤーをテーブルに保管しておく必要があります。私はその時点でのパフォーマンスが心配です。選択と更新は遅くなり、遅くなりますよね?
どのような考えですか?
http://www.mysqlperformanceblog.com/2006/06/09/why-mysql-could-be-slow-with-large-tables/ – rwilliams
誰も(文字通り誰も)アプリケーションを設計できませんでしたパフォーマンス上の問題の影響を受けません。ツイッターとフェイスブックのdevteams(あなたも知っている - 彼らは彼らの仕事が本当に良いと知っている)パフォーマンスの問題を経験する。ですから、いくつかの一般的なスキーマから始め、**実際の**ボトルネックが検出されている限り改善することをお勧めします。 – zerkms
はい、私は設計によって正しいことをするのが好きです。たとえば、私の計算で1日に1M行の新しい行があると言われたら、週に「本当のボトルネック」になるのを待つのではなく、開始する前に全部をやり直す必要があります後で。 – HappyDeveloper