MYSQL でストアド プロシージャを作成しました
ストアド プロシージャが 1 つのスレッドから呼び出された場合、結果を返すのに 2.5 秒かかります
ストアド プロシージャが 3 つのスレッドから呼び出された場合、結果を返すのに約 8.5 秒かかります。各スレッドの所要時間はほぼ同じです。
MyISMを利用していますが、手続きを並列実行するために必要な設定があれば教えてください。ストアドプロシージャで取得(選択)するだけで、更新/挿入は行われません
MYSQL でストアド プロシージャを作成しました
ストアド プロシージャが 1 つのスレッドから呼び出された場合、結果を返すのに 2.5 秒かかります
ストアド プロシージャが 3 つのスレッドから呼び出された場合、結果を返すのに約 8.5 秒かかります。各スレッドの所要時間はほぼ同じです。
MyISMを利用していますが、手続きを並列実行するために必要な設定があれば教えてください。ストアドプロシージャで取得(選択)するだけで、更新/挿入は行われません
MySQL からデータをプルするスレッドの数を増やしても、必ずしもスループットが向上するとは限りません。複数のスレッドで同じクエリを実行しているため、コンテキスト切り替えのオーバーヘッドが増加します。
スレッド化を利用するには、入力/出力/ネットワーク遅延などのアイドル時間 (実際のアイドル時間) を利用する必要があります。例:
そのような遅延/アイドリング スレッドがなければ、オーバーヘッド IMO が発生するだけです。