Sto cercando di leggere una colonna di clob da oracle in .Net e osservare prestazioni molto scarse e un sacco di traffico di rete.Scarse prestazioni ottenendo il campo di clob da Oracle in .Net
Ho provato ODP + OCI, devArt + OCI modi per accedere ai dati con gli stessi risultati: occorrono circa 20 secondi per ottenere 1000 righe in un lettore di dati e leggere il valore di clob per ogni riga.
Esaminando le tracce wirehark, si scopre che ogni volta che provo a leggere il campo clob per una singola riga nel lettore, ci sono altri pacchetti TCP aggiuntivi inviati tra client e server. Quindi per 1000 righe questo diventa 1000 volte più lento rispetto a interrogare solo una riga.
Allo stesso tempo, se eseguo la stessa query in SQL Developer (che credo utilizzi un driver jdbc sottile invece di oci), ottengo immediatamente i risultati, compresi i valori di clob. Non prova a interrogare clob per ogni riga: li ottiene tutti in una volta sola!
Ma non vedo un thin client per .net. Come posso accelerare le cose? Per favore aiuto!
MODIFICA: il mio tipo di campo è in realtà XMLTYPE memorizzato come clob, non un vero clob. L'uso di getClobVal su di esso migliora il risultato del 50% a 10 secondi per 1000 righe. Ma allo stesso tempo, Sql Developer sta restituendo i risultati all'istante, non in 10 secondi.
Hai mai risolto questo problema? Hai registrato una richiesta di supporto con il venditore? –