Oracle Data Warehouse: Query Performance

BI Geek / Data Warehouse  / Oracle Data Warehouse: Query Performance
query performance bigeek blog data base

Oracle Data Warehouse: Query Performance

Uno de los motivos de queja por parte de los usuarios de una solución BI es el bajo query performance de su data warehouse. En las siguientes entradas referidas a Oracle Data Warehouse presentaremos una serie de buenas prácticas que aumentan el performance de las soluciones. Hoy es el turno de la optimización star transformation.

 

Query Performance: Star transformation optimization

En qué consiste

Es una transformación o reescritura de consultas que Oracle realiza de manera interna y transparente al usuario o desarrollador. El resultado es un incremento en la velocidad de acceso de queries que involucran el join de numerosas tablas.

Cuándo aplicarla

La optimización star transformation es muy recomendable en queries donde se cruza una tabla de hechos altamente poblada con un número elevado de tablas dimensión. Esta mejora puede resultar de gran utilidad en los modelos dimensionales en forma de estrella propuestos por Ralph Kimball.

Cómo usarla

Lo primero que debemos hacer si queremos beneficiarnos de este tipo de optimización es comprobar que el parámetro STAR_TRANSFORMATION_ENABLED esté configurado a true. Es necesario ser administrador de la base de datos para realizar esta operación:

Sentencias para comprobar y modificar el valor del parámetro STAR_TRANSFORMATION_ENABLED

Lo siguiente es, si no existieran, crear índices bitmap sobre los campos de cruce y foreign key de la fact table.

Oracle utiliza estos índices para acceder eficientemente a la tabla de hechos y recuperar el set de registros que posteriormente se van cruzar con cada una de las dimensiones. El performance también se incrementa por el uso de segmentos temporales donde se almacenan los registros relevantes antes del join con las tablas de dimensión.

Creación de índice bitmap sobre el campo id_tipo_operacion de la tabla F_PAGOS

El rendimiento todavía puede mejorarse aún más si se utilizan bitmap join index, de los que hablaremos en siguientes entradas.

 

Conclusiones

Oracle provee un amplio abanico de posibilidades para hacer tuning del data warehouse e incrementar el rendimiento del mismo. Una de ellas es la optimización star transformation, que de manera muy simple y transparente aumenta el query performance.

Vale la pena invertir tiempo en el estudio de esta y otras herramientas que pueden mejorar notablemente el grado de satisfacción de los usuarios.