Biblioteca122.739 documentos en línea

Artículo

Desempeño de consultas SQL relacionales y objeto-relacionales en OracleThe performance of relational and object-relational SQL queries when using Oracle

Resumen

En este artículo se muestra por medio de consultas específicas el comportamiento del modelo relacional y objeto- relacional, y se presenta así un estudio en el que se mide y a la vez se compara la eficiencia (tiempo, uso de recursos del sistema) de operaciones que involucran cláusulas GROUP BY, subconsultas (con las cláusulas IN y EXISTS), y reuniones (joins).

Introducción

Buscar la optimización de las consultas para reducir tiempos de respuesta o evitar el  uso  exagerado  de  recursos del sistema, se ha constituido en un objetivo durante los últimos años. En muchas consultas, la realización de reuniones (joins), agrupamientos y subconsultas entre tablas, es indispensable para obtener la información solicitada.

El SGDB Oracle soporta el modelo relacional y el objetorelacional a partir de la versión 8i (Oracle Corporation, 2003), sin embargo poco se sabe cuándo es mejor utilizar cada uno de ellos (Bodnar, 2000; Raghavan, 1999), es  por esto que se procederá a analizar casos que proporcionarán una base para entender y aplicar de una mejor manera, las consultas que se construyan en uno u otro modelo (tablas relacionales, frente a tablas basadas en tipos y tablas anidadas del modelo objeto-relacional).

Para lograr tal análisis, Oracle provee varias herramientas que permiten observar  cómo  se  comporta  la  ejecución  de una determinada consulta. Estas herramientas son el EXPLAIN PLAN, SQL TRACE y  el  Tkprof.  Estas  herramientas entregan información detallada acerca de la ejecución de una consulta (tales como bloques leídos durante la ejecución de la consulta, filas procesadas, uso de la cpu, entre otros), la cual ayuda en gran manera a evaluar su desempeño. Sin utilizar estas herramientas no sería posible analizar cómo se comporta internamente la consulta,   es decir, no se dispondría de información suficiente para conocer en qué forma se debe modificar  una  consulta  para hacerla más eficiente.

El SGBD Oracle también  ofrece la oportunidad de modificar  la forma en que se ejecutan internamente las  consultas,  esto se logra mediante la utilización de palabras clave den tro de la sentencia a ejecutar. Estas palabras clave son llamadas hints. A través de su utilización se puede influir en la ejecución parcial o total de la consulta con el objetivo de mejorar posiblemente el rendimiento de la misma.

El SGBD Oracle posee un optimizador interno que le permite definir un plan de ejecución para una consulta. Este optimizador, sin embargo, no siempre define el plan más óptimo. Es en estos casos en donde la utilización de los hints se hace necesaria para la búsqueda de consultas optimizadas.

El SGBD soporta una gran cantidad de hints para forzar al optimizador a realizar diferentes acciones específicas que ayudan al proceso de optimización (entre ellas se encuentran el forzar o no la utilización de índices, selección del método para realizar una reunión, entre otros); sin embargo, no es el objetivo de este artículo mostrar la variedad     de hints que soporta el SGBD Oracle, sino mostrar y utili zar aquellos que apoyan el enfoque del artículo. Un análisis detallado puede verse en (Nyffenegger, 2001)

  • Tipo de documento:Artículo
  • Formato:pdf
  • Idioma:Español
  • Tamaño:999 Kb

Cómo citar el documento

Esta es una versión de prueba de citación de documentos de la Biblioteca Virtual Pro. Puede contener errores. Lo invitamos a consultar los manuales de citación de las respectivas fuentes.

Este contenido no est� disponible para su tipo de suscripci�n

Información del documento