Professional Documents
Culture Documents
HONDURAS
EN EL VALLE DE SULA
CONTENIDO
INTRODUCCIN....................................................................................... 3
I.
II.
III.
Historia......................................................................................................... 5
Misin.......................................................................................................... 6
Visin........................................................................................................... 6
Valores.......................................................................................................... 6
IV.
V.
VI.
PUNTOS SELECCIONADOS.....................................................................9
1.
Administracin de usuarios........................................................................9
Recomendaciones y observaciones...................................................................9
Perfiles de Usuarios.................................................................................... 10
Polticas de Seguridad de Perfiles..................................................................15
2.
Diagrama Entidad-Relacin......................................................................17
3.
ndices.................................................................................................. 17
4.
Optimizacin de Consultas.......................................................................22
5.
IBSurgen..................................................................................................... 31
HQbird....................................................................................................... 31
Aggregated performance statistics for users attachments...................................32
Sequential reads / Indexed reads...................................................................32
Attachments............................................................................................. 33
Transactions............................................................................................. 33
Statements................................................................................................ 34
6.
VII.
CONCLUSIONES Y RECOMENDACIONES..............................................53
Recomendaciones.................................................................................. 53
Conclusiones.......................................................................................... 53
VIII.
BIBLIOGRAFA................................................................................. 54
I.
INTRODUCCIN
El presente informe muestra los resultados de una investigacin a la base de datos realizada en
la Ferretera Nacional, dicho anlisis se efectu como un proyecto educativo en la clase de
Diseo y Administracin de Base de Datos de la Maestra en Gestin Informtica, el cual tiene
como objetivo evaluar la confiabilidad e integridad de los datos, mediante aplicaciones de
herramientas de auditoria de base de datos.
Los resultados de la investigacin son basados en el enfoque de mejores prcticas de un DBA
los cuales forman parte del contenido de la clase y como estas estrategias llevan a una
organizacin a tener su informacin ordenada, estable y segura.
II.
RESUMEN EJECUTIVO
El proyecto consiste en la evaluacin del sistema de base de datos que utiliza Ferretera
Nacional en su sistema de informacin para sus procesos de ventas, inventarios,
cotizaciones y finanzas.
Ferretera Nacional est compuesta por un equipo profesional multidisciplinario
constituido por vendedores y personal administrativo dedicados a la distribucin de
equipo y materiales de construccin a travs de su base de datos.
Con el fin de cumplir con el requisito final de la clase de Diseo y administracin de la
base de datos en aplicar los conceptos de la clase para traer mejoras en la base de datos
de una organizacin, se seleccion Ferretera Nacional para analizar e identificar
oportunidades y riesgos. El objetivo del presente documento es proponer los cambios
necesarios en la base de datos de la organizacin enfocado en las mejores prcticas de
gestin de bases de datos alrededor de seguridad y desempeo.
Contamos con la total colaboracin de Ferretera Nacional y sus lderes para el anlisis
exitoso de su base de datos.
Misin
Somos una empresa orientada a ofrecer la mejor calidad y variedad en productos,
servicios de venta y distribucin de material que satisfagan a nuestros clientes,
brindndoles las mejores opciones de compra, con su personal calificado y dedicado al
mejoramiento continuo, fomentando una relacin exitosa junto a nuestros proveedores y
clientes, con el mejor ambiente, para su confianza y lealtad.
Visin
Ser una empresa lder en la venta de material de ferretera, orientado a satisfacer las
necesidades y expectativas de nuestro mercado con eficiencia y eficacia, brindando
Valores
organizacin.
Calidad y Servicio: Creemos en la calidad y servicio como la esencia de la
organizacin brindndoles a nuestros clientes una atencin personalizada
satisfaciendo sus necesidades con productos de calidad con precios competitivos
La administracin de usuarios
ndices
Optimizacin de consultas
Respaldos y restauracin de la base de datos
5. Monitoreo de procesos de base de datos
Con este estudio se pretende brindar a la Ferrera Nacional recomendaciones para
mejorar el manejo de la informacin.
V.
JUSTIFICACIN
Recomendaciones y observaciones
Perfiles de Usuarios
Uno de los cambios que se tiene que gestionar en la base de datos es la creacin de los
siguientes perfiles:
1.
2.
3.
4.
5.
Cajeros
Vendedores
DespachoBodega
Administrador
Contador
Al crear estos perfiles, el DBA solo asignara los privilegios necesarios. Luego los
usuarios creados sern asignados a los perfiles de acuerdo a las necesidades de
informacin que tienen y en base a los alcances definidos por la organizacin.
Inevitablemente las aplicaciones desarrolladas se tendrn que actualizar en trminos del
usuario que utilizan para las transacciones retirando por completo el uso del usuario
sysdba a nivel de aplicaciones.
Tabla
Clientes
Acceso
Escritura
Compra
Escritura
Compra_C
Escritura
Compra_Cot
Escritura
Cotizacion
Escritura
Credito
Lectura
Deposito
Escritura
Detalle_C
Escritura
Detalle_COM
Escritura
Detalle_Coti
Escritura
Detalle_DC
Escritura
Vendedores
Detalle_DP
Escritura
Detalle_V
Escritura
Devolucion_C
Escritura
Devolucion_P
Escritura
Factura_C
Escritura
Factura_V
Escritura
Orden
Escritura
Orden_Detalle
Escritura
Recibo
Escritura
Tipo_Cliente
Bodega
Lectura
Lectura
Cheques
Lectura
Cierre
Lectura
Clientes
Escritura
Compra
Escritura
Compra_C
Escritura
Compra_Cot
Escritura
Cotizacion
Escritura
Credito
Lectura
Defectuoso
Lectura
Deposito
Lectura
Detalle_C
Escritura
Detalle_Com
Escritura
Detalle_Coti
Escritura
Detalle_DC
Escritura
Detalle_DP
Escritura
Detalle_V
Escritura
Devolucion_C
Escritura
Devolucion_P
Escritura
Empleado
Lectura
Estante
Lectura
Factura_C
Escritura
Factura_V
Escritura
Gasto_V
Lectura
Grupo
Lectura
Inventario
Lectura
Nivel
Lectura
Orden
Escritura
DespachoBodega
Administrador
Orden_Detalle
Escritura
Producto
Lectura
Prod_R_Prov
Lectura
Proveedor
Lectura
Recibo
Lectura
Retiro
Lectura
Retiros
Lectura
Sub_Grupo
Lectura
Tipo_Cliente
Bodegas
Lectura
Escritura
Cierre
Lectura
Compra
Lectura
Compra_C
Lectura
Compra_Cot
Lectura
Congelar
Lectura
Cotizacion
Lectura
Defectuoso
Escritura
Devolucion_C
Escritura
Devolucion_P
Escritura
Estante
Escritura
Factura_C
Lectura
Factura_V
Lectura
Inventario
Escritura
Nivel
Lectura
Orden
Lectura
Orden_Detalle
Lectura
Producto
Escritura
Prod_R_Prov
Escritura
Proveedor
Escritura
Provee_Conta
Escritura
Recibo
Escritura
Retiro
Escritura
Retiros
Escritura
Sub_Grupo
Bancos
Escritura
Escritura
Bodega
Escritura
Cheques
Escritura
Cierre
Escritura
Clientes
Escritura
Compra
Escritura
Compra_C
Escritura
Compra_Cot
Escritura
Congelar
Escritura
Cotizacion
Escritura
Credito
Escritura
Cuenta
Escritura
Defectuoso
Escritura
Departamento
Escritura
Deposito
Escritura
Detalle_C
Escritura
Detalle_Com
Escritura
Detalle_Coti
Escritura
Detalle_DC
Escritura
Detalle_DP
Escritura
Detalle_V
Escritura
Devolucion_C
Escritura
Devolucion_P
Escritura
Empleado
Escritura
Estante
Escritura
Factura_C
Escritura
Factura_V
Escritura
Gasto_V
Escritura
Grupo
Escritura
Inventario
Escritura
Nivel
Escritura
Orden
Escritura
Orden_Detalle
Escritura
Prestamo
Escritura
Producto
Escritura
Prod_R_Prov
Escritura
Proveedor
Escritura
Provee_Conta
Escritura
Recibo
Escritura
Retiro
Escritura
Retiros
Escritura
Sub_Grupo
Escritura
Contador
Tipo_Cliente
Escritura
Vinetas_Conf
Escritura
Bancos
Escritura
Bodega
Escritura
Cheques
Escritura
Cierre
Escritura
Clientes
Lectura
Compra
Escritura
Compra_C
Escritura
Compra_Cot
Escritura
Congelar
Escritura
Cotizacion
Escritura
Credito
Escritura
Cuenta
Escritura
Departamento
Lectura
Deposito
Escritura
Detalle_C
Escritura
Detalle_Com
Escritura
Detalle_Coti
Escritura
Detalle_DC
Escritura
Detalle_DP
Escritura
Detalle_V
Escritura
Devolucion_C
Escritura
Devolucion_P
Escritura
Empleado
Lectura
Factura_C
Escritura
Factura_V
Escritura
Gasto_V
Escritura
Grupo
Escritura
Inventario
Escritura
Nivel
Escritura
Orden
Escritura
Orden_Detalle
Escritura
Prestamo
Escritura
Producto
Escritura
Prod_R_Prov
Escritura
Proveedor
Escritura
Provee_Conta
Escritura
Recibo
Escritura
Retiro
Escritura
Retiros
Escritura
Sub_Grupo
Escritura
Tipo_Cliente
Escritura
Vinetas_Conf
Escritura
que realmente deben estar en dichos grupos. Los hallazgos de la auditoria sern
comunicados a la gerencia general y a la gerencia de recursos humanos.
12) Cada perfil tendr un horario definido de acceso a la base de datos y un tiempo
de sesin establecido el cual al vencerse exige que se vuelvan a ingresar las
credenciales del usuario de la sesin.
2. Diagrama Entidad-Relacin
Los datos se estructuran en una o varias tablas donde relacionan uno o varios conjuntos
de datos. Las tablas se pueden modificar fcilmente siguiendo un diseo preestablecido
por los programadores buscando la mejor manera posible de obtener una integridad total
de la informacin.
Las bases de datos con relaciones establecidas entre tablas son ms rpidas y la facilidad
con la que permite transformar el modelo de datos es rpido, la sencillez de la propia
estructura fsica de este tipo de bases de datos y la posibilidad de adaptacin a una serie
de entornos de datos ms amplia.
La base datos de Ferretera Nacional no tiene casi ninguna relacin entre sus tablas,
salvo la relacin que existen entre la tabla Factura_C y la tabla Producto. Por lo que las
consultas a las tablas son lentas. Adems, el usuario, podra eliminar registros sin tener
ningn tipo de restriccin.
3. ndices
Un ndice como bien se sabe, es una estructura de disco asociada con una tabla o una
vista que acelera la recuperacin de filas de la tabla o de la vista. Un ndice contiene
claves generadas a partir de una o varias columnas de la tabla o la vista. Dichas claves
estn almacenadas en una estructura (rbol b) que permite que SQL Server busque de
forma rpida y eficiente la fila o filas asociadas a los valores de cada clave.
Los ndices mal diseados y la falta de ndices constituyen las principales fuentes de
atascos en aplicaciones de base de datos. El diseo eficaz de los ndices tiene gran
importancia para conseguir un buen rendimiento de una base de datos y una aplicacin.
La seleccin de los ndices apropiados para una base de datos y su carga de trabajo es
una compleja operacin que busca el equilibrio entre la velocidad de la consulta y el
costo de actualizacin. Los ndices estrechos, o con pocas columnas en la clave de
ndice, necesitan menos espacio en el disco y son menos susceptibles de provocar
sobrecargas debido a su mantenimiento. Por otra parte, la ventaja de los ndices anchos
es que cubren ms consultas. Puede que tenga que experimentar con distintos diseos
antes de encontrar el ndice ms eficaz. Es posible agregar, modificar y quitar ndices
sin que esto afecte al esquema de la base de datos o al diseo de la aplicacin. Por lo
tanto, no debe dudar en experimentar con ndices diferentes.
A continuacin, se muestra todas las llaves primarias que posee la base de datos, como
se puede observar en la figura, en la cual se ve claramente que solo existen dos ndices,
los cuales corresponden a la tabla FACTURA_C (factura de caja), estos ndices
corresponden a los campos COD_EMPLEADO Y COD_CLIENTE.
Por otra parte, la figura muestra la tabla FACTURA_C, tiene 16 campos, donde se pude
observar claramente que la clase primaria es el campo factura_v. As mismo, se observa
que esta tabla contiene dos campos ndices por medio de los cuales se puede acceder a
la tabla empleado y cliente.
En esta tabla se almacena informacin sobre la factura final, es por ello que existe un
ndice cod_empleado ya que cada factura emitida por un empleado le genera comisin
al empleado. Por otro lado, el cod_cliente se utiliza para verificar compras del cliente.
DETALLE_C
FACTURA_V
CLIENTE
PRODUCTO
TABLA: DETALLE_C
En esta tabla se procede a crear dos ndices por un lado el cod_facrura y por otro el
cod_producto), con el fin de optimizar las consultas en estas dos tablas. A continuacin,
la figura muestra el script para la creacin de estos ndices.
TABLA FACTURA_V
La figura muestra la estructura de la tabla FACTURA_V, la cual muestra los campos de
la misma, as mismo, se observa que no tiene ningn campo ndice. Por lo que se
procede a crearlos.
TABLA PRODCUTOS
4.
4.
4.
Optimizacin de Consultas
Los ndices bien diseados pueden reducir las operaciones de E/S de disco y consumen
menos recursos del sistema, con lo que mejoran el rendimiento de la consulta. Los
ndices pueden ser tiles para diversas consultas que contienen instrucciones SELECT,
UPDATE, DELETE o MERGE. Cuando se ejecuta la consulta, el optimizador de
consultas evala cada mtodo disponible para recuperar datos y selecciona el mtodo
ms eficiente. El mtodo puede ser un recorrido de la tabla o puede ser recorrer uno o
ms ndices si existen.
A continuacin, se explica el antes y despus de algunos de los procedimientos ms
importantes
Procedure Cliente_Venta
ANTES
FOR SELECT CLIENTES.cod_cliente,factura_c.nombre,
DETALLE_C.cod_produc,DETALLE_C.descripcion,detalle_c.cantidad,
DETALLE_C.precio,DETALLE_C.descuento,DETALLE_C.impuesto,
DETALLE_C.total,detalle_c.precio_compra,factura_C.cod_factv,
factura_c.total,detalle_c.cantidad*detalle_c.precio_compra as toti,
factura_c.fecha
FROM factura_c, clientes,detalle_c
where
factura_c.cod_cliente=clientes.cod_cliente
factura_c.cod_factv=detalle_c.cod_factc
and
factura_c.fecha>=:fecha1
and
and
END
DESPUES
SELECT CLIENTES.cod_cliente,factura_c.nombre,
DETALLE_C.cod_produc,DETALLE_C.descripcion,detalle_c.cantidad,
DETALLE_C.precio,DETALLE_C.descuento,DETALLE_C.impuesto,
DETALLE_C.total,detalle_c.precio_compra,factura_C.cod_factv,
factura_c.total,detalle_c.cantidad*detalle_c.precio_compra as toti,
factura_c.fecha,sum(factura_c.descuento),sum(factura_C.impuesto),sum(factura_
C.total)
FROM
factura_c inner join DETALLE_C on factura_c.cod_factv=detalle_c.cod_factc
inner join clientes on factura_c.cod_cliente=clientes.cod_cliente
group by
CLIENTES.cod_cliente,factura_c.nombre,
DETALLE_C.cod_produc,DETALLE_C.descripcion,detalle_c.cantidad,
DETALLE_C.precio,DETALLE_C.descuento,DETALLE_C.impuesto,
DETALLE_C.total,detalle_c.precio_compra,factura_C.cod_factv,
factura_c.total,detalle_c.cantidad,detalle_c.precio_compra,
factura_c.fecha
El Procedimiento de Clientes Ventas es una de los mas utilizado ya que muestra las
ventas agrupadas por clientes, actualmente se tarda Aprox
relaciona las tablas por un producto cruz y despus por medio del where relaciona la
informacin.
La sugerencia es aplicar Inner Join y Group by, con estas mejoras el procedimiento
almacenado tiene un tiempo de ejecucin aprox 0.026s reduciendo el tiempo en un 42%
Procedure EMP_Venta
ANTES
BEGIN
FOR
SELECT
EMPLEADO.cod_empleado,EMPLEADO.nombre,EMPLEADO.apellido,
DETALLE_C.cod_produc,DETALLE_C.descripcion,detalle_c.cantidad,
DETALLE_C.precio,DETALLE_C.descuento,DETALLE_C.impuesto,
DETALLE_C.total,detalle_c.precio_compra,factura_C.cod_factv,
factura_c.total,detalle_c.cantidad*detalle_c.precio_compra as toti,
factura_c.fecha
/* Procedure body */
SUSPEND;
END
END^
DESPUES
SELECT EMPLEADO.cod_empleado,EMPLEADO.nombre,EMPLEADO.apellido,
DETALLE_C.cod_produc,DETALLE_C.descripcion,detalle_c.cantidad,
DETALLE_C.precio,DETALLE_C.descuento,DETALLE_C.impuesto,
DETALLE_C.total,detalle_c.precio_compra,factura_C.cod_factv,
factura_c.total,detalle_c.cantidad*detalle_c.precio_compra as toti,
factura_c.fecha,sum(factura_c.descuento),sum(factura_C.impuesto),sum(factura_
C.total)
FROM
factura_c inner join DETALLE_C on factura_c.cod_factv=detalle_c.cod_factc
inner join EMPLEADO on factura_c.cod_empleado=EMPLEADO.cod_empleado
GROUP BY
EMPLEADO.cod_empleado,EMPLEADO.nombre,EMPLEADO.apellido,
DETALLE_C.cod_produc,DETALLE_C.descripcion,detalle_c.cantidad,
DETALLE_C.precio,DETALLE_C.descuento,DETALLE_C.impuesto,
DETALLE_C.total,detalle_c.precio_compra,factura_C.cod_factv,
factura_c.total,detalle_c.cantidad,detalle_c.precio_compra,
factura_c.fecha
order by empleado.cod_empleado
Procedure PROV_PROD
ANTES
select proveedor.cod_proveedor,proveedor.nombre_proveedor
,producto.cod_producto,producto.descripcion_larga
,inventario.p_mayorista ,inventario.p_clave
,INVENTARIO.p_venta,INVENTARIO.cantidad
from proveedor,prod_r_prov,producto,inventario
where proveedor.cod_proveedor=prod_r_prov.cod_proveedor
and prod_r_prov.cod_producto=producto.cod_producto
and producto.cod_producto=inventario.cod_producto
order by proveedor.cod_proveedor,producto.cod_producto
DESPUES
select proveedor.cod_proveedor,proveedor.nombre_proveedor
,producto.cod_producto,producto.descripcion_larga
,inventario.p_mayorista ,inventario.p_clave
,INVENTARIO.p_venta,INVENTARIO.cantidad
from
proveedor
INNER
join
prod_r_prov
ON
proveedor.cod_proveedor=prod_r_prov.cod_proveedor
INNER JOIN producto ON prod_r_prov.cod_producto=producto.cod_producto
INNER JOIN
inventario
ON producto.cod_producto=inventario.cod_producto
order by proveedor.cod_proveedor,producto.cod_producto
relaciona las tablas por un producto cruz y despus por medio del where relacionar la
informacin.
La sugerencia es aplicar Inner Join y Group by, con estas mejoras el procedimiento
almacenado tiene un tiempo de ejecucin aprox 0.088s, reduc
de
herramientas
de
Attachments
La tercera pestaa es attachments . Puede abrir esta ficha directamente a saltar a ese
punto haciendo clic en uno de los registros en Aggregated performance statistics .
Transactions
Pestaa Transactions muestra las transacciones activas en el momento en que se
tom la instantnea .
Statements
La pestaa Statements se presentan los mensajes activos en el momento de la
instantnea: si tiene que coger todas las declaraciones o FBPerfMon, FBScanner deben
utilizarse (todas estas herramientas forman parte del paquete de optimizacin de
IBSurgeon ) .
Por tanto, el sistema de bases de datos debe realizar con anticipacin acciones que
garanticen que las propiedades de atomicidad y durabilidad de las transacciones, se
preservan a pesar de tales fallos. Una parte integral de un sistema de bases de datos es
un esquema de recuperacin, el cual es responsable de la restauracin de la base de
datos al estado consistente previo al fallo. El esquema de recuperacin tambin debe
proporcionar alta disponibilidad; esto es, debe minimizar el tiempo durante el que la
base de datos no se puede usar despus de un fallo.
Los sistemas de recuperacin de informacin tienen mucho en comn con los sistemas
de bases de datos, en especial, el almacenamiento y la recuperacin de los datos del
almacenamiento secundario.
El campo de la recuperacin de informacin se ha desarrollado en paralelo con el
campo de las bases de datos. En el modelo tradicional usado en el campo de la
recuperacin de informacin, sta se organiza en documentos, dando por supuesto que
existe un gran nmero de documentos. Los datos contenidos en los documentos no estn
estructurados, no tienen ningn esquema asociado. El proceso de recuperacin de
informacin consiste en localizar los documentos importantes, de acuerdo con los datos
suministrados por el usuario, como las palabras clave o los documentos de ejemplo.
En un sistema pueden producirse varios tipos de fallos, cada uno de los cuales requiere
un tratamiento diferente. El tipo de fallo ms fcil de tratar es el que no conduce a una
prdida de informacin en el sistema. Los fallos ms difciles de tratar son aquellos que
provocan una prdida de informacin.
Tipos de fallos:
Fallo en la transaccin.
Hay dos tipos de errores que pueden hacer que una transaccin falle:
Error lgico. La transaccin no puede continuar con su ejecucin normal a
causa de alguna condicin interna, como una entrada incorrecta, datos no
encontrados, desbordamiento o exceso del lmite de recursos.
Error del sistema. El sistema se encuentra en un estado no deseado (por
ejemplo, de interbloqueo) como consecuencia del cual una transaccin no puede
continuar con su ejecucin normal. La transaccin, sin embargo, se puede volver
a ejecutar ms tarde.
Fallo de disco. Un bloque del disco pierde su contenido como resultado de una
colisin de la cabeza lectora, o de un fallo durante una operacin de
transferencia de datos. Las copias de los datos que se encuentran en otros discos
o en archivos de seguridad en medios de almacenamiento secundarios, como
cintas, se utilizan para recuperarse del fallo.
el backup completo,
el backup incremental
y el backup diferencial.
Backups incrementales
Una operacin de backup incremental slo copia los datos que han variado desde la
ltima operacin de backup de cualquier tipo. Se suele utilizar la hora y fecha de
modificacin estampada en los archivos, comparndola con la hora y fecha del ltimo
backup. Las aplicaciones de backup identifican y registran la fecha y hora de realizacin
de las operaciones de backup para identificar los archivos modificados desde esas
operaciones.
Como un backup incremental slo copia los datos a partir del ltimo backup de
cualquier tipo, se puede ejecutar tantas veces como se desee, pues slo guarda los
cambios ms recientes. La ventaja de un backup incremental es que copia una menor
cantidad de datos que un backup completo. Por ello, esas operaciones se realizan ms
deprisa y exigen menos espacio para almacenar el backup.
Backups diferenciales
Una operacin de backup diferencial es similar a un backup incremental la primera vez
que se lleva a cabo, pues copiar todos los datos que hayan cambiado desde el backup
anterior. Sin embargo, cada vez que se vuelva a ejecutar, seguir copiando todos los
datos que hayan cambiado desde el anterior completo. Por lo tanto, en las operaciones
subsiguientes almacenar ms datos que un backup incremental, aunque normalmente
muchos menos que un backup completo. Adems, la ejecucin de los backups
diferenciales requiere ms espacio y tiempo que la de los backups incrementales, pero
menos que la de los backup completos.
Cada tipo de backup funciona de forma diferente. Hay que realizar un backup completo
al menos una vez. Despus, se puede realizar otro backup completo, incremental o
diferencial. El primer backup parcial realizado, ya sea diferencial o incremental,
guardar los mismos datos. En la tercera operacin de backup, los datos copiados con
un backup incremental se limitan a los cambios desde el ltimo incremental. En cambio,
el tercer backup con backup diferencial copia todos los cambios desde el primer backup
completo, que es el backup 1.
Completo diario
Completo semanal + Diferencial diario
Completo semanal + Incremental diario
Espacio de soporte necesario para un mes (20 TB @ tasa de variacin diaria del 5%)
Soportes necesarios para la recuperacin
Completo diario (das laborables)
Espacio para 22 backups diarios completos (22 * 20 TB) = 440.00 TB
Backup ms reciente solamente
Completo (semanal) + Diferencial (das laborables)
Completos, ms el diferencial ms reciente desde el ltimo completo
(5 * 20 TB) + (22 * 5%* 20 TB) = 124.23 TB
Completo ms reciente + diferencial ms reciente
Completo (semanal) + Incremental (das laborables)
Completos, ms todos los incrementales desde el ltimo completo semanal
(5 * 20 TB) + (22 * 5% * 20 TB) = 122.00 TB
Completo ms reciente + todos los incrementales desde el ltimo completo
Como se puede observar en la tabla, lo que ms cantidad de espacio y ms tiempo
requiere es realizar un backup completo diario. Sin embargo, se dispone de ms copias
totales de los datos, y para realizar una operacin de restauracin hay que recurrir a
menos soportes.
Alternativamente, la realizacin de un backup completo semanal combinado con la
ejecucin de backups incrementales diarios ofrece la mayor rapidez de realizacin de
los backups en das laborables y utiliza la menor cantidad de espacio de
almacenamiento. Sin embargo, se dispone de menos copias de los datos y la
restauracin lleva ms tiempo, pues es posible que haya que utilizar hasta seis juegos de
soportes para recuperar la informacin necesaria. Si se necesitan datos de la copia de
seguridad de un mircoles, hay que recurrir a los juegos de soportes que contienen el
backup completo del domingo, ms los juegos de soportes que contienen los backups
incrementales del lunes, el martes y el mircoles. Esto puede prolongar
espectacularmente los tiempos de recuperacin, y exige que cada juego de soportes
funcione correctamente; un fallo en un juego de backup puede comprometer toda la
restauracin.
GBAK es capaz de realizar una copia de seguridad mientras la base de datos se est
ejecutando. No hay necesidad de cerrar la base de datos durante una copia de seguridad
GBAK. GBAK crear una instantnea coherente de la base de datos en el momento en
que comienza a funcionar.
Sin embargo puede haber una caida de la performance durante la copia de seguridad,
por lo que es una buena idea hacer copias de seguridad por la noche.GBAK visita todas
las pginas de la base de datos, por lo que tambin llevar a cabo una recoleccin de
basura en la base de datos.
GBAK no solamente hace un backup, tambin mejora el rendimiento de la Base de
Datos restaurada. O sea que al ejecutar GBAK:
Realizas el backup
Al restaurar tu backup, tambin usando para ello el programa GBAK obtienes:
Una Base de Datos sin basura
Unos ndices perfectos
Un menor tamao de la Base de Datos
Mayor velocidad
Sintaxis general
gbak -user -password
PARA BAKUPS:
Base_Datos: Nombre de la base de datos sobre la que desea una copia de seguridad
Fichero_Backup: Nombre del archivo de copia de seguridad.
La extensin normal del archivo de copia de seguridad. FBK de Firebird y Gbk para
InterBase.
Slo SYSDBA o el propietario de la base puede realizar una copia de seguridad. Para
bases de datos de varios archivos, slo se especifica el nombre del primer archivo que
tiene el mismo nombre de base de datos.
PARA RESTAURAR:
gbak -user -password Fichero_Backup Base_Datos
-b[ackup_database]
-co[nvert]
-e[xpand]
-fa[ctor] n
-g[arbage collect]
-ig[nore]
-l[imbo]
-m[etadata]
metadatos (esquema).
-nt
-t[ransportable]
Restore Options
-bu[ffers]
-c[reate_database]
-fix_fss_d[ata]
-fix_fss_m[etadata]
-i[nactive]
-k[ill]
-m[etadata]
-mo[de] read_write
-mo[de] read_only
-n[o_validity]
-o[ne_at_a_time]
-p[age_size]
-r[eplace_database]
es 1024.
Restaura a travs de una base de datos existente. Esto slo
puede ser realizado por SYSDBA o el propietario de la base
de datos que se sobrescribe. NO restaurar sobre una base de
-rep[lace_database]
-r[ecreate_database]
2.0]
[Firebird 2.0] Restaura sobre una base de datos
o[verwrite]
-use_[all_space]
Ejemplos
Un Backup comun
Un Restore comn
gbak -c -v
-user
SYSDBA
dbserver:/db/warehouse2.fdb
-password
masterkey
c:\backups\warehouse.fbk
gbak -c
-r -v
-user
SYSDBA -password
masterkey
c:\backups\warehouse.fbk
dbserver:/db/warehouse.fdb
Backups en Multiples-ficheros
Restauracin de una base de datos de varios archivos
crecer
sin
lmite
tomar
el
resto.
El tamao puede ser dado en bytes (8192), kilobytes (1024k), megabytes (5m), o
gigabytes
(2
g)
Restauracin a partir de una copia de seguridad de varios archivos a una base de datos
de varios archivos
gbak -c [options] ... ...
Para recuperar una base de datos corrupta se debe hacer esto
1.- gfix -user SYSDBA -password masterkey nombre_base_datos.gdb -mend full -ignore
Esto hace a la base de datos apta para sacar un respaldo con gbak , esto es
para tener una copia de seguridad de la base de datos
2.- gfix -user SYSDBA -password masterkey nombre_base_datos.gdb -v -f
EJEMPLO
Opcin 1. Copiarla totalmente. Con todos sus metadatos y todos sus datos
Conclusiones
2. Revisar las Base de Datos para darle un mantenimiento a los registros que tienen
ms de 5 aos, trasladarlos a una Base Histrica, de esta manera la base de datos
actual tendra un mejor rendimiento.
3. Creacin de Llaves forneas junto con los ndices antes mencionados
4. Redisear los procedimientos almacenando, reemplazando los productos cruz
por inner join, (se demostr que mejoran los tiempos hasta un 70%).
VIII. BIBLIOGRAFA
SILBERSCHATZ, A., HENRY F., K., & S., S. (2006). Fundamentos de Base de Datos.
Madrid: McGraw-Hill.
Wheatman, J. (2002). El monitoreo de la actividad en bases de., (pg. 8).