Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Aa9-Ev4-Técnicas para La Optimización de Bases de Datos
Aa9-Ev4-Técnicas para La Optimización de Bases de Datos
1881802
NARCISO MANUEL MEJIA REYES
SENA
GESTION Y SEGURIDAD DE BASES DE DATOS
2019
TÉCNICAS PARA LA OPTIMIZACIÓN DE UNA BASE DE DATOS
Las técnicas para la optimización de las bases de datos están dadas bajo varios parámetros,
primero hay que realizar una supervisión con el fin de evaluar el rendimiento de un servidor
para detectar y aislar los procesos que causan problemas y por ende realizar el respectivo
seguimiento de las tendencias de rendimiento.
Hay que tener presente que la evaluación continua del rendimiento de la base de datos
ayuda a minimizar los tiempos de respuesta y a maximizar el rendimiento para que este sea
óptimo. Es necesario analizar a fondo los requisitos de las aplicaciones, comprender la
estructura lógica y física de los datos y evaluar el uso de la base de datos para la toma de
decisiones en las organizaciones.
El SGBD SQL Server y SO Microsoft Windows, nos facilitan herramientas que supervisan
y nos muestran las condiciones actuales de la base de datos y realizan un seguimiento de
ese rendimiento a medida que este cambia. Hay que conocer el modo de supervisar SQL
Server, ya que de esta forma nos puede ayudar en varios aspectos como son: Determinar si
el rendimiento se puede mejorar; evaluar la actividad de los usuarios y solucionar
problemas, depurar componentes de aplicaciones como procedimientos almacenados, entre
otros.
Existen muchas tareas de supervisión y optimización del rendimiento, entre ellas podemos
detallar las siguientes:
PROCEDIMIENTO DESCRIPCIÓN
sp_who (Transac-SQL) Notifica información instantánea a
cerca de los usuarios y procesos
actuales de SQL Server, incluida la
información sobre la instrucción que se
ajecuta o si esta esta bloqueada
sp_lock (Transac-SQL) Proporciona información de instantánea
acerca de bloqueos, incluidos los
identificadores de objeto y de índice, el
tipo de bloqueo y el tipo o recurso al
que se aplica el bloqueo.
Para determinar si el sistema SQL Server funciona de forma óptima, se deben tomar medidas
del rendimiento a intervalos regulares, incluso cuando no existan problemas, para
establecer una línea base del rendimiento del servidor, comparar cada conjunto de medidas
nuevo con las medidas tomadas anteriormente.
Las áreas siguientes afectan al rendimiento de SQL Server:
A menudo suele ser más efectivo utilizar conjuntamente varias herramientas de Microsoft
SQL Server o Microsoft Windows para aislar los problemas de rendimiento de una base de
datos que usar solo una herramienta cada vez. Por ejemplo, la característica Plan de
ejecución gráfico, denominada también plan de presentación, le ayuda a reconocer los
interbloqueos en una sola consulta. Sin embargo, puede reconocer más fácilmente otros
problemas de rendimiento si utiliza conjuntamente las características de supervisión de
SQL Server y Windows.
El SQL Server Profiler puede utilizarse para supervisar y solucionar problemas de
Transact-SQL o problemas relacionados con las aplicaciones. Asimismo, puede utilizar el
Monitor de sistema para supervisar problemas relativos al hardware y otros problemas
relacionados con el sistema. Puede supervisar las siguientes áreas para solucionar
problemas:
Igual de importante es la correcta selección del problema de rendimiento que desea que cada
herramienta supervise u optimice, la herramienta y la utilidad dependen del tipo de
problema de rendimiento que se requiera resolver.
A continuación, se describen diversas herramientas de supervisión y optimización y los
problemas que ayudan a solucionar.
El Asistente para la optimización de motor de base de datos de Microsoft (DTA) analiza las
bases de datos y hace recomendaciones que puede usar para optimizar el rendimiento de las
consultas. Puede usar el Asistente para la optimización de motor de base de datos a fin de
seleccionar y crear un conjunto óptimo de índices, vistas indizadas o particiones de tabla sin
necesidad de conocer detalladamente la estructura de la base de datos ni el funcionamiento
interno de SQL Server. Con DTA, se pueden realizar las siguientes tareas:
• Solucionar problemas del rendimiento de una consulta específica
• Optimizar un conjunto grande de consultas en una o varias bases de datos
• Realizar análisis condicionales de exploración de posibles cambios de diseño físicos
• Administrar el espacio de almacenamiento.
El Asistente para la optimización de motor de base de datos de Microsoft (DTA) analiza las
bases de datos y hace recomendaciones que se pueden usar para optimizar el rendimiento
de las consultas, puede usar el Asistente para la optimización de motor de base de datos a
fin de seleccionar y crear un conjunto
óptimo de índices, vistas indizadas o particiones de tabla sin necesidad de conocer
detalladamente la estructura de la base de datos ni el funcionamiento interno de SQL
Server. Con DTA, se pueden realizar las siguientes tareas:
Activar la caché de base de datos del SGBD a veces puede empeorar el rendimiento. Esto
depende del volumen de datos al que se acceda más
frecuentemente. Si el volumen de datos es alto y se actualiza frecuentemente, estaremos
siempre escribiendo en la caché en lugar de leer de ella. Así que normalmente es preferible
recurrir a un sistema de caché externo, en el cual podamos controlar que se van a cachear
realmente los datos más frecuentes y más frescos. Si el sistema de caché no nos provee de
esta funcionalidad, podemos implementarla nosotros. Una buena forma de hacerlo sin el
sobrecoste de almacenar el número de veces que se accede a una consulta es generar un
número aleatorio y cachear la consulta si ese número pasa de cierto valor. Por ejemplo,
supongamos que generamos un número aleatorio entre 1 y 100 y la consulta se cachea si
dicho número es menor que 10, de esta forma se guardará la consulta en caché con una
probabilidad del 10% en cada petición, así si la consulta tiene más peticiones, será más
probable que se guarde en caché.
REFERENCIAS