私は既存のプロジェクトで作業を開始し、前の開発者は、テーブルを、スキーマは同じでもデータが異なる10個の個別のテーブルに分割していました。
テーブルは次のようになります。
[tableName_0]
[tableName_1]
[tableName_2]
[tableName_3]
[tableName_4]
[tableName_5]
[tableName_6]
[tableName_7]
[tableName_8]
[tableName_9]
主キーは整数id
フィールドです。アプリケーションは、ハッシュアルゴリズム(id
mod 10)を使用して、ルックアップ時にアクセスするテーブルを認識します。たとえばid
= 10に生じるであろう[tableName_0]
。
合計すると、テーブルにはおそらく100,000行あり、成長率は比較的低くなります。
だから、私の質問は、これが実行可能な解決策であるかどうか、それがどんな状況でも良い方法であるかどうかです。私の理論は、それらを組み合わせるようにプッシュすることですUNION
。主な欠点は、すべてのアプリケーションコードを変更することと、長期的に見ても価値があるかどうかです。