Oracle
 sql >> Database >  >> RDS >> Oracle

L'impostazione di una dimensione Oracle per il recupero delle righe più alta rende la mia app più lenta?

Possibili spiegazioni:

  1. Java non sta facendo nulla, mentre Oracle sta calcolando le prime 1000 righe invece dei primi 10.

  2. Oracle non sta facendo nulla, mentre Java sta calcolando le ultime 1000 righe invece degli ultimi 10.

  3. I protocolli di comunicazione (ad es. TCP/IP) aspettano molto e quindi devono gestire più dati contemporaneamente, ma il picco trasferimento di dati sarà limitato dai limiti hardware . Questo è contrastato dall'overhead del protocollo, quindi dovrebbe esserci una dimensione di recupero ottimale e qualsiasi cosa in meno o in più sarebbe più lenta;))

  4. Peggiorerebbe se il processo di recupero fosse sincrono con altro codice Java, in modo che Java richieda più righe solo dopo aver elaborato i dati precedenti e Oracle non fa nulla nel frattempo.

    Immagina che ci siano 3 persone:

    • La prima piega a metà il foglio A4
    • Il secondo porta pile di carta piegata da una stanza all'altra
    • Il terzo taglia una forma dalla carta piegata.

    Quanto dovrebbero essere grandi le pile, se il 1° deve aspettare che torni il 2° e il 2° deve aspettare che il 3° finisca il suo lavoro?

    Pile di 1000 non saranno migliori di pile di 10 suppongo;))