El
optimizador basado en costes, se basa en calcular el coste de distintos planes
de ejecución y elegir para la ejecución el plan de ejecución con menor coste.
En su contra, está el optimizador basado en reglas, que se basa en una reglas
prefijadas para decidir el plan de ejecución de una consulta.
Para
calcular el coste de una consulta, el optimizador se basa en las estadísticas
almacenadas en el catálogo de Oracle, a través de la instrucción:
ANALYZE
[TABLE,INDEX] <object_name> [COMPUTE, ESTIMATE] STATISTICS;
Si
no existen datos estadísticos para un objeto (por ejemplo, porque se acaba de
crear), se utilizarán valores por defecto. Además, si los datos estadísticos
está anticuados, se corre el riesgo de calcular costes basados en estadísticas
incorrectas, pudiendo ejecutarse planes de ejecución que a priori pueden
parecer mejores.
Por
esto, si se utiliza el optimizador basado en costes, es muy importante analizar
los objetos periodicamente (como parte del mantenimiento de la base de datos).
Como las estadísticas van evolucionando en el tiempo, el plan de ejecución se
va modificando para optimizarlo mejor a la situación actual de la base de
datos.
Dentro
de la optimización por costes, existen dos modos de optimización, configurables
desde el parámetro OPTIMIZER_MODE:
-
FIRST_ROWS: utiliza sólo un número determinado de filas para calcular los
planes de ejecución. Este método es más rápido pero puede dar resultados
imprecisos.
-
ALL_ROWS: utiliza todas las filas de la tabla a la hora de calcular los
posibles planes de ejecución. Este método es más lento, pero asegura un plan de
ejecución muy preciso. Si no se indica lo contrario, este es el método por
defecto.
OPERACIONES RELACIONALES
Selección:
La selección de tuplas de una relación R es otra relación con la misma cabecera que R y cuyo
cuerpo está formado por las tuplas de R que verifican una condición entre
atributos. En la condición pueden aparecer operadores de comparación (=,
<>, >=, etc.) y booleanos (and, or, not).
Ordenación:
esta juega un papel muy
importante en los sistemas de bases de datos por dos razones:
• Las
consultas por ejemplo SQL pueden solicitar que los datos sean ordenados, varias
de las operaciones relacionales como las reuniones, se pueden implementar
eficientemente si las relaciones de entrada están ordenadas.
• Se
puede conseguir una ordenación lógica construyendo un índice para la clave de
ordenación y utilizar luego ese índice para leer la relación.
Reunión:
La reunión de dos relaciones específicas es otra relación que contiene
todas las
posibles combinaciones de tuplas, una de cada una de las dos relaciones, tales
que las dos
tuplas participantes de la combinación satisfacen una condición especificada.
Proyección:
La proyección de la Relación R según los
atributos A1, A2, ... , An es otra
relación que tiene por cabecera los atributos indicados y en cuyo cuerpo
aparecen todas
las tuplas de R restringidas a dichos atributos, eliminando tuplas repetidas.
EVALUACIÓN DE EXPRESIONES
La
forma evidente de evaluar una expresión es simplemente evaluar una operación a
la vez en un orden apropiado. El resultado de cada evaluación se materializa en
una relación temporal preparada para su inmediata utilización
Las expresiones se
pueden evaluar por medio de dos métodos:
• Materialización: En el cual los resultados parciales se escriben en una
tabla temporal, implicando aumentar la escritura de los bloques a disco en el
cálculo de eficiencia.
• Encauzamiento: Los resultados generados van alimentando la operación siguiente. Se puede
presentar el esquema bajo demanda en el cual las operaciones superiores hacen
peticiones de tuplas a las inferiores
RESPALDO
Database Backup:
Hay ocaciones donde es necesario tener el “codigo” de
nuestra base de datos, ya sea para hacer un respaldo , para migrar la BD a otro
servidor o simplemente por que se nos da la gana.Para esto MySQL cuenta con un comando muy bueno, el cual nos entrega un archivo con todas las tablas, relaciones y registros que se encuentran en la BD.
mysqldump -u usuario -p
nombreDB > Archivo_de_salida.sql
Donde usuario hay que reemplazarlo con nuestro nombre de usuario.
Lo unico que hay que considerar es que en el script no se encuentra la creacion de la BD, asi que antes de ingresar este archivo pa crear la BD es necesario agregar las siguientes lineas al inicio del archivo:
CREATE nombre_base_de_datos;
USE nombre_base_de_datos;
Tablespace
Backup
Una
base de datos está formada por una o varias unidades lógicas llamadas tablespaces.
Además, cada una de estos tablespaces está formado por uno o varios
ficheros físicos que son los datafiles. Un datafile solamente puede pertenecer
a un tablespace. Por lo tanto, los datafiles de una base de datos son todos los
datafiles que forman parte de todos los tablespaces de la base.
Cuando
se crea una base de datos, hay que crear al menos un tablespace, por lo que
durante el proceso de creación de la base de datos siempre se indica el
tablespace principal de ésta, que se llama SYSTEM. De igual manera, cuando se
crea un tablespace que, como hemos dicho, es una unidad lógica, se debe indicar
obligatoriamente también el nombre de al menos un datafile que formará parte de
ese tablespace.
Autores:
Rodriguez Jonhathan
Hernandez Nayarith
Lugo Jose G.
Pignone Gerardo
Martinez Mildred
Peña Magdalyth
No hay comentarios:
Publicar un comentario