インデックス付きの大きなテーブルを分割するとパフォーマンスが向上するかどうかを確認するテストを行いました。
元のテーブル: 20000 行。サブテーブル: 4x5000 行。
メイン テーブルは 4 つのテーブルに分割され、すべてのテーブルにインデックスが付けられます。テストでは、より正確なクエリ時間を測定するために、各 SQL クエリがループで 10000 回実行されました。
テーブル内のインデックス付きの列を検索すると、パフォーマンスに違いは見られず、元の (20000 行) テーブルと新しい (5000 行) テーブルのクエリ時間は同じです。
すべてのテーブルのインデックスを削除して、インデックスを作成せずに同じテストを試みたところ、パフォーマンスの違いは明らかで、サブ テーブルでの検索は、大きなテーブルでの検索よりも 6 倍高速でした。しかし、インデックスを作成してもパフォーマンスは同じでした。
私のテーブルを小さなテーブルに分割するのは時間の無駄だと思いますか?
注: 20000 サイズはテスト用です。実際のデータは 100M 以上のサイズになります。