Sei sulla pagina 1di 23

BASE DE DATOS

CONCEPTOS GENERALES
Que es una Base de Datos:

Una base de datos es una coleccin de informacin, accedida y administrada por un SGBD
(Sistema Gestor de Bases de Datos) o en ingls DBMS (Database Manager System).

Es un conjunto de datos pertenecientes a un mismo contexto y almacenados


sistemticamente para su posterior uso.

Una base de datos es una coleccin de informacin organizada de forma


que un programa de ordenador pueda seleccionar rpidamente los
fragmentos de datos que necesite. Una base de datos es un sistema de
archivos electrnico.
Las bases de datos tradicionales se organizan por campos, registros y
archivos.
Un campo es una pieza nica de informacin;
un registro es un sistema completo de campos;
y un archivo es una coleccin de registros.
Por ejemplo, una gua de telfono es anloga a un archivo. Contiene una lista
de registros, cada uno de los cuales consiste en tres campos: nombre,
direccin, y nmero de telfono.

Sistema de Base de Datos:


Es un sistema de software que permite a sus usuarios crear, mantener y
controlar el acceso a los datos.

Sistema Gestor de Base de Datos (SGBD - DBMS):


Un sistema gestor de bases de datos (SGBD) consiste en una coleccin de
datos interrelacionados y un conjunto de programas para acceder a dichos
datos. La coleccin de datos, normalmente denominada base de datos,
contiene informacin relevante para una empresa. El objetivo principal de un
SGBD es proporcionar una forma de almacenar y recuperar la informacin de
una base de datos de manera que sea tanto prctica como eficiente.
Fundamentos de Bases de Datos Cuarta Edicin
Abraham Silberschatz Henry F. Korth S. Sudarshan

La administracin de bases de datos se realiza con un sistema llamado DBMS


(Database management system [Sistema de administracin de bases de
datos]). El DBMS es un conjunto de servicios (aplicaciones de software) para
administrar bases de datos, que permite:

un fcil acceso a los datos


el acceso a la informacin por parte de mltiples usuarios
la manipulacin de los datos encontrados en la base de datos (insertar,
eliminar, editar)

Administrador de Base de Datos:


Persona administradora de la Base de Datos
Atribuciones:
Definicin del esquema
Definicin de la estructura y del mtodo de acceso
Modificacin del esquema y de la organizacin fsica
Concesin de autorizacin para el acceso a los datos
Mantenimiento rutinario

Es la persona responsable de los aspectos ambientales de una base de datos.


En general esto incluye lo siguiente:

Recuperabilidad - Crear y probar Respaldos


Integridad - Verificar o ayudar a la verificacin en la integridad de datos
Seguridad - Definir o implementar controles de acceso a los datos
Disponibilidad - Asegurarse del mayor tiempo de encendido
Desempeo - Asegurarse del mximo desempeo incluso con las
limitaciones
Desarrollo y soporte a pruebas - Ayudar a los programadores e
ingenieros a utilizar eficientemente la base de datos.

El diseo lgico y fsico de las bases de datos a pesar de no ser obligaciones de


un administrador de bases de datos, es a veces parte del trabajo. Esas
funciones por lo general estn asignadas a los analistas de bases de datos o a
los diseadores de bases de datos.

Porque utilizar una Base de Datos:


Una base de datos proporciona a los usuarios el acceso a datos, que pueden
visualizar, ingresar o actualizar, en concordancia con los derechos de acceso
que se les hayan otorgado. Se convierte ms til a medida que la cantidad de
datos almacenados crece.
Una base de datos puede ser local, es decir que puede utilizarla slo un usuario
en un equipo, o puede ser distribuida, es decir que la informacin se almacena
en equipos remotos y se puede acceder a ella a travs de una red.
La principal ventaja de utilizar bases de datos es que mltiples usuarios
pueden acceder a ellas al mismo tiempo.

El Modelo Entidad Relacin


Es una tcnica que permite extraer la informacin involucrada en una
organizacin y presentarla grficamente en trminos de objetos y sus
relaciones.
Entidad: Es un objeto del mundo real que es claramente distinguible de otros
objetos. Una entidad esta descrita a travs de sus atributos (caractersticas).
Relacin: Es la asociacin entre dos o ms entidades.
____________
El modelo est basado en una percepcin del mundo real que consta de una
coleccin de objetos bsicos llamados entidades y de relaciones entre ellos.

Una entidad es una cosa u objeto en el mundo real que es distinguible


de otros objetos.
Las entidades se describen en una base de datos mediante un conjunto
de atributos.

_______________

Una relacin es una asociacin entre varias entidades.


La estructura lgica general de una base de datos se puede expresar
grficamente mediante un diagrama ER, que consta de los siguientes
componentes:
Rectngulos, que representan conjuntos de entidades.
Elipses, que representan atributos.
Rombos, que representan relaciones entre conjuntos de entidades.
Lneas, que unen los atributos con los conjuntos de entidades y los
conjuntos de entidades con las relaciones.
Cada componente se etiqueta con la entidad o relacin que representa.

Adems de entidades y relaciones, el modelo E-R representa ciertas


restricciones que los contenidos de la base de datos deben cumplir. Una
restriccin importante es la correspondencia de cardinalidades, que expresa el
nmero de entidades con las que otra entidad se puede asociar a travs de un
conjunto de relaciones.
Fundamentos de Bases de Datos Cuarta Edicin

Abraham Silberschatz Henry F. Korth S. Sudarshan

Restricciones
Son reglas que deben mantener los datos almacenados en la base de datos. No
se deben quebrantar a menos que tenga otra relacin de una tabla de uno a
muchos.
Correspondencia de cardinalidades
Dado un conjunto de relaciones en el que participan dos o ms conjuntos de
entidades, la correspondencia de cardinalidad indica el nmero de entidades
con las que puede estar relacionada una entidad dada.

Uno a Uno: Una entidad de A se relaciona nicamente con una entidad


en B y viceversa.
Uno a varios: Una entidad en A se relaciona con cero o muchas
entidades en B. Pero una entidad en B se relaciona con una nica
entidad en A.
Varios a Uno: Una entidad en A se relaciona exclusivamente con una
entidad en B. Pero una entidad en B se puede relacionar con 0 o muchas
entidades en A.
Varios a Varios: Una entidad en A se puede relacionar con 0 o muchas
entidades en B y viceversa.

Restricciones de participacin
Dado un conjunto de relaciones R en el cual participa un conjunto de entidades
A, dicha participacin puede ser de dos tipos:
Total: Cuando cada entidad en A participa en al menos una relacin de R.

Parcial: Cuando al menos una entidad en A NO participa en alguna relacin de


R.
Claves
Es un subconjunto del conjunto de atributos comunes en una coleccin de
entidades, que permite identificar unvocamente cada una de las entidades
pertenecientes a dicha coleccin. Asimismo, permiten distinguir entre s las
relaciones de un conjunto de relaciones.
Dentro de los conjuntos de entidades existen los siguientes tipos de claves:
Superclave: Es un subconjunto de atributos que permite distinguir
unvocamente cada una de las entidades de un conjunto de entidades. Si
se aade un atributo al anterior subconjunto, el resultado seguir siendo
una superclave.
Clave candidata: Dada una superclave, si sta deja de serlo quitando
nicamente uno de los atributos que la componen, entonces sta es una
clave candidata.
Clave primaria: Es una clave candidata, elegida por el diseador de la
base de datos, para identificar unvocamente las entidades en un
conjunto de entidades.
Pasos para crear un Modelo Entidad Relacion

Definicin de requerimientos
Diseo conceptual
Diseo lgico de la base de datos

Reglas para crear el Modelo

Las entidades se representan a travs de rectngulos


Las relaciones se representa a travs de lneas

Opcionalidad:
Es el tipo de relacin que describe si una entidad est relacionada de manera
obligatoria con otra entidad.
1
0

Obligatoria
Opcional

Atomicidad de los Datos


No se pueden dividir mas
Propiedades de las relaciones
Estipulan que:
No existen tuplas (filas) repetidas.
Las filas no estn ordenadas.
Los atributos no estn ordenados.
Todos los valores de los atributos son atmicos.
Llave Primaria (Primary key)
Es nico.

No pueden existir valores vacios.

ARQUITECTURA DE UN SISTEMA DE BASE DE DATOS


Niveles de Abstraccin de la arquitectura:
Abstraccin de datos Para que el sistema sea til debe recuperar los datos
eficientemente. Esta preocupacin ha conducido al diseo de estructuras de
datos complejas para la representacin de los datos en la base de datos. Como
muchos usuarios de sistemas de bases de datos no estn familiarizados con
computadores, los desarrolladores esconden la complejidad a los usuarios a
travs de varios niveles de abstraccin para simplificar la interaccin de los
usuarios con el sistema:
Nivel fsico: El nivel ms bajo de abstraccin describe cmo se almacenan
realmente los datos. En el nivel fsico se describen en detalle las estructuras de
datos complejas de bajo nivel.
Nivel lgico: El siguiente nivel ms alto de abstraccin describe qu datos se
almacenan en la base de datos y qu relaciones existen entre esos datos. La base
de datos completa se describe as en trminos de un nmero pequeo de
estructuras relativamente simples. Aunque la implementacin de estructuras
simples en el nivel lgico puede involucrar estructuras complejas del nivel fsico,
los usuarios del nivel lgico no necesitan preocuparse de esta complejidad. Los
administradores de bases de datos, que deben decidir la informacin que se
mantiene en la base de datos, usan el nivel lgico de abstraccin.
Nivel de vistas: El nivel ms alto de abstraccin describe slo parte de la base
de datos completa. A pesar del uso de estructuras ms simples en el nivel lgico,
queda algo de complejidad, debido a la variedad de informacin almacenada en
una gran base de datos. Muchos usuarios del sistema de base de datos no
necesitan toda esta informacin. En su lugar, tales usuarios necesitan acceder slo
a una parte de la base de datos. Para que su interaccin con el sistema se
simplifique, se define la abstraccin del nivel de vistas. El sistema puede
proporcionar muchas vistas para la misma base de datos.

SUBLENGUAJES DE DATOS
Un sistema de bases de datos proporciona un lenguaje de definicin de
datos para especificar el esquema de la base de datos y un lenguaje de
manipulacin de datos para expresar las consultas a la base de datos y las
modificaciones.
Un modelo de datos es un lenguaje que, tpicamente, tiene dos sublenguajes:

Un Lenguaje de Definicin de Datos o DDL (Data definition Language),


orientado a describir de una forma abstracta las estructuras de datos y
las restricciones de integridad.
Un Lenguaje de Manipulacin de Datos o DML (Data Manipulation
Language), orientado a describir las operaciones de manipulacin de los
datos.
A la parte del DML orientada a la recuperacin de datos, usualmente se
le llama Lenguaje de Consulta o QL (Query Language).

DDL (DATA DEFINITION LANGUAJE):


Es el conjunto de sentencias de SQL que permite la creacin, la alteracin y
supresin de objetos en una DB. Sus tres principales sentencias son
Create: Sirve para crear objetos en una DB.
Alter
Drop (botar)
Ejemplo:
Create table Nombre_de_tabla
(colum1 tipo_dato (longitud) restricciones,

colum1 tipo_dato (longitud) restricciones, , column)


alter table nombre_tabla
add colum Nombre_campo
Drop table nombre_tabla
DML (DATA MANIPULATION LANGUAJE):
Es el que nos permite elaborar instrucciones (o programas) con las cuales
podemos recuperar informacin de datos q estn almacenados, esto a partir de
condiciones definidas en una seleccin de datos.

Select
Insert
Delete
Update

DICCIONARIO DE DATOS
Un diccionario de datos es un conjunto de metadatos que contiene las
caractersticas lgicas de los datos que se van a utilizar en el sistema que se
programa, incluyendo nombre, descripcin, alias, contenido y organizacin.
Estos diccionarios se desarrollan durante el anlisis de flujo de datos y ayuda a los
analistas que participan en la determinacin de los requerimientos del sistema, su
contenido tambin se emplea durante el diseo del proyecto.

Normalizacin.
El proceso de normalizacin de bases de datos consiste en aplicar una serie de
reglas a las relaciones obtenidas tras el paso del modelo entidad-relacin al
modelo relacional.
Las bases de datos relacionales se normalizan para:
Evitar la redundancia de los datos.
Evitar problemas de actualizacin de los datos en las tablas.
Proteger la integridad de los datos.
Grados de normalizacin

Existen bsicamente tres niveles de normalizacin: Primera Forma Normal


(1NF), Segunda forma Normal (2NF) y Tercera Forma Normal (3NF). Cada una
de estas formas tiene sus propias reglas. Cuando una base de datos se
conforma a un nivel, se considera normalizada a esa forma de normalizacin.
Por ejemplo, supongamos que su base de datos cumple con todas las reglas del
segundo nivel de normalizacin. Se considera que est en la Segunda forma
Normal. No siempre es una buena idea tener una base de datos conformada en
el nivel ms alto de normalizacin. Puede llevar a un nivel de complejidad que
pudiera ser evitado si estuviera en un nivel ms bajo de normalizacin.
Primera Forma Normal (1FN)
La regla de la Primera Forma Normal establece que las columnas (o atributos)
repetidas deben eliminarse y colocarse en entidades separadas. sta es una
regla muy fcil de seguir. Observe el esquema de la tabla Clientes de la base
de datos.
Clientes
ID Cliente
Nombre
Apellidos
Nombre_Producto1
Costo_Producto1
Imagen_Producto1
Nombre_Producto2
Costo_Producto2
Imagen_Producto2
Fecha_Pedido
Cantidad_Pedido
Nombre Cia Envios
La tabla tiene varias columnas repetidas. stas se refieren principalmente a los
productos. De acuerdo con la regla, debe eliminar las columnas repetidas y
crearles su propia tabla.
Eliminacin de columnas repetidas en una base de datos
Clientes
ID_Clientes
Nombre
Apellidos
Direccin
Numero_Pedido
Fecha_Pedido
Cantidad_Pedido
Clave_Cia_Envios

Pedidos
Nombre_Productos
Costo_Producto
Imagen_Producto

Nombre_Ci_ Envios
Ahora tiene dos tablas. Pero todava hay un problema. No hay forma de
relacionar los datos de la tabla original con los de la nueva tabla. Para hacerlo,
debe aadir un campo clave a la segunda tabla de forma que se establezca la
relacin. Aada a la tabla Productos una clave primaria que se llame
ID_Producto y aada una clave a la tabla Clientes que la relacione con la tabla
Productos. El campo ID_Producto es el candidato ideal.
Primera Forma Normal
Clientes
ID_Productos
ID_Clientes
Nombre
Apellidos
Direccin
Numero_Pedido
Fecha_Pedido
Cantidad_Pedido
Clave_Cia_Envios
Nombre_Ci_ Envios

Pedidos
ID_Productos
Nombre_Productos
Costo_Producto
Imagen_Producto

Segunda Forma Normal


La regla de la Segunda Forma Normal establece que todas las dependencias
parciales se deben eliminar y separar dentro de sus propias tablas. Una
dependencia parcial es un trmino que describe a aquellos datos que no
dependen de la clave de la tabla para identificarlos. En la base de datos de
muestra, la informacin de pedidos est en cada uno de los registros. Sera
mucho ms simple utilizar nicamente el nmero del pedido. El resto de la
informacin podra residir en su propia tabla. Una vez que haya organizado la
informacin de pedidos.
Eliminacin de las dependencias parciales -Segunda Forma Normal
Clientes

Pedidos

Productos

ID_Productos
ID_Clientes
Nombre
Apellidos
Direccin
Numero_Pedido
Nombre_Cia_Envios

ID_Productos
Nombre_Productos
Cantidad_Pedido

ID_Producto
Fecha_Compra
Costos_Productos
Imagen_Producto

Tercera Forma Normal


La regla de la Tercera Forma Normal seala que hay que eliminar y separar
cualquier dato que no sea clave y no dependan de la llave primaria. El valor de
esta columna debe depender de la clave. Todos los valores deben identificarse
nicamente por la clave. En la base de datos de muestra, la tabla Clientes
contiene la columna Nombre_Cia_Envios, la cual no se identifica nicamente
por la clave. Podra separar estos datos de la tabla y ponerlos en una tabla
aparte.
Eliminacin de los datos que no son claves para la Tercera Forma Normal
Clientes
Productos
PedidoMaestro
PedidoDetallado
Cias_Envios
ID_cliente
ID_Producto
ID_Pedido
ID_PedidoDetallado
ID_Cia_Envios
ID_Producto
Nombre_Producto Fecha_Pedido
ID_Pedido
Nombre_Cia_Envios.
Numero_Pedido
Costos_Productos Cantidad_Pedidos Fecha_Pedido
ID_Cia_Envios
Foto_Producto
Cantidad_Pedido
Nombre
Apellidos
Direccin

Arquitectura de los Sistemas de Base de Datos


El objetivo de la arquitectura de tres niveles es el de separar los programas de
aplicacin de la base de datos fsica. En esta arquitectura, el esquema de una
base de datos se define en tres niveles de abstraccin distintos:
1. En el nivel interno se describe la estructura fsica de la base de datos
mediante un esquema interno. Este esquema se especifica mediante un
modelo fsico y describe todos los detalles para el almacenamiento de la
base de datos, as como los mtodos de acceso.
2. En el nivel conceptual se describe la estructura de toda la base de
datos para una comunidad de usuarios (todos los de una empresa u
organizacin), mediante un esquema conceptual. Este esquema oculta
los detalles de las estructuras de almacenamiento y se concentra en
describir entidades, atributos, relaciones, operaciones de los usuarios y
restricciones. En este nivel se puede utilizar un modelo conceptual o un
modelo lgico para especificar el esquema.
3. En el nivel externo se describen varios esquemas externos o vistas de
usuario. Cada esquema externo describe la parte de la base de datos
que interesa a un grupo de usuarios determinado y oculta a ese grupo el

resto de la base de datos. En este nivel se puede utilizar un modelo


conceptual o un modelo lgico para especificar los esquemas.

REGLAS DE CODD
Determinan la fidelidad de un Sistema Relacional al Modelo Relacional.

Regla 0: el sistema debe ser relacional, base de datos y administrador de sistema. Ese
sistema debe utilizar sus facilidades relacionales (exclusivamente) para manejar la base de
datos.

Regla 1: la regla de la informacin, toda la informacin en la base de datos es


representada unidireccionalmente, por valores en posiciones de las columnas dentro de filas
de tablas. Toda la informacin en una base de datos relacional se representa explcitamente en
el nivel lgico exactamente de una manera: con valores en tablas.

Regla 2: la regla del acceso garantizado, todos los datos deben ser accesibles sin
ambigedad. Esta regla es esencialmente una nueva exposicin del requisito fundamental para
las llaves primarias. Dice que cada valor escalar individual en la base de datos debe ser
lgicamente direccionable especificando el nombre de la tabla, la columna que lo contiene y la
llave primaria.

Regla 3: tratamiento sistemtico de valores nulos, el sistema de gestin de base de


datos debe permitir que haya campos nulos. Debe tener una representacin de la "informacin
que falta y de la informacin inaplicable" que es sistemtica, distinto de todos los valores
regulares.

Regla 4: catlogo dinmico en lnea basado en el modelo relacional, el sistema debe


soportar un catlogo en lnea, el catlogo relacional debe ser accesible a los usuarios
autorizados. Es decir, los usuarios deben poder tener acceso a la estructura de la base de
datos (catlogo).

Regla 5: la regla comprensiva del sublenguaje de los datos, el sistema debe soportar
por lo menos un lenguaje relacional que;
1.

Tenga una sintaxis lineal.

2.

Puede ser utilizado recprocamente y dentro de programas de uso.

3.

Soporte operaciones de definicin de datos, operaciones de manipulacin de datos


(actualizacin as como la recuperacin), seguridad e integridad y operaciones de
administracin de transacciones.

Regla 6: regla de actualizacin, todas las vistas que son tericamente actualizables
deben ser actualizables por el sistema.

Regla 7: alto nivel de insercin, actualizacin, y cancelacin, el sistema debe soportar


suministrar datos en el mismo tiempo que se inserte, actualiza o est borrando. Esto significa
que los datos se pueden recuperar de una base de datos relacional en los sistemas
construidos de datos de filas mltiples y/o de tablas mltiples.

Regla 8: independencia de datos fsico, los cambios en el nivel fsico (cmo se


almacenan los datos, si en arreglos o en las listas encadenadas los etc.) no debe requerir un
cambio a una solicitud basada en la estructura.

Regla 9: independencia de datos lgica, los cambios al nivel lgico (tablas, columnas,
filas, etctera) no deben requerir un cambio a una solicitud basada en la estructura. La
independencia de datos lgica es ms difcil de lograr que la independencia fsica de datos.

Regla 10: independencia de la integridad, las limitaciones de la integridad se deben


especificar por separado de los programas de la aplicacin y se almacenan en la base de
datos. Debe ser posible cambiar esas limitaciones sin afectar innecesariamente las
aplicaciones existentes.

Regla 11: independencia de la distribucin, la distribucin de las porciones de la base


de datos a las varias localizaciones debe ser invisible a los usuarios de la base de datos. Los
usos existentes deben continuar funcionando con xito:

1.

cuando una versin distribuida del SGBD se introdujo por primera vez

2.

cuando se distribuyen los datos existentes se redistribuyen en todo el sistema.

Regla 12: la regla del de la no subversin, si el sistema proporciona una interfaz de bajo
nivel (de registro a la vez) y luego de que esa interfaz no se pueda utilizar para subvertir el
sistema, por ejemplo: sin pasar por seguridad relacional o limitacin de integridad.

SQL
El lenguaje de consulta estructurado o SQL (por sus siglas en ingls structured query language)
es un lenguaje declarativo de acceso a bases de datos relacionales que permite especificar
diversos tipos de operaciones en stas. Una de sus caractersticas es el manejo del lgebra y
el clculo relacional permitiendo efectuar consultas con el fin de recuperar -de una forma
sencilla- informacin de inters de una base de datos, as como tambin hacer cambios sobre ella.

DDL (DATA DEFINITION LANGUAJE):


Es el conjunto de sentencias de SQL que permite la creacin, la alteracin y
supresin de objetos en una DB. Sus tres principales sentencias son
Create: Sirve para crear objetos en una DB.
Alter
Drop (botar)
Ejemplo:
Create table Nombre_de_tabla
(colum1 tipo_dato (longitud) restricciones,
colum1 tipo_dato (longitud) restricciones, , column)
alter table nombre_tabla
add colum Nombre_campo
Drop table nombre_tabla
DML (DATA MANIPULATION LANGUAJE):
Es el que nos permite elaborar instrucciones (o programas) con las cuales
podemos recuperar informacin de datos q estn almacenados, esto a partir de
condiciones definidas en una seleccin de datos.

Select
Insert
Delete
Update

TRANSACCION
Unidad de ejecucin de un programa que accede y posiblemente actualice
varios elementos de datos se inicia por la ejecucin de un programa de usuario
escrito en un lenguaje de manipulacin de datos de alto nivel o en un lenguaje
de programacin( sql, c,java,pl-sql)

Propiedades de las transacciones para resguardar la integridad de la base


de datos:

Atomicidad:

Consistencia

Aislamiento

Durabilidad

Estados de una Transaccin:

Activa

Parcialmente Comprometida

Comprometida

Fallida

Abortada

Toda transaccin debe cumplir cuatro propiedades ACID:


Atomicidad (Atomicity): es la propiedad que asegura que la operacin
se ha realizado o no, y por lo tanto ante un fallo del sistema no puede
quedar a medias.
Consistencia (Consistency): es la propiedad que asegura que slo se
empieza aquello que se puede acabar. Por lo tanto, se ejecutan aquellas
operaciones que no van a romper la reglas y directrices de integridad de
la base de datos.
Aislamiento (Isolation): es la propiedad que asegura que una operacin
no puede afectar a otras. Esto asegura que la realizacin de dos
transacciones sobre la misma informacin nunca generar ningn tipo
de error.
Permanencia (Durability): es la propiedad que asegura que una vez
realizada la operacin, sta persistir y no se podr deshacer aunque
falle el sistema.

La atomicidad frente a fallos se suele implementar con mecanismos


de journaling, y la proteccin frente a accesos concurrentes
mediante bloqueos en las estructuras afectadas. La serialibilidad viene
garantizada por la atomicidad. La permanencia se suele implementar forzando
a los perifricos encargados de almacenar los cambios a confirmar la completa
y definitiva transmisin de los datos al medio (generalmente, el disco).
En el lenguaje SQL se
denomina COMMIT a aplicar_cambios y ROLLBACK a cancelar_cambios.

ESTADOS DE UNA TRANSACCION

RECUPERACION
PUNTOS DE SINCRONIZACION
La ejecucin de una operacin COMMIT o ROLLBACK establece lo que se conoce como un punto de
sincronizacin. Un punto de sincronizacin representa el lmite entre 2 transacciones consecutivas, de
modo que corresponde al final de una unidad lgica de trabajo, y por tanto al punto ene l cul la BD
est en un estado de consistencia. Las nicas operaciones que establecen un punto de sincronizacin
son COMMIT, ROLLBACK y el inicio de un programa.
Cuando se establece un punto de sincronizacin:

Se comprometen (COMMIT) o se anulan (ROLLBACK) todas las modificaciones realizadas por


el programa desde el punto de sincronizacin anterior;
Se cierran todos los cursores abiertos y se pierde todo lo posicionamiento en la BD;
Se liberan todos los registros bloqueados.
Es importante advertir que COMMIT y ROLLBACK terminan la transaccin, no el programa. En general,
una sola ejecucin del programa incluir una secuencia varias transacciones, efectuadas una tras otra.
Cada operacin COMMIT o ROLLBACK termina una transaccin e inicia la siguiente. Sin embargo, muy
a menudo una ejecucin de un programa corresponder a una sola transaccin; y en esos casos,
muchas veces ser posible codificar ese programa sin proposiciones COMMIT y ROLLBACK explcitas.
PUNTOS DE VERIFICACION

La operacin de recuperacin requiere recorrer todo el registro de la base de


datos. As, el buscar todas las transacciones a las cuales es necesario aplicarles
un UNDO o REDO puede tomar una cantidad de trabajo considerable. Para
reducir este trabajo se pueden poner puntos de verificacin (checkpoints) en el
registro de la base de datos para indicar que en esos puntos la base de datos
est actualizada y consistente. En este caso, un REDO tiene que iniciar desde
un punto de verificacin y un UNDO tiene que regresar al punto de verificacin

ms inmediato anterior. La colocacin de puntos de verificacin se realiza con


las siguientes acciones:
Se escribe un begin_checkpoint en el registro de la base de datos. Se
recolectan todos los datos verificados en la base de datos estable. Se escribe
un fin_de_checkpoint en el registro de la base de datos.

RECUPERACION DEL SISTEMA Y DE LOS MEDIOS DE ALMACENAMIENTO


Examinaremos brevemente que se necesita para recuperarse de una falla global. Tales fallas se
dividen en 2 categoras amplias:

Fallas del Sistema, las cuales afectan a todas las transacciones que se estn realizando pero
no daan fsicamente a la BD. Las fallas del sistema se conocen tambin como cadas suaves.
Fallas de los Medios de Almacenamiento, las cuales si causan daos a la BD, o a una porcin
de ella, y afectan al menos a las transacciones que estn utilizando esa porcin. Las fallas de los
medios de almacenamiento se denominan a veces cadas duras.
FALLA DEL SISTEMA
El punto crtico de una falla del sistema es que se pierde el contenido de la memoria principal. Por
tanto, ya no se conocer el estado preciso de la transaccin que se estuviera realizando en el
momento de la falla; esa transaccin jams se podr completar con xito, por lo cul ser preciso
anularla cuando se reinicie el sistema.
Cada cierto intervalo previamente establecido el sistema establece un punto de revisin de manera
automtica. El establecimiento de un punto de revisin implica:
a)

Grabar fsicamente el contenido de los buffers en la BD fsica;

b)

Y grabar fsicamente un registro de punto de revisin especial en la bitcora fsica.

El registro de punto de revisin incluye una lista de todas las transacciones que se estaban realizando
en el momento de establecerse el punto de revisin. Para comprender la forma como se utiliza esta
informacin deber leerse de la siguiente manera:

Se present una falla en el sistema en el momento tf.


El punto de verificacin ms reciente antes de tf se tom en el momento tv.
Las transacciones de tipo T1 se completaron antes del tiempo tv.
Las transacciones de tipo T2 se iniciaron antes del tiempo tv y se completaron despus del
tiempo tv y antes del tiempo tf.
Las transacciones de tipo T3 tambin se iniciaron antes del tiempo tv pero no se completaron
antes del tiempo tf.
Las transacciones de tipo T4 se iniciaron despus del tiempo tv y se completaron antes del
tiempo tv.
Por ltimo, las transacciones de tipo T5 tambin se iniciaron despus del tiempo tv pero no se
completaron antes del tiempo tf.
Por tanto, ene l momento del reinicio el sistema efecta el siguiente procedimiento a fin de identificar
las transacciones de los tipos T2-T5:
1.

Comenzar con 2 listas de transacciones, la lista ANULAR y la lista REPETIR. Igualar la lista

ANULAR a la lista de todas las transacciones incluidas en el registro de punto de revisin. Dejar vaca
la lista REPETIR.
2.

Examinar la bitcora hacia delante a partir del registro de punto de revisin.

3.

Si se encuentra una entrada de bitcora de iniciar transaccin para la transaccin T, aadir T a

la lista ANULAR.
4.

Si se encuentra una entrada de bitcora de comprender para la transaccin T, pasar esa

transaccin de la lista ANULAR a la lista REPETIR.


5.

Cuando se llegue al final de la bitcora, las listas ANULAR y REPETIR identificarn,

respectivamente, las transacciones de los tipos T3 y T5 y la de los tipos T2 y T4.

Enseguida el sistema revisar la bitcora hacia atrs, anulando todas las transacciones de la lista
ANULAR. A continuacin la revisar otra vez hacia delante, realizando de nuevo todas las
transacciones de la lista REPETIR. Por ltimo, una vez terminada toda esa actividad de recuperacin,
el sistema estar listo para aceptar trabajos nuevos.
FALLA DE LOS MEDIOS DE ALMACENAMIENTO
Una falla de los medios de almacenamiento es un percance ene l cual se destruye fsicamente alguna
porcin de la BD. La recuperacin de una falla semejante implica en esencia cargar de nuevo la BD a
partir de una copia de respaldo y utilizar despus la bitcora para realizar de nuevo todas las
transacciones terminadas desde que se hizo esa copia de respaldo. No hay necesidad de anular las
transacciones inconclusas en el momento de la falla, porque por definicin todas las modificaciones de
esas transacciones ya se anularon de todas maneras.
La parte de restauracin de la utilera servir entonces para recrear la BD despus de una falla de los
medios de almacenamiento a partir de una copia de respaldo especificada.

DATAWAREHOUSING
En el contexto de la informtica, un almacn de datos (del ingls data warehouse) es una
coleccin de datosorientada a un determinado mbito (empresa, organizacin, etc.), integrado, no
voltil y variable en el tiempo, que ayuda a la toma de decisiones en la entidad en la que se utiliza.
Se trata, sobre todo, de un expediente completo de una organizacin, ms all de la informacin
transaccional y operacional, almacenado en una base de datos diseada para favorecer el anlisis
y la divulgacin eficiente de datos (especialmente OLAP, procesamiento analtico en lnea). El
almacenamiento de los datos no debe usarse con datos de uso actual. Los almacenes de datos
contienen a menudo grandes cantidades de informacin que se subdividen a veces en unidades
lgicas ms pequeas dependiendo del subsistema de la entidad del que procedan o para el que
sean necesario.

Data marts
Los Data marts son subconjuntos de datos de un data warehouse para reas especificas.
Entre las caractersticas de un data mart destacan:

Usuarios limitados.

rea especifica.

Tiene un propsito especifico.

Tiene una funcin de apoyo.

Cubos de informacin
Los cubos de informacin o cubos OLAP funcionan como los cubos de
rompecabezas en los juegos, en el juego se trata de armar los colores y en el
data warehouse se trata de organizar los datos por tablas o relaciones; los
primeros (el juego) tienen 3 dimensiones, los cubos OLAP tienen un nmero
indefinido de dimensiones, razn por la cual tambin reciben el nombre
de hipercubos. Un cubo OLAP contendr datos de una determinada variable que se
desea analizar, proporcionando una vista lgica de los datos provistos por
el sistema de informacin hacia el data warehouse, esta vista estar dispuesta
segn unas dimensiones y podr contener informacin calculada. El anlisis de
los datos est basado en las dimensiones del hipercubo, por lo tanto, se trata
de un anlisis multidimensional.
A la informacin de un cubo puede acceder el ejecutivo mediante "tablas
dinmicas" en una hoja de clculo o a travs de programas personalizados. Las
tablas dinmicas le permiten manipular las vistas (cruces, filtrados,
organizacin, totales) de la informacin con mucha facilidad. Las diferentes
operaciones que se pueden realizar con cubos de informacin se producen con
mucha rapidez. Llevando estos conceptos a un data warehouse, ste es una
coleccin de datos que est formada por dimensiones y variables,
entendiendo como dimensiones a aquellos elementos que participan en el
anlisis y variables a los valores que se desean analizar.

Dimensiones
Las dimensiones de un cubo son atributos relativos a las variables, son las
perspectivas de anlisis de las variables (forman parte de la tabla de
dimensiones). Son catlogos de informacin complementaria necesaria para la
presentacin de los datos a los usuarios, como por ejemplo: descripciones,
nombres, zonas, rangos de tiempo, etc. Es decir, la informacin general
complementaria a cada uno de los registros de la tabla de hechos.

Variables
Tambin llamadas indicadores de gestin, son los datos que estn siendo
analizados. Forman parte de la tabla de hechos. Ms formalmente, las variables
representan algn aspecto cuantificable o medible de los objetos o eventos a
analizar. Normalmente, las variables son representadas por valores detallados
y numricos para cada instancia del objeto o evento medido. En forma
contraria, las dimensiones son atributos relativos a las variables, y son
utilizadas para indexar, ordenar, agrupar o abreviar los valores de las mismas.
Las dimensiones poseen una granularidad menor, tomando como valores un
conjunto de elementos menor que el de las variables; ejemplos de dimensiones
podran ser: productos, localidades (o zonas), el tiempo (medido
en das, horas, semanas, etc.), ...

Ejemplos
Ejemplos de variables podran ser:

Beneficios

Gastos

Ventas

etc.

Ejemplos de dimensiones podran ser:

producto (diferentes tipos o denominaciones de productos)

localidades (o provincia, o regiones, o zonas geogrficas)

tiempo (medido de diferentes maneras, por horas, por das, por meses, por aos, ...)

tipo de cliente (casado/soltero, joven/adulto/anciano, ...)

etc.

Segn lo anterior, podramos construir un cubo de informacin sobre el ndice


de ventas (variable a estudiar) en funcin del producto vendido,
la provincia, el mes del ao y si el cliente est casado o
soltero (dimensiones). Tendramos un cubo de 4 dimensiones.

Potrebbero piacerti anche