Account と User という 2 つの関連テーブルがあり、User が Account への外部キーを保持しているとします。私は 2,000 個のアカウントを持っており、あるアカウントから別の 1,999 個のアカウントに 10,000 人のユーザーをコピーする必要があります。したがって、すべてのデータは User テーブルに移動します。コピーする必要がある 10,000 人のユーザーに問い合わせました。ここで、それらを User テーブルに挿入する必要があります。これは (10000 x 1999 =) 199,90,000 行のカウントです。
挿入操作に複数のスレッドを使用する予定です。SQL Server が同時要求を処理する方法を知る必要があります -
- 各スレッドに 1 つずつ、複数の接続を使用していますか?
- 複数のスレッドが同時にデータを提供するときに、同じテーブルにデータを挿入するにはどうすればよいですか?
- User テーブルには Identity 列があるため、挿入操作が完全に同時実行されることはありません。しかし、クライアント エンドから複数のスレッドを使用するこのアプローチでは、パフォーマンスが向上するでしょうか?
- この操作を実行するためのよりスケーラブルで高速な方法は何ですか?
前もって感謝します。
編集:私はEntity Framework 4.0を使用していますが、これは実際には一括コピーをサポートしていません:(