sql >> Database >  >> RDS >> Oracle

Door de Oracle-grootte van rij-ophaalacties hoger in te stellen, wordt mijn app langzamer?

Mogelijke verklaringen:

  1. Java doet niets, terwijl Oracle de eerste 1000 rijen . berekent in plaats van de eerste 10.

  2. Oracle doet niets, terwijl Java de laatste 1000 rijen . berekent in plaats van de laatste 10.

  3. Communicatieprotocollen (bijv. TCP/IP) wachten lang en moeten dan meer gegevens tegelijk verwerken, maar de piekgegevensoverdracht wordt afgeremd door hardwarelimieten . Dit wordt tegengegaan door de overhead van het protocol, dus er moet een optimale ophaalgrootte zijn en alles wat minder of meer is, zou langzamer zijn;))

  4. Het zou nog erger worden als het ophaalproces synchroon loopt met andere Java-code, zodat Java pas om meer rijen vraagt ​​na het verwerken van de eerdere gegevens en Oracle doet in de tussentijd niets.

    Stel je voor dat er 3 mensen zijn:

    • De eerste vouwt A4-papier dubbel
    • De tweede brengt stapels gevouwen papier van de ene kamer naar de andere
    • 3rd snijdt een vorm uit het gevouwen papier.

    Hoe groot moeten de stapels zijn, als de 1e moet wachten tot de 2e terugkomt en de 2e moet wachten tot de 3e klaar is met hun taak?

    Stapels van 1000 zullen niet beter zijn dan stapels van 10 denk ik;))



  1. Hoe MySQL-back-ups voor Oracle DBA's uit te voeren en te beheren

  2. De levensverwachting van de pagina in SQL Server bijhouden

  3. Hoe de STR()-functie werkt in SQL Server (T-SQL)

  4. Kopieer een tabel van de ene database naar de andere in Postgres