考えられる説明:
-
Javaは何もしていませんが、Oracleは最初の1000行を計算しています。 最初の10の代わりに。
-
Oracleは何もしていませんが、Javaは最後の1000行を計算しています 最後の10の代わりに。
-
通信プロトコル(TCP / IPなど)は長時間待機してから、一度により多くのデータを処理する必要がありますが、ピークデータ転送はハードウェアの制限により抑制されます 。これはプロトコルのオーバーヘッドによって打ち消されるため、最適なフェッチサイズが必要であり、それ以下またはそれ以上の場合は遅くなります;))
-
フェッチのプロセスが他のJavaコードと同期している場合はさらに悪化するため、Javaは前のデータを処理した後にのみより多くの行を要求します その間、Oracleは何もしません。
3人いると想像してみてください:
- 最初の1つはA4用紙を半分に折ります
- 2つ目は、折りたたまれた紙の束をある部屋から別の部屋に運びます
- 3番目は折りたたまれた紙からいくつかの形を切り取ります。
1つ目は2つ目が戻るまで待たなければならず、2つ目は3つ目が仕事を終えるまで待たなければならない場合、スタックはどのくらいの大きさにする必要がありますか?
1000のスタックは、10のスタックよりも優れているとは思いません;))