Professional Documents
Culture Documents
Sistema de Archivos
Conjunto de archivos normales que contiene informacin. Inicialmente la informacin se almacenaba en archivos planos y se construan programas que manipulaban los datos.
Sistema de Archivos
DESVENTAJAS: Informacin redundante. Problemas en la integridad de la informacin (no se realizan todos los cambios en todos los archivos que contienen el dato modificado). Problemas en compartir informacin. Complejo control de acceso a la informacin (semforos y memoria compartida). Baja disponibilidad de informacin, si un usuario usa un recurso, nadie ms puede utilizarla.
L.C.I. Horacio J. Tacubeo Crz
Como se observa, slo existe una trayectoria para llegar a un punto, en este caso el punto C. Este es un esquema poco flexible por lo que surge la idea de eliminar la deficiencia del Sistemas de Base de Datos Jerrquica y se crea el Sistema de Bases de Datos de Red
Definicin de BDR
Sistemas de almacenamiento masivo de informacin. Conjunto de datos relacionados, con una determinada estructura lgica, almacenados fsicamente en forma de ficheros informticos.
Los Resultados
Los Usuarios
MODELO DE DATOS.
Representacin grfica del mundo real, nos sirve para:
Organizar la informacin. Definir unidades de datos y sus relaciones. Planear y comunicar ideas.
Entidad
Objeto de inters principal o importante para el usuario dentro del sistema. Generalmente es una persona, un lugar, una cosa, o un evento.
Atributos
Son caractersticas o calificadores que proporcionan informacin detallada de una entidad. Los atributos son identificados generalmente al realizar entrevistas con el usuario, otras fuentes de informacin son: reportes, facturas, formatos, etc. Los atributos se clasifican en identificadores y descriptores.
Identificador
Identifican de manera nica una instancia dentro de una entidad. No permiten el almacenamiento de valores nulos.
Descriptores
Describen todas las caractersticas de la entidad, normalmente aceptan valores duplicados. Permite almacenar valores nulos. El descriptor es una clave ajena de la relacin R2. EDITORIAL( NOMBRE_E, DIRECCION, CIUDAD, PAIS ); PK: NOMBRE_E LIBRO( CODIGO,TITULO,IDIOMA,...., NOMBRE_E ); PK:CODIGO FK:NOMBRE_E La clave fornea, NOMBRE_E podra ser null, ya que en un momento determinado podramos no conocer la editorial de un libro. Esta clave que referencia a EDITORIAL debe concordar con la clave primaria de EDITORIAL.
L.C.I. Horacio J. Tacubeo Crz
ATRIBUTOS DERIVADOS:
Atributos cuyo valor depende de otros atributos. Normalmente NO debe almacenarse, a menos que sean prescindibles para los procesos finales.
Dominio
Conjunto de valores vlidos asociados a un atributo. Ejemplo: Tipo de pelcula: deportes, accin, musicales, terror, suspenso, cmicas, etc.
Terminologa Equivalente
Entidad = tabla Tupla = registro, fila o rengln Atributo = campo o columna Clave = llave o cdigo de identificacin Clave Candidata = superclave mnima Clave Primaria = clave candidata elegida Clave Ajena = clave externa o clave fornea Clave Alternativa = clave secundaria
L.C.I. Horacio J. Tacubeo Crz
Tabla
Tabla en las bases de datos, se refiere al tipo de modelamiento de datos, donde se guardan los datos recolectados por un programa.
Las tablas se componen de dos estructuras:
Campo: Corresponde al nombre de la columna. Debe ser nico y adems de tener un tipo de dato asociado. Registro: Corresponde a cada fila que compone la tabla. All se componen los datos y los registros. Eventualmente pueden ser nulos en su almacenamientos.
L.C.I. Horacio J. Tacubeo Crz
Columna
Una columna es un conjunto de valores de datos de un simple tipo particular, uno por cada fila de la tabla.
Registro
Un registro es un conjunto de campos que contienen los datos que pertenecen a una misma repeticin de entidad. Se le asigna automticamente un nmero consecutivo (nmero de registro) que en ocasiones es usado como ndice aunque lo normal y prctico es asignarle a cada registro un campo clave para su bsqueda
Tabla
Cada tabla creada debe tener un nombre nico en la cada Base de Datos, hacindola accesible mediante su nombre o su sinnimo (dependiendo del tipo de base de datos elegida).
La estructura de las tablas viene dado por la forma de un archivo plano, los cuales en un inicio se componan de un modo similar.
L.C.I. Horacio J. Tacubeo Crz
1. Identificar los objetos principales dentro del sistema. 2. Definir los objetos principales. 3. Hacer el diagrama Entidad-Relacin (establecer las relaciones entre objetos). 4. Resolver el modelo lgico. 5. Normalizar el modelo lgico. 6. Convertir el modelo lgico a un esquema fsico.
L.C.I. Horacio J. Tacubeo Crz
MODELO ENTIDAD-RELACION
Formalizado por C. W. Bachman a finales de 1960; sus beneficios son:
Esquematizar las relaciones entre entidades. Manejar mucha informacin de manera sencilla. Facilitar su entendimiento. Excelente fuente de documentacin. Mapeo directo en la construccin de una BDR.
Diagramas E-R
Los diagramas entidad relacin son herramientas poderosas que permiten modelar la informacin en base a las necesidades de una compaa o empresa. Juegan un papel muy importante en la metodologa del diseo de BDR. Son una excelente fuente de documentacin para los usuarios, desarrolladores de aplicaciones y administradores de BD. Se utilizan para crear el diseo fsico de una BD.
Diagramas E-R
C.W.Bachman formaliz los diagramas utilizados en los modelos de datos EntidadRelacin a finales de los 60`s. El estilo de Bachman proporciona una sintaxis diagramtica que es fcil de entender, esta sintaxis es usada por muchas herramientas automatizadas CASE.
Diagramas E-R
SIMBOLOGIA:
Diagramas E-R
Simbologia:
Relacin
Representa asociaciones del mundo real entre entidades. Una relacin esta asociada normalmente a un verbo o una preposicin que establece la conexin entre dos entidades. Identificar y entender las entidades y las relaciones entre ellas, es la parte ms importante en el diseo de BDR.
Relacin
Las relaciones entre entidades se describen en trminos de:
CONECTIVIDAD: Describe el nmero de instancias de una entidad asociadas a otra entidad.
Tipos de Conectividad Uno a uno 1: 1 Uno a muchos 1: M Muchos a muchos M: N
En sentido contrario:
1:1 1:M 1:1
Resultante:
1:1 1:M 1:M
M:1
M:1
1:1
1:N
M:1
M:N
Cardinalidad
Restriccin de la conectividad en las relaciones.
Define el nmero exacto de instancias asociadas entre las entidades. Ejemplo: Sistema de Renta de Pelculas. Renta 1:5 Pelculas 1:N 1:M
L.C.I. Horacio J. Tacubeo Crz
DEPENDENCIA DE EXISTENCIA:
Descripcin de la dependencia de existencia de una entidad dentro de una relacin, esta puede ser obligatoria u opcional.
Obligatoria: La existencia de una instancia dentro de una entidad es requerida para que s de la relacin. Opcional: La existencia de una instancia dentro de una entidad no es necesaria para que exista la relacin.
L.C.I. Horacio J. Tacubeo Crz
DEPENDENCIA DE EXISTENCIA:
Determine la dependencia de existencia entre las relaciones del sistema de renta de pelculas.
Eliminacin Errores ER
Relaciones Uno Uno
Generalmente una de las entidades es un subconjunto de la otra, por ejemplo: Para eliminar las relaciones 1 : 1, es necesario unir las entidades involucradas en una sola entidad. Las relaciones uno a uno de las entidades es un subconjunto de la otra.
Eliminacin Errores ER
Crear una nueva entidad que separe las entidades donde se presenta la relacin M : N. Para establecer fsicamente las relaciones entre tablas necesitamos de atributos especiales: las llaves primarias y forneas o secundarias.
ndice nico
Un ndice es un mecanismo de acceso rpido, que recupera los datos desde una relacin, Similar a la indexacin de un libro
Tipos de Indices
Los Clustered Indexes son ndices que controlan el orden fsico de las filas en la tabla, por lo cual solo puede existir uno para cada tabla. Los Non-Clustered indexes son ndices que mantienen un sub conjunto de las columnas de la tabla en orden. Estos indices no modifican el orden de las filas de la tabla, en lugar de esto mantienen una lista ordenada de referencias a filas de la tabla original.
L.C.I. Horacio J. Tacubeo Crz
LLAVES PRIMARIAS:
Atributo o combinacin de atributos que identifican de manera nica una instancia dentro de una entidad. Una entidad debe tener una llave primaria, y no permitir el almacenamiento de valores nulos. Se recomienda que las llaves primarias sean valores numricos o cadenas cortas de caracteres.
Las llaves primarias pueden ser simples (involucran un solo atributo), compuestas (constituida por dos o ms atributos). En algunos casos es posible contar con llaves generadas por el sistema.
L.C.I. Horacio J. Tacubeo Crz
Eliminacin Errores ER
RELACIN COMPLEJA: Normalmente asocia tres o ms entidades. Difcil de evaluar. No se puede trasladar a un esquema de BD. Solucin: Se debe definir una nueva entidad que relacione las entidades involucradas teniendo ahora tres relaciones simples (binarias) entre las entidades.
Eliminacin Errores ER
RELACIONES RECURSIVAS: Asociacin entre instancias de la misma entidad.
No se presentan frecuentemente. Pueden implementarse en un esquema de BDR
Especificacin de Atributos
Es de vital importancia asignar correctamente las especificaciones de cada atributo de una entidad:
Nombre del atributo. Tipo de dato. Valores nulos. nico (no-duplicados). Candidatos a llaves. Llave primaria.
Llave secundaria.
NOMBRES DE ATRIBUTOS
Se debe considerar una convencin de nombres, para incluir informacin adicional al atributo: a) Indica el tipo de informacin que almacena. b) A que tabla pertenece. c) Con significado para el usuario. Evitar (sinnimos) que los nombres sean distintos y que tengan la misma informacin.
Tambin es importante que los nombres no sean iguales (homnimos). para atributos que almacenan informacin totalmente distinta.
Normalizacin
Proceso mediante el cual se transforman datos complejos a un conjunto de estructuras de datos ms pequeas, que adems de ser ms simples y ms estables, son ms fciles de mantener
Ventajas Normalizacin
Simplificar una estructura de datos compleja Menos repeticin de datos Ocupa menos espacio en disco que una no normalizada
Grados de normalizacin
Existen tres niveles de normalizacin bsicos:
Regla Primera Forma Normal (1FN) Descripcin
Elimina cualquier dependencia transitiva. Una dependencia transitiva es aquella en la cual las columnas que no son llave son dependientes de otras columnas que tampoco son llave.
Normalizacin
Primera Forma Normal La regla de la Primera Forma Normal establece que las columnas repetidas deben eliminarse y colocarse en tablas separadas.
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 llave primaria de la tabla para identificarlos. Tercera Forma Normal Una tabla est normalizada en esta forma si todas las columnas que no son llave son funcionalmente dependientes por completo de la llave primaria y no hay dependencias transitivas. Comentamos anteriormente que una dependencia transitiva es aquella en la cual existen columnas que no son llave que dependen de otras columnas que tampoco son llave.
Normalizacin Cero
Un dato sin normalizar no cumple con ninguna regla de Normalizacin.
FECHA 2/23/03 2/23/03 2/23/03 2/25/03 2/27/03 2/27/03 ID_ORDEN 2301 2301 2301 2302 2303 2303
ID_CLIENT E
101 101 101 107 110 110
NOM_CLIE NTE
MARTI MARTI MARTI HERMAN
ESTADO CA CA CA WI MI MI
NUM_ITE M
3786 4011 9132 5794 4011 3141
DESC_ITE M
RED RAQUETA PAQ-3 PAQ-6 RAQUETA FUNDA 3 6 8 4 2 2
CANT
WESPORTS
WESPORTS
Contienen un grupo repetido para NUM_ITEM, DESC_ITEM, CANT y PRECIO. La 1FN prohibe los grupos repetidos, por lo tanto tenemos que convertir a la primera
forma normal
1 Forma Normal
Tenemos que eliminar los grupos repetidos. Tenemos que crear una nueva tabla con la PK de la tabla base y el grupo repetido.
ID_ORDEN FECHA 2/23/03 2/25/03 ID_CLIENTE 101 107 NOM_CLIENT E MARTI HERMAN ESTADO CA WI
ORDENES
2301 2302
2303
ID_ORDEN 2301 2301
2/27/03
NUM_ITEM 3786 4011 9132 5794
110
DESC_ITEM RED RAQUETA PAQ-3 PAQ-6 CANT 3 6 8 4
WE-SPORTS
PRECIO 35 65 4.75 5.0
MI
Artculos
2301 2302
2303
2303
4011
3141
RAQUETA
FUNDA
2
2
65
10
2 Forma Normal
La tabla ORDENES est en 2FN. Cualquier valor nico de ID_ORDEN determina un slo valor para cada columna. Por lo tanto, todas las columnas son dependientes de la llave primaria ID_ORDEN.
ORDENES
ID_ORDEN 2301 2302 FECHA 2/23/03 2/25/03 ID_CLIENTE 101 107 NOM_CLIENT E MARTI HERMAN ESTADO CA WI
2303
2/27/03
110
WE-SPORTS
MI
2 Forma Normal
Por su parte, la tabla ARTICULOS_ORDENES no se encuentra en 2FN ya que las columnas PRECIO y DESC_ITEM son dependientes de NUM_ITEM, pero no son dependientes de ID_ORDEN. Lo que haremos a continuacin es eliminar estas columnas de la tabla ARTICULOS_ORDENES y crear una tabla ARTICULOS con dichas columnas y la llave primaria de la que dependen.
Artculos
ID_ORDEN
2301 2301 2301 2302
NUM_ITEM
3786 4011 9132 5794
DESC_ITEM
RED RAQUETA PAQ-3 PAQ-6
CANT
3 6 8 4
PRECIO
35 65 4.75 5.0
2303
2303
4011
3141
RAQUETA
FUNDA
2
2
65
10
2 Forma Normal
Tenemos que eliminar cualquier columna no llave que no dependa de la llave primaria de la tabla. Los pasos a seguir son:
Determinar cules columnas que no son llave no dependen de la llave primaria de la tabla. Eliminar esas columnas de la tabla base. Crear una segunda tabla con esas columnas y la(s) columna(s) de la PK de la cual dependen Artculos Ordenes
ID_ORDEN NUM_ITEM CANT
Artculos
NUM_ITEM
3786 4011 9132 5794 4011 3141
DESC_ITEM
RED RAQUETA PAQ-3 PAQ-6 RAQUETA FUNDA 35 65
PRECIO
2301
2301
3786
4011
3
6
2301
2302 2303 2303
9132
5794 4011 3141
8
4 2 2
4.75 5.0 65 10
3 Forma Normal
Al observar las tablas que hemos creado, nos damos cuenta que tanto la tabla ARTICULOS, como la tabla ARTICULOS_ORDENES se encuentran en 3FN. Sin embargo la tabla ORDENES no lo est, ya que NOM_CLIENTE y ESTADO son dependientes de ID_CLIENTE, y esta columna no es la llave primaria.
Para normalizar esta tabla, moveremos las columnas no llave y la columna llave de la cual dependen dentro de una nueva tabla CLIENTES. ORDENES
ID_ORDEN FECHA ID_CLIENTE NOM_CLIENTE ESTADO
CA WI MI
3 Forma Normal
La tercera forma normal nos dice que tenemos que eliminar cualquier columna no llave que sea dependiente de otra columna no llave. Los pasos a seguir son: Determinar las columnas que son dependientes de otra columna no llave. Eliminar esas columnas de la tabla base. Crear una segunda tabla con esas columnas y con la columna no llave de la cual son dependientes.
ORDENES
ID_ORDEN
2301 2302 2303
CLIENTES
FECHA
2/23/03 2/25/03 2/27/03
ID_CLIENTE
101 107 110
ESTADO CA WI MI
Deshacer la normalizacin
Duplicar los Datos para conservar informacin que puede cambiar con el paso del tiempo Conservar la direccin del cliente en el momento en que se emiti la factura (no en el momento de su creacin, ya que la informacin del cliente puede cambiar entre los dos eventos). Las descripciones y precios de los productos cambian al paso del tiempo. Si no copia los datos de la lista de precios en la tabla de artculos de lnea, no podr volver a imprimir con precisin la factura original en el futuro, lo que puede constituir un enorme problema si an no ha recibido el importe de la factura.
L.C.I. Horacio J. Tacubeo Crz
Por motivos de eficacia, cada tabla debe tener un campo de clave. El campo de clave define la exclusividad en la tabla; los ndices lo utilizan en los otros campos para mejorar el rendimiento de las bsquedas.
Integridad Referencial
Agregar integridad referencial para reforzar la relacin. Esto evita que los campos vinculados se modifiquen incorrectamente y que se dejen registros "hurfanos" En general, el campo Id. no se debe cambiar.
Integridad Referencial
Las eliminaciones en cascada pueden resultar muy tiles. Por ejemplo, si tiene una tabla de facturas relacionada con una tabla de pedidos en la que una factura puede tener un nmero ilimitado de pedidos (artculos de lnea) y cada registro contiene el nmero de factura al que est vinculado, las eliminaciones en cascada permitirn eliminar el registro de factura y, automticamente, eliminar todos los registros de pedido correspondientes. As se asegura de no tener nunca un registro de pedido sin su correspondiente registro de factura.
L.C.I. Horacio J. Tacubeo Crz
Pginas
En SQL Server, el tamao de pgina es de 8 KB. Esto significa que las bases de datos de SQL Server tienen 128 pginas por megabyte. Cada pgina empieza con un encabezado de 96 bytes, que se utiliza para almacenar la informacin del sistema acerca de la pgina
Calculando el espacio de su BD
Cuando se haya determinado el tamao de una fila, el siguiente paso es calcular la nmero de filas de SQL Server se puede almacenar en una pgina de 8 KB dividiendo el tamao de la pgina por el tamao de una fila. SQL Server utiliza 132 bytes de sobrecarga por pgina 8 KB.
Calculando el espacio de su BD
Por lo tanto, para cada pgina de 8 KB, SQL Server puede utilizar slo 8.060 bytes para almacenar la informacin: (8 pgina KB = 8.192 bytes; 8.192 bytes - 132 bytes de cabecera = 8060 bytes) calcular el nmero de filas que se utilizan en una pgina, dividir 8.060 bytes por el tamao de una sola fila.
Calculando el espacio de su BD
Por ejemplo, si usted estima que cada fila ser de 40 bytes, puede almacenar 201 filas por pgina (8060/40=201).
Calculando el espacio de su BD
Por ejemplo, Una tabla de clientes que maneja 40 000 clientes. Esto significa que usted necesitar 40.000 filas en la tabla de clientes. Si cada fila es 40 bytes, entonces usted puede almacenar 201 renglones por pgina. El espacio total necesario es de aproximadamente 200 pginas (40.000 filas divididas por 201 filas por pgina). El espacio real (en kilobytes) que se requieren para la tabla es de 200 pginas multiplicado por 8 KB =1600 KB o 1,6 MB
Se puede utilizar la siguiente frmula para calcular la cantidad de espacio necesario para almacenar una tabla: Nmero de filas por pgina = 8060 bytes / tamao de una fila (en bytes) Nmero de pginas en la tabla = total de filas en la tabla / Nmero de filas por pgina Espacio total requerido para la tabla = n de pginas * 8 KB Ejemplo: Tabla con cuatro columnas con una longitud de 10 201 filas por pgina =8060/40. 200 = 40.000 filas / 201 filas por pgina 1600 KB o 1,6 MB = 200 pginas * 8 KB
L.C.I. Horacio J. Tacubeo Crz
Registro Transacciones
El registro de transacciones permite las siguientes operaciones: Recuperacin de transacciones individuales. Recuperacin de todas las transacciones incompletas cuando se inicia SQL Server. Puesta al da de una base de datos, un archivo, un grupo de archivos o una pgina restaurados hasta el momento exacto del error. Permitir replicacin transaccional. Compatibilidad con soluciones de alta disponibilidad y recuperacin ante desastres:
Calculando espacio en Disco duro para archivo de transacciones Repita estos pasos para cada tabla de la base de datos. Ahora puede estimar la cantidad total de espacio necesario para almacenar el registro de transacciones. Se recomienda que configure el tamao del registro de transacciones de una base de datos como de 10 a 25% del tamao de la base de datos. Por lo tanto: 1600KB * 25% = 400KB