problemas de performance dblink por odbc en RAC
Hola, buenas tardes.
Necesitaria ayuda para ver si puedo detectar el problema de performance que tengo entre dos instancias de una base 11.2 en RAC, que estamos teniendo contra una DB DB2.
Antes de entrar en detalle, quiero comentarles que las instancias estan igual en temas de configuracion, a nivel de instancias y de servers, como asi tambien el ODBC. Tambien hicieron un chequeo sobre la red contra el server de la DB DB2 y no se encontraron problemas.
Ahora, para ponerlos en contexto, hay una base que se encuentra en RAC, llamamosla Ora, que tiene dos instancias, Ora1 y Ora2, desde donde ejecutamos una consulta con la base DB2, en un server iseries.
la consulta tiene esta forma: insert into mauricio_tabla select * from libreria.tabla@db2
El problema esta en que en la instancia 1, ora1, demora unos 10 o 15min, pero en la otra instancia demora unas hs, entre 2 y 3hs.
haciendo un trace sobre estas consultas vemos lo siguiente:
en la instancia 1:
call count cpu elapsed disk query current rows
——- —— ——– ———- ———- ———- ———- ———-
Parse 1 0.00 0.28 1 0 3 0
Execute 1 220.37 958.44 756 155779 847479 6230434
Fetch 0 0.00 0.00 0 0 0 0
——- —— ——– ———- ———- ———- ———- ———-
total 2 220.38 958.73 757 155779 847482 6230434
Misses in library cache during parse: 1
Optimizer mode: ALL_ROWS
Parsing user id: 366 (TRUCK_CORPORATIVO)
Number of plan statistics captured: 1
Rows (1st) Rows (avg) Rows (max) Row Source Operation
———- ———- ———- —————————————————
0 0 0 LOAD TABLE CONVENTIONAL (cr=156244 pr=761 pw=0 time=958468343 us)
6230434 6230434 6230434 REMOTE TABLA[b] (cr=0 pr=0 pw=0 time=600870156 us cost=200 size=640000 card=2000)[/b]
Instancia 2:
call count cpu elapsed disk query current rows
——- —— ——– ———- ———- ———- ———- ———-
Parse 1 0.02 0.26 0 0 2 0
Execute 1 360.81 3281.21 3241 155980 847514 6230434
Fetch 0 0.00 0.00 0 0 0 0
——- —— ——– ———- ———- ———- ———- ———-
total 2 360.84 3281.48 3241 155980 847516 6230434
Misses in library cache during parse: 1
Optimizer mode: ALL_ROWS
Parsing user id: 366
Number of plan statistics captured: 1
Rows (1st) Rows (avg) Rows (max) Row Source Operation
———- ———- ———- —————————————————
0 0 0 LOAD TABLE CONVENTIONAL (cr=156573 pr=3246 pw=0 time=1932279218 us)
6230434 6230434 6230434 REMOTE TABLA [b](cr=0 pr=0 pw=0 time=2221240216 us cost=200 size=6400 card=20)[/b]
No encuentro diferencias de resultado, si en tiempo , uso de cpu y disco, pero lo curioso es «size=6400 card=20» en la instancia 2. Esto se debe a que la DB2 «trata» de froma diferentes a las instancias? o es un problema de oracle?
Muchas gracias
Mauricio