sql >> データベース >  >> RDS >> Oracle

行フェッチのOracleサイズを大きく設定すると、アプリの速度が低下しますか?

    考えられる説明:

    1. Javaは何もしていませんが、Oracleは最初の1000行を計算しています。 最初の10の代わりに。

    2. Oracleは何もしていませんが、Javaは最後の1000行を計算しています 最後の10の代わりに。

    3. 通信プロトコル(TCP / IPなど)は長時間待機してから、一度により多くのデータを処理する必要がありますが、ピークデータ転送はハードウェアの制限により抑制されます 。これはプロトコルのオーバーヘッドによって打ち消されるため、最適なフェッチサイズが必要であり、それ以下またはそれ以上の場合は遅くなります;))

    4. フェッチのプロセスが他のJavaコードと同期している場合はさらに悪化するため、Javaは前のデータを処理した後にのみより多くの行を要求します その間、Oracleは何もしません。

      3人いると想像してみてください:

      • 最初の1つはA4用紙を半分に折ります
      • 2つ目は、折りたたまれた紙の束をある部屋から別の部屋に運びます
      • 3番目は折りたたまれた紙からいくつかの形を切り取ります。

      1つ目は2つ目が戻るまで待たなければならず、2つ目は3つ目が仕事を終えるまで待たなければならない場合、スタックはどのくらいの大きさにする必要がありますか?

      1000のスタックは、10のスタックよりも優れているとは思いません;))



    1. テーブルから重複を削除します

    2. 再利用できるようにOracleの主キーの名前を変更する方法

    3. ソケット'/var/lib/mysql/mysql.sock'を介してローカルMySQLサーバーに接続できません(2)

    4. PostgreSQLで行が更新されたときにタイムスタンプを更新する