Oracle - Paralelismo de consultas

 
Vista:

Paralelismo de consultas

Publicado por Sergi (2 intervenciones) el 18/11/2004 13:19:07
Hola,
tenemos una máquina con 4 CPU's de 1050Mhz cada una, y nos interesa paralelizar consultas debido a que son sobre tablas con muchos millones de registros.
¿Como lo debo hacer? ¿Cual es el mejor metodo para parelelizar? ¿Solo es necesario paralelizar consultas o también se debe hacer para tablas, indices, etc...?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Paralelismo de consultas

Publicado por Jorge-DBA (123 intervenciones) el 18/11/2004 16:11:21
Primeramente, debes considerar algunas cosas antes de paralelizar una consulta:

-Version de la Base de datos
-Init. (PARALLEL QUERY OPCION)
-Segmento con grado de paralelismo.
-Hints.

Por la parte del init configura los parámetros:

parallel_min_servers
parallel_threads_per_cpu
parallel_min_percent
parallel_max_servers
parallel_execution_message_size
parallel_adaptive_multi_user
parallel_automatic_tuning
parallel_broadcast_enabled

(Depende mucho de la version de la BD que manejes)

tienes que alterar la (o las) tabla(s) (indices) con un grado de paralelismo, ejemplo 4 con el parámetro "DEGREE". ejemplo:

ALTER TABLE "AURORA$JIS$UTILITY$"."AURORA$IIOP$SYSTEM$PROPERTIES"
PARALLEL ( DEGREE 4);

Cuando realices tu consuta indíca a Oracle que estarás ocupando 4 procesadores con el hint. por ponerte un ejemplo:

SELECT /*+ FULL(scott_emp) PARALLEL(scott_emp, 4) */ ename
FROM scott.emp scott_emp;

Si deseas hacer una sentiencia select y que la consulta paralelice el índice puedes ocuparlo tambien en el hint:

SELECT /*+ PARALLEL_INDEX(table1, index1, 3, 2) +/

Saludos Camarada y suerte!.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar