Pipelined
funzioni, un esempio molto classico è dove si esegue un SELECT * FROM table name
in SQL*Plus
. Quello che succede è che Oracle trasmette i dati dalla tabella..
Come guardare un video su YouTube.
Tieni presente la parola "Streaming '.. E nella nostra funzione definiamo quante righe trasmettere in streaming.. Ogni streaming riga è immediatamente disponibile per il chiamante. Pipelining
significa in parole povere, non farmi aspettare fino al completamento, dammi tutto ciò che hai e continua a elaborarmi e aggiornarmi contemporaneamente.
Nell'ultima procedura, dopo aver eseguito il piping di ogni riga, avvii uno sleep
chiama per 10s
, quindi il record è Trasmesso in streaming al chiamante ogni 10 secondi.
Inoltre, una normale funzione di tabella continuerà ad attendere fino al completamento di tutto il lavoro di elaborazione, quindi restituirà il riferimento al cursore del set di risultati.
funzioni pipeline , affermano di risparmiare memoria, è tramite flushing
il contenuto immediatamente, e quindi il buffer utilizzato è sempre minimo, mentre il conteggio dei round trip aumenta.