Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Resumen- La optimización o afinamiento de las bases de datos es su puesto, tales beneficios requieren también algunos
la tarea de mantener o mejorar el rendimiento del sistema para sacrificios, los cuales se presentan en las secciones
presentar la información solicitada en el menor tiempo posible. posteriores.
Para lograr este objetivo existen diferentes técnicas y
herramientas entre las que se encuentra el uso de las vistas
materializadas.
Una vista materializada es el resultado de una consulta que se
almacena de forma física en el motor de bases de datos. A
diferencia de las vistas comunes que almacenan únicamente la
estructura de una consulta y deben ejecutarse para reproducir el
resultado de la misma, las vistas materializadas utilizan un
espacio en caché, con el fin de almacenar el resultado de una
consulta y mantenerlo disponible.
Las vistas materializadas suelen utilizarse en el afinamiento de Beneficios de las Vistas Materializadas
bases de datos para reducir el tiempo de respuesta en consultas
frecuentes y costosas. Como se ya se ha mencionado, las vistas en general
En el presente documento se exponen las ventajas del uso de las proporcionan grandes beneficios entre los que se encuentran:
vistas materializadas en el contexto de la optimización de las
bases de datos.
● Acceso Restringido a los datos: El uso de una vista
permite a los usuarios conocer, si así se desea, solo algunas
I. INTRODUCCIÓN columnas o registros de una o unas tablas.
El crecimiento exponencial en la recolección de información ● Simplificación en el acceso a los datos: una consulta
ha presentado un problema para el rendimiento de los motores que utiliza funciones, campos calculados y/o accesos a más de
de bases de datos. Sin embargo, a la par del crecimiento de los una tabla, puede ser encapsulada dentro de una vista, de manera
datos, se han desarrollado diferentes técnicas y herramientas tal que, cuando se necesite consultar dicho reporte, en lugar de
que ayudan a mitigar o solucionar dichos problemas. llamar nuevamente a las tablas de origen y hacer que el motor
vuelva a ejecutar este trabajo, se llame únicamente a la vista,
En el mundo de las bases de datos, un objeto bastante común convirtiendo lo que pueden ser decenas o incluso centenas de
son las vistas, las cuales almacenan la estructura de una líneas, en una sola.
consulta y la presentan en forma de tabla virtual. Sin embargo,
● Seguridad del modelo de bases de datos: el uso de las
existe un tipo especial de vistas, las vistas materializadas, que
vistas permite encapsular los detalles más relevantes de una
difieren fundamentalmente de las primeras por que almacenan
consulta a los ojos del usuario final. Así, en lugar de presentar
el resultado de la consulta en una tabla en caché y que pueden
al usuario final el nombre de las tablas base y los campos que
ser actualizadas a petición o por demanda a partir de la
las componen basta con exponer el nombre de la vista para que
información real de las tablas de origen.
solo usuarios permitidos puedan acceder a los resultados de la
consulta.
II. CONCEPTO DE LAS VISTAS MATERIALIZADAS Ahora bien, a diferencia de las vistas comunes, las vistas
A diferencia de las vistas comunes que solamente guardan los materializadas usan algunos conceptos diferentes como son:
la estructura de las consultas más no sus resultados, las vistas ● Almacenamiento real en memoria: Como se ha dicho
materializadas almacenan, además de la sentencia SQL, el ya en párrafos anteriores, las Vistas Materializadas almacenan,
resultado mismo de la consulta en el caché del servidor, lo que además de la sentencia, el resultado de la consulta, evitando
permite un acceso más rápido a la información, pues al que el motor tenga que ir hasta las tablas base y hacer los
ejecutar dicha vista, el motor no necesita ir hasta las tablas cálculos antes mencionados.
originales para solicitar los datos, ni debe ejecutar los costosos
joins, en su lugar, el motor solo debe consultar una tabla, la ● Reducción del Plan de Ejecución: en el mismo
tabla que ha sido creada gracias a la vista materializada. Por sentido del anterior párrafo, la consulta de una Vista
Vistas Materializadas - Optimización de Bases de Datos
Costo de Actualización: en el momento de crear o modificar A continuación se simulará un problema de la vida real con el
una Vista Materializada, esta debe ejecutarse en el motor y fin de mostrar a través de un ejemplo claro como el uso de las
posterior a su resultado almacenar el mismo en una tabla. Por vistas materializadas puede ser un instrumento de optimización
tal motivo, al actualizar la Vista Materializada es necesario que poderoso en una Base de datos.
el motor ejecute de nuevo la sentencia y la almacene
nuevamente, lo que puede significa tiempo y carga para el Como
motor.
B. Desventajas de las Vistas Materializadas
Reducir el tiempo y por consiguiente el costo de generación Además del plan de ejecución propiamente dicho, el
del reporte para cada usuario en un 80% y disminuir el número optimizador genera información adicional correspondiente a
de eventos de espera que ocurren en la base de datos. las condiciones lógicas empleadas para el acceso a todas las
C. Análisis del Plan de Ejecución Antes de la Creación tablas y el filtro que se aplica por medio de la claúsula
de la Vista Materializada “WHERE”.
Debido a la gran cantidad de datos, el optimizador gestiona Figura SEQ Figura \* ARABIC 1. Query consulta
compleja
todas las operaciones JOIN a través de combinaciones Hash
accediendo a las tablas más pequeñas y sondeando cada fila
con su correspondiente par.
Vistas Materializadas - Optimización de Bases de Datos
F. Resultados de la Consulta
Figura SEQ Figura \* ARABIC 1. Query consulta
compleja
Como resultado de la creación de la vista materializada se
cumple la meta de afinamiento propuesta sin intervenir con los
procesos de los usuarios.
E. Análisis del Plan de Ejecución Después de la
Creación de la Vista Materializada De ahora en adelante siempre que los usuarios de la compañía
ejecuten el reporte, no se realizará la lectura completa de siete
En la figura No. 6 podemos observar el resultado del plan (7) tablas y las respectivas operaciones de unión y
retornado durante la ejecución de la vista materializada. ordenamiento que se venían llevando a cabo, sino la lectura de
un conjunto de datos físico.
IV. CONCLUSIONES
El seguimiento de las normas indicadas permitirá que su
trabajo resulte visualmente atractivo. Esta misma plantilla se
puede encontrar en formato LATEX, en la dirección web
oficial de las jornadas (http://www.jitel.org).