Sunteți pe pagina 1din 26

Unidad 1

Conceptos iniciales
Bases de datos
Sistema computarizado para llevar registros. Es como un depsito o
contenedor de una coleccin de archivos (tablas) de datos computarizados. Los
usuarios del sistema pueden realizar una variedad de operaciones sobre dichos
archivos, como ser

Agregar nuevos archivos vacos a la base de datos (Crear tabla)


Insertar datos dentro de los archivos existentes (Insert)
Recuperar datos de los archivos existentes (Consulta-select)
Modificar datos en archivos existentes (Update)
Eliminar datos de los archivos existentes (delete)
Eliminar archivos existentes de la base de datos.(Drop)

Podemos pensar en las filas de dicha tabla como los registros del archivo y en
las columnas como los campos de dichos registros.
Por qu una base de datos?

Eficiencia en el almacenamiento de los datos


Gestin controlada de los datos
Estructura que sustenta todas las necesidades de informacin
Generacin integrada de aplicaciones

Tipos de Sistema

Sistemas monousuario: es aquel en el que slo un usuario puede tener


acceso a la base de datos en un momento dado
Sistema multiusuario: es aquel en el cual mltiples usuarios pueden
tener acceso simultneo a la base de datos. El objetivo principal en los
sistemas multiusuario es precisamente permitir que cada usuario se
comporte como si estuviera trabajando en un sistema de un solo usuario

Sistema de Base de Datos


Un sistema de base de datos comprende cuatro componentes principales:
datos, hardware, software y usuarios.

Dato
Representacin formalizada de entidades o hechos, adecuada para la
comunicacin, interpretacin y procesamiento por medios humanos o
automticos. Estos datos deben ser integrados y compartidos

Integrados: Podemos imaginar a la base de datos como una unificacin


de varios archivos que de otro modo seran distintos, con una
redundancia entre ellos eliminada al menos parcialmente. Es decir, no es
necesario incluir datos en una tabla X, si es que estos ya se
encuentran en una tabla Y, y por tanto siempre pueden consultarse
haciendo referencia a esta ltima. De lo contrario nos encontramos en
una redundancia.
Compartidos: las piezas individuales de datos en la base pueden ser
compartidas entre diferentes usuarios y que cada uno de ellos puede
tener acceso a la misma pieza de datos, probablemente con fines
diferentes. Distintos usuarios pueden al mismo dato al mismo tiempo.
Este compartimiento, concurrente o no, es en parte consecuencia del
hecho de que la base de datos est integrada.

Cualquier usuario ocupar normalmente slo una pequea parte de la base de


datos total. Una determinada base de datos ser percibida de muchas formas
diferentes por los distintos usuarios. Aun cuando dos usuarios tengan la misma
porcin de la base de datos, su visin de dicha parte podra diferir
considerablemente a un nivel detallado.
Persistencia de datos
De manera intuitiva, los de datos de la base de datos difieren de otros datos
ms efmeros, como los datos de entrada, los datos de salida, las instrucciones
de control, las colas de trabajo, los bloques de control de software, los
resultados intermedios y de manera ms general, cualquier dato que sea de
naturaleza transitoria. Decimos que los datos de la base de datos "persisten"
debido a que en primer lugar a que una vez aceptados por el DBMS para entrar
en la base de datos, en lo sucesivo slo pueden ser removidos de la base de
datos por alguna solicitud explcita al DBMS, no como un mero efecto lateral de
algn programa que termina su ejecucin.
Entonces podemos decir que: Una base de datos es un conjunto de datos
persistentes que es utilizado por los sistemas de aplicacin de alguna
organizacin dada.
Independencia de datos
Existen dos tipos de independencia

Fsica: es posible modificar la representacin fsica (la forma en que los


datos estn fsicamente representados en el almacenamiento) o la
tcnica de acceso (la forma en que son accedidos fsicamente) sin
afectar a la aplicacin de manera drstica.
Lgica

Como as tambin debe existir una Independencia entre los datos y el hardware

Hardware

Los volmenes de almacenamiento secundario principalmente discos


magnticos que se emplean para contener los datos almacenados,
junto con los dispositivos asociados de E/S (unidades de discos, etc.), los
controladores de dispositivos, los canales de E/S, entre otros.
Los procesadores de hardware y la memoria principal asociada usados
para apoyar la ejecucin del software del sistema de base de datos.

Software
DBMS
Entre la base de datos fsica es decir, los datos como estn almacenados
fsicamente usuarios del sistema, hay una capa de software conocida como el
sistema de administracin de base de datos (DBMS). Todas las solicitudes de
acceso a la base de datos son manejadas por el DBMS, como agregar o
eliminar archivos (o tablas), recuperar y almacenar datos desde y en dichos
archivos, etctera son caractersticas que proporciona el DBMS. Por lo tanto,
una funcin general que ofrece DBMS consiste en ocultar a los usuarios de la
base de datos los detalles al nivel de har (en forma muy parecida a como los
sistemas de lenguajes de programacin ocultan a los programadores de
aplicaciones los detalles a nivel de hardware). En otras palabras, el DBMS
ofrece a los usuarios una percepcin de la base de datos que est, en cierto
modo, por encima del nivel del hardware y que maneja las operaciones del
usuario.

Funciones y componentes del DBMS


Definicin de datos: El DBMS debe ser capaz de aceptar definiciones de datos
(esquemas externos, el esquema conceptual, el esquema interno y todas las
transformaciones respectivas) en la forma fuente y convertirlas a la forma
objeto correspondiente. En otras palabras, el DBMS debe incluir entre sus
componentes un procesador DDL, o compilador DDL, para cada uno de los
diversos DDLs (lenguajes de definicin de datos de la arquitectura
ANSI/SPARK). El DBMS tambin debe "entender" definiciones DDL, en el sentido
que, por ejemplo, "entienda" que los registros externos de una tabla
EMPLEADO incluyen un campo SALARIO; entonces, debe poder utilizar este
conocimiento para analizar y responder a las peticiones de manipulacin de
datos (por ejemplo. "Obtener todos los empleados con salario < $50,000")
Manipulacin de datos: El DBMS debe ser capaz de manejar peticiones para
recuperar, actualizar o eliminar datos existentes en la base de datos o agregar
nuevos datos a sta. En otras palabras, el DBMS debe incluir un componente

procesador DML o compilador DML para tratar con el DML (lenguaje de


manipulacin de datos). Las peticiones DML pueden ser:

Planeadas fue prevista antes del momento de ejecutar la peticin.


Probablemente el DBA habr afinado el diseo fsico de la base de datos
de tal forma que garantice un buen desempeo para las peticiones
planeadas.
No planeadas: fue prevista antes del momento de ejecutar la peticin.
Probablemente el DBA habr afinado el diseo fsico de la base de datos
de tal forma que garantice un buen desempeo para las peticiones
planeadas. Por ejemplo caractersticas de las aplicaciones de "apoyo a
la toma de decisiones

Optimizacin y ejecucin: Las peticiones DML, planeadas o no planeadas,


deben ser procesadas por el componente optimizador, cuya finalidad es
determinar una forma eficiente de implementar la peticin. Las peticiones
optimizadas se ejecutan entonces bajo el control del administrador en tiempo
de ejecucin.
Seguridad e integridad de los datos: El DBMS debe vigilar las peticiones del
usuario y rechazar todo intento de violar las restricciones de seguridad y de
integridad definidas por el DBA. Estas tareas pueden realizarse durante el
tiempo de compilacin, de ejecucin o entre ambos.
Recuperacin de datos y concurrencia: El DBMS o ms probablemente, algn
otro componente de software relacionado, denominado comnmente
administrador de transacciones o monitor de procesamiento de transacciones
(monitor PT) debe imponer ciertos controles de recuperacin y concurrencia.
Diccionario de datos: El diccionario contiene "datos acerca de los datos" (en
ocasiones llamados metadatos o descriptores); es decir, definiciones de otros
objetos del sistema, en lugar de simples "datos en bruto". En particular, todos
los diversos esquemas y transformaciones (externos, conceptuales, etctera) y
todas las diversas restricciones de seguridad y de integridad, sern
almacenadas en el diccionario, tanto en forma fuente como objeto. Un
diccionario extenso incluir adems mucha informacin adicional; mostrar por
ejemplo qu programas utilizan qu partes de la base de datos, qu usuarios
necesitan qu informes, etctera. El diccionario podra incluso y de hecho,
debera estar integrado dentro de la base de datos que define, e incluir por lo
tanto su propia definicin. En realidad, debe ser posible consultar el diccionario
del mismo modo que cualquier otra base de datos, de manera que, por
ejemplo, sea posible saber qu programas o usuarios se podran ver afectados
por un cambio propuesto al sistema.
Rendimiento: el DBMS debe realizar todas las tareas antes identificadas de la
manera ms eficiente posible.

Existen otros componentes como: las utileras, herramientas de desarrollo de


aplicaciones, ayudas de diseo, generadores de informes y (el ms importante)
el administrador de transacciones o monitor PT

Usuarios
Los programadores de aplicaciones responsables de escribir los programas de
aplicacin de base de datos en algn lenguaje de programacin como. Estos
programas acceden a la base de datos emitiendo la solicitud apropiada al
DBMS.
Los usuarios finales, quienes interactan con el sistema desde estaciones de
trabajo o terminales en lnea. Un usuario final puede acceder a la base de
datos a travs de las aplicaciones en lnea o usar una interfaz proporcionada
como parte integral del software del sistema de base de datos. La mayora de
los sistemas de base de datos incluyen por lo menos una de estas aplicaciones
integradas, digamos un procesador de lenguaje de consulta, mediante el cual
el usuario puede emitir solicitudes a la base de datos.

El administrador de base de datos o DBA:

Participar en la definicin del esquema conceptual: decide exactamente


qu informacin contendr la base de datos, identificar las entidades de
inters para la empresa e identificar la informacin que hay que registrar
acerca de dichas entidades, es decir, el diseo lgico.
Definir el esquema interno: decidir la forma en que van a ser
representados los datos en la base de datos almacenada (Diseo fsico).
Debe crear la definicin de la estructura de almacenamiento
correspondiente el esquema interno), utilizando el DDL interno
Administrar y vincularse con los usuarios: para asegurar que los datos
necesarios estn disponibles y para escribir (o ayudar a escribir) los
esquemas externos necesarios, utilizando el DDL externo aplicable.
Definir acerca de la seguridad e integridad: pueden ser vistas como
parte del esquema conceptual. El DDL conceptual debe incluir
facilidades para especificar dichas restricciones.
Definir acerca del respaldo y recuperacin: En el caso de que se
produzca un dao en cualquier parte de la base de datos resulta esencial
poder reparar los datos afectados con el mnimo de demora y con tan
poco efecto como sea posible sobre el resto del sistema.
Supervisar el desempeo de la BD: el DBA es el responsable de
organizar el sistema de tal manera que se obtenga el rendimiento "ideal
para la empresa" y de hacer los ajustes apropiados conforme las
necesidades cambien

Arquitectura ANSI/SPARC

La arquitectura ANSI/SPARC se divide en tres niveles, conocidos como interno,


conceptual y externo.
El nivel interno (tambin conocido como el nivel fsico) es el que est ms
cerca del almacenamiento fsico; es decir, es el que tiene que ver con la forma
en que los datos estn almacenados fsicamente.
El nivel externo (tambin conocido como el nivel lgico de usuario) es el ms
prximo a los usuarios; es decir, el que tiene que ver con la forma en que los
usuarios individuales ven los datos.
El nivel conceptual (tambin conocido como el nivel lgico de la comunidad, o
en ocasiones slo como el nivel lgico, sin calificar) es un nivel de indireccin
entre los otros dos.
EL NIVEL EXTERNO
El nivel externo es el nivel del usuario individual. Como expliqu en el captulo
1, un usuario dado puede ser un programador de aplicaciones o bien un
usuario final con cualquier grado de sofisticacin. Cada usuario tiene a su
disposicin un lenguaje. Para el programador de aplicaciones, ste ser ya sea
un lenguaje de programacin convencional y para el usuario final, el lenguaje
ser ya sea un lenguaje de consulta o bien algn lenguaje de finalidad
especfica, tal vez controlado por formularios o por mens.
Dichos lenguajes incluirn un sublenguaje de datos; es decir, un subconjunto
del lenguaje total que se ocupe especficamente de los objetos y operaciones
de la base de datos. Se dice que el sublenguaje de datos (abreviado como SLD)
est incrustado dentro de su lenguaje anfitrin correspondiente. El lenguaje
anfitrin es el responsable de proporcionar diversas propiedades que no son
especficas de la base de datos, como las variables locales, las operaciones de
clculo, la lgica de bifurcacin, etctera.
Ahora bien, aunque para fines de la arquitectura es conveniente distinguir
entre el sublenguaje de datos y el lenguaje anfitrin que lo contiene, ambos
podran no ser distintos en lo que al usuario concierne. Si no son distintos, o si
difcilmente pueden distinguirse, decimos que estn fuertemente acoplados. Si
son clara y fcilmente separables, decimos que estn dbilmente acoplados.
Aunque algunos sistemas comerciales s manejan el acoplamiento fuerte, la
mayora no lo hace; en particular, los sistemas SQL generalmente slo manejan
el acoplamiento dbil.
En principio, cualquier sublenguaje de datos determinado es en realidad una
combinacin de por lo menos dos lenguajes subordinados: un DDL (lenguaje de
definicin de datos), que permite la definicin o declaracin de objetos de base

de datos, y un DML (lenguaje de manipulacin de datos), que permite la


manipulacin o procesamiento de dichos objetos.

La parte del DDL consiste en aquellas construcciones declarativas de un


lenguaje propsito general necesarias para declarar objetos de base de
datos
La parte del DML consiste en aquellas instrucciones ejecutables de un
lenguaje propsito general que transfieren informacin hacia y desde la
base de datos; de nuevo, que incluyen tal vez nuevas instrucciones
especiales.

EL NIVEL CONCEPTUAL
La vista conceptual es una representacin de todo el contenido de la
informacin de la base de datos, en una forma un poco abstracta comparada
con la forma en la que por lo regular se almacenan los datos fsicamente. En
trminos generales, la vista conceptual pretende ser una vista de los datos "tal
como son", en vez de tal como los usuarios estn obligados a verlos debido a
las limitaciones del lenguaje o el hardware en particular que pudieran utilizar.
La vista conceptual est definida por medio del esquema conceptual, el cual
comprende definiciones de cada uno de los diversos tipos de registros
conceptuales. El esquema conceptual est escrito con otro lenguaje de
definicin de datos, el DDL conceptual. Para lograr la independencia fsica de
los datos, entonces las definiciones conceptuales de DDL deben ser
nicamente definiciones del contenido de la informacin, sin referencia para la
representacin de campos almacenados, la secuencia de registros
almacenados, los ndices, los esquemas de dispersin, los apuntadores o
cualquier otro detalle de almacenamiento y acceso. Si el esquema conceptual
se hace verdaderamente independiente de los datos, entonces los esquemas
externos tambin sern independientes de los datos.
Las definiciones del esquema conceptual pretenden incluir muchas
caractersticas adicionales, como las restricciones de seguridad y de integridad.
Algunos sugieren que el objetivo final del esquema conceptual es describir toda
la empresa; no slo los datos como tales, sino tambin la forma en que son
utilizados, la forma en que fluyen de un punto a otro dentro de la empresa, su
funcin en cada punto, lo controles de auditora u otros que se aplican en cada
punto.
En la actualidad ningn sistema soporta realmente un esquema conceptual de
cualquier cosa que se aproxime a este grado de amplitud.
EL NIVEL INTERNO

La vista interna es una representacin de bajo nivel de toda la base de datos y


consiste en muchas ocurrencias de cada uno de los diversos tipos de registros
internos. "Registro interno" es el trmino de ANSI/SPARC para la construccin
que hemos venido llamando registro almacenado. La vista interna est todava
distante del nivel fsico, ya que no tiene que ver con trminos como registros
fsicos ni con ninguna consideracin especfica de los dispositivos, como el
tamao de los cilindros, de las pistas o los detalles del espacio de direcciones.
La vista interna se describe por medio del esquema interno, el cual no slo
define los diversos tipos de registros almacenados sino que especifica tambin
qu ndices existen, cmo estn representados los campos almacenados, en
qu secuencia estn dichos registros, etctera.
El esquema interno est escrito utilizando otro lenguaje ms de definicin de
datos, el DDL interno
En ciertas situaciones excepcionales, a los programas de aplicacin se les
podra permitir operar directamente en el nivel interno en vez del nivel externo.
No es recomendable esta prctica, ya que se ignoran las restricciones de
seguridad, se ignoran las restricciones de integridad y el programa ser
dependiente de los datos. Aunque, en ocasiones, sta podra ser la nica forma
de obtener la funcionalidad o el rendimiento requeridos.

Enfoque Relacional

Los datos son percibidos por el usuario como tablas (y nada ms que tablas); y
los operadores disponibles para el usuario (por ejemplo, para recuperacin) son
operadores que generan nuevas tablas a partir de las anteriores.
Un modelo de datos es una definicin lgica, independiente y abstracta de los
objetos, operadores y dems que en conjunto constituyen la mquina abstracta
con la que interactan los usuarios. Los objetos nos permiten modelar la
estructura de los datos. Los operadores nos permiten modelar su
comportamiento.
Unidad 2

TIPOS DE BASES DE DATOS


PRERELACIONALES:
DE LISTA INVERTIDA
JERRQUICAS
RED
RELACIONALES
POSTRELACIONALES:
ORIENTADAS A OBJETOS
SISTEMAS EXPERTOS
Pre-Relacionales
Caracteristicas: sistemas que estaban structurados a modelos entidad relacin,
se debina indexar y requeran de otros algoritmos para garantizar de un aaceso
rapidos a los datos. Se deba accdeder simpre desde el primer elemento
JERRQUICAS: Los datos son organizados en una estructura parecida a un
rbol. La estructura permite a la informacin que repite y usa relaciones
estrictas padre/Hijo: cada padre puede tener muchos hijos pero cada hijo slo
tiene un padre. Todos los atributos de un registro especfico son catalogados
bajo un tipo de entidad. Un tipo de entidad es el equivalente de una tabla; cada
registro individual es representado como una fila y un atributo como una
columna
No puede haber relacin entre nodos de distintos niveles o entre los del mismo
nivel
Cabe distinguir en este punto entre el concepto de tipo de registro, y
ocurrencia o instancia de registro. El tipo define la estructura general que debe
poseer, o sea, los campos de cada uno de sus segmentos, y la estructura
jerrquica entre ellos. Una instancia es un valor de un tipo de registro. Para que
quede ms claro, un tipo de registro es como un tipo de perro: blanco, negro,
marrn, etc., mientras que una instancia es una perro concreto perteneciente a
uno de estos tipos: doggy (perro negro), Willy(perro blanco)

RED
Se trata de una interconexin de nodos mediante apuntadores, sin la
restriccin del jerrquico, es decir, pueden salir de cada nodo varios arcos
apuntando a otros nodos. A diferencia del modelo jerrquico, en este modelo
se permiten las conexiones entre nodos de cualquier tipo, por lo que resulta
bueno para relaciones M:M. Su principal desventaja radica en los problemas de
implementacin para lograr un rendimiento ptimo.
Por tanto el esquema de una base de datos en red general se puede
representar mediante diagramas, y la base de datos sera el conjunto de todas
las ocurrencias de los tipos de entidad existentes en el esquema con las
correspondientes interrelaciones entre ellas.

En el modelo en red no se ha especificado ningn tipo de restriccin en lo que


respecta a las interrelaciones. Esto quiz haga del modelo en red un modelo
tremendamente sencillo de utilizar, pero no deja de tener un carcter general y
provoca que en la prctica su instrumentacin no resulte nada fcil.

POSTRELACIONALES:
ORIENTADAS A OBJETOS
Frente a los requerimientos y las caractersticas de nuevas aplicaciones difieren
en gran medida de las tpicas aplicaciones de gestin: la estructura de los
objetos es ms compleja, las transacciones son de larga duracin.
Las bases de datos orientadas a objetos se crearon para tratar de satisfacer las
necesidades de estas nuevas aplicaciones. La orientacin a objetos ofrece
flexibilidad para manejar algunos de estos requisitos y no est limitada por los
tipos de datos y los lenguajes de consulta de los sistemas de bases de datos
tradicionales. Una caracterstica clave de las bases de datos orientadas a
objetos es la potencia que proporcionan al diseador al permitirle especificar
tanto la estructura de objetos complejos, como las operaciones que se pueden
aplicar sobre dichos objetos.
Los tipos de datos pueden ser extendidos para soportar datos complejos, como
multimedia, por ejemplo, definiendo nuevas clases de objetos que tienen
operaciones para soportar dichos nuevos tipos de datos.
La herencia, permite desarrollar soluciones a problemas complejos de forma
incremental, definiendo nuevos objetos a partir de los ya definidos. Proporciona
a las subclases la habilidad de participar en la transmisin / manipulacin de
datos y mtodos de acceso dentro del mbito de su jerarqua. Mediante la
herencia, problemas complejos son representados de una forma ms fiel e
intuitiva que facilita la reutilizacin de cdigo y parte de las especificaciones de
aplicaciones.
El polimorfismo y la ligadura dinmica, permiten definir operaciones para un
objeto y posteriormente compartir esa especificacin con otros objetos. Estos
objetos pueden luego extender esa operacin para proporcionar
comportamientos que son nicos para dichos objetos.
El polimorfismo consta de sobrecarga y ocultamiento, con el objetivo de
generar una interfaz, mltiples mtodos. Junto a estos dos principios de la
orientacin a objeto, aparece la ligadura dinmica que determina, en tiempo de
ejecucin, cul de esas operaciones se ejecuta realmente, dependiendo de la
clase del objeto requerido para llevar a cabo la operacin. Permiten que el
cdigo sea representativo de un determinado dominio sin quedar reducido al
mbito limitado de un objeto determinado.
Otra de las caractersticas bsicas de las bases de datos orientadas a objetos
es la persistencia. Desde el punto de vista de las bases de datos, sobre todo,
del de la programacin, es evidente que el modelo orientado a objetos es
bastante extrao. Lo que la persistencia proporciona principalmente es el

hecho de que los datos sobrevivan a la ejecucin del objeto creado con el fin
de ser reutilizados posteriormente en otro proceso. Para aliviar los problemas
que surgen de los sistemas relacionales como son la dificultad para mantener
la integridad y la barrera de comunicacin, la persistencia posibilita que el
lenguaje de programacin y la base de datos posean el mismo modelo y
adems, que el programa tenga posibilidad de manipular datos transitorios y
datos persistentes de la misma forma. De esta manera, el problema del
aislamiento entre la aplicacin y la base de datos se elimina directamente,
puesto que se posibilita una interaccin inmediata con la base de datos a
travs de la persistencia.
La identificacin de los objetos es otra de las caractersticas esenciales en una
base de datos orientada a objetos. Los objetos, por s mismos, poseen una
identidad independiente de su estado actual. Por ejemplo, si tenemos un objeto
coche y remodelamos dicho coche y cambiamos su apariencia el motor, la
transmisin, las ruedas de forma que parezca totalmente diferente, todava
ser reconocido como el objeto que tenamos originalmente. De esta forma,
dentro de una OODB, siempre se puede realizar la pregunta este es el mismo
objeto que tena previamente?, asumiendo que uno recuerda la identidad del
objeto. La identidad del objeto siempre permite a los objetos estar relacionados
y compartidos dentro de una red distribuida de ordenadores. La identidad de
los objetos establece relaciones entre objetos, adems de una forma de
navegar sin la estructura de la base de datos. A esto sigue que dos objetos
pueden ser idnticos o que dos objetos pueden ser iguales. Como resultado,
esto da lugar a dos implicaciones: la comparticin de objetos y la actualizacin
de objetos.
La comparticin de objetos se basa en la idea de que dos objetos pueden
compartir un componente o elemento de datos. En cuanto a la actualizacin de
datos, se refiere a todos aquellos objetos que comparten componentes o
elementos de datos, puesto que stos requerirn una actualizacin
consecuente. Las ventajas de mantenimiento en este aspecto se deben a la
identificacin de objetos.
En cuanto a la encapsulacin, propia del paradigma orientado a objetos,
podemos decir que en el mbito de las bases de datos orientadas a objetos,
provee de independencia a los datos donde la implementacin de las clases
pude ser alterada sin la necesidad de alterar otros mtodos.
Adems, es primordial que la base de datos sea extensible. Debe proveer de un
soporte para la definicin de nuevos objetos y mtodos que operen con los
objetos ya existentes.
Una diferencia significativa entre las OODB y las bases de datos relacionales es
que las primeras representan las relaciones de forma explcita, soportando

ambos modelos de bases de datos el acceso navegacional y asociativo a la


informacin. A medida que la complejidad de las relaciones entre la
informacin se va incrementando, se hacen evidentes las ventajas de
representar las relaciones de forma explcita. Otro beneficio del uso de
relaciones explcitas est en la mejora en la realizacin del acceso a los datos,
sobre todo en comparacin con el acceso que se realiza en el mbito
relacional.
SISTEMAS EXPERTOS
Una base de conocimiento es un tipo especial de base de datos para la gestin
del conocimiento. Provee los medios para la recoleccin, organizacin y
recuperacin computarizada de conocimiento. Las bases de conocimiento
legibles por mquinas, diseadas para almacenar conocimiento en una forma
legible por el computador, usualmente con el fin de obtener razonamiento
deductivo automtico aplicado a ellas. Contienen una serie de datos,
usualmente en la forma de reglas que describen el conocimiento de manera
lgicamente consistente. Operadores lgicos como Y (conjuncin), O
(disyuncin), condicin lgica y negacin son utilizada para aumentarla desde
el conocimiento atmico. En consecuencia la deduccin clsica puede ser
utilizada para razonar sobre el conocimiento en la base de conocimiento. Este
tipo de bases de conocimiento son utilizadas por la Web semntica
Contiene la informacin que permanece invariable y que recibe el nombre de
hecho.
Podemos decir que constituye la memoria de trabajo del sistema experto.
Los hechos representan la estructura dinmica del conocimiento ya que su
nmero puede verse incrementado a medida que se van relacionando las
reglas.

Bases de datos relacionales: principales componentes,


conceptos bsicos. Dominios, relaciones y tipos.
Los sistemas relacionales slo requieren que la base de datos sea percibida por
el usuario en forma de tablas. Las tablas son la estructura lgica en un sistema
relacional. a asociar la representacin almacenada con tablas en el nivel lgico.
En otras palabras, las tablas representan una abstraccin de la forma en que
los datos estn almacenados fsicamente; una abstraccin en la cual se ocultan
al usuario diversos detalles del nivel de almacenamiento.
Principio de Informacin: Todo el contenido de informacin de la base de datos
est representado en una y slo una forma; es decir, como valores explcitos
dentro de posiciones de columnas dentro de filas dentro de tablas. Este mtodo

de representacin es el nico mtodo disponible (por supuesto, en el nivel


lgico) en un sistema relacional.
MODELO RELACIONAL
De manera intuitiva podemos decir ciertos sistemas

Aspecto estructural: El usuario percibe la informacin de la base de


datos como tablas y nada ms que tablas
Aspecto de integridad: Estas tablas satisfacen ciertas restricciones de
integridad (que explicaremos hacia el final de esta seccin);
Aspecto de manipulacin: Los operadores disponibles para que el
usuario manipule estas tablas por ejemplo, para fines de recuperacin
de datos son operadores que derivan tablas a partir de tablas. En
particular, tres de estos operadores son importantes: restringir,
proyectar y juntar

Del aspecto de manipulacin:

La operacin restringir (tambin conocida como seleccionar) extrae las


filas especificadas de una tabla.
La operacin proyectar extrae las columnas especificadas de una tabla.
La operacin juntar rene dos tablas con base en valores comunes de
una columna comn.

El modelo relacional consta de los siguientes cinco componentes:


1. Un conjunto abierto de tipos escalares (incluyendo en particular el tipo
lgico o valor verdadero);
2. Un generador de tipos de relacin y una interpretacin propuesta de
dichos tipos;
3. Herramientas para definir variables de relacin de dichos tipos de
relacin generados;
4. Una operacin asignacin relacional para asignar valores de relacin a
las variables de relacin mencionadas;
5. Un conjunto abierto de operadores relacionales genricos para derivar
valores de relacin de otros valores de relacin
Por qu llamamos relacional a dicha base de datos? "Relacin" es slo un
trmino matemtico para una tabla; para ser precisos, una tabla de cierto
tipo especfico.
El modelo relacional no emplea en absoluto el trmino "registro"; en su
lugar usa el trmino "tupla" corresponde aproximadamente a la nocin de
una fila, tal como el trmino "relacin" corresponde aproximadamente a la
nocin de una tabla.

ELEMENTOS BSICOS DE UNA BD:

Tabla: representa una entidad o una relacin


Tupla: fila de una tabla
Atributo: columna de una tabla
Clave primaria: identificador nico para la tabla (1 o ms atributos)
Clave fornea: clave cuyos atributos estn restringido a los valores
de alguna otra clave primaria
Escalares: valores atmicos, menor unidad semntica de informacin,
no puede descomponerse en partes

Relaciones, encabezados y cuerpo:


Consideremos el siguiente ejemplo
TYPE EMP# ... ;
TYPE NOMBRE . . . ;
TYPE DEPTO# ... ;
TYPE DINERO ... ;

El tipo EMP# puede ser visto como el conjunto de todos los nmeros de
empleado posibles; el tipo NOMBRE como el conjunto de todos los nombres
posibles; y as sucesivamente.
Cada relacin para ser ms precisos, cada valor de relacin tiene dos
partes, un conjunto de parejas nombre-de-columna:nombre-de-tipo (el
encabezado) y un conjunto de filas que se apegan a ese encabezado (el
cuerpo).
Dicho de otra forma:

Primero, dada una relacin r, el encabezado de r denota un cierto


predicado o funcin valuada como verdadera;

Segundo, cada fila en el cuerpo de r denota una cierta proposicin


verdadera, obtenida del predicado por medio de la sustitucin ciertos
valores de argumento del tipo apropiado en los indicadores de
posicin o parmetros de ese predicado ("creando un ejemplar del
predicado").

Por ejemplo el predicado luce como lo siguiente:


El empleado EMP# se llama NOMEMP, trabaja en el departamento DEPTO# y
gana salario de SALARIO
Y las proposiciones verdaderas correspondientes son:
El empleado E2 se llama Cheng, trabaja en el departamento DI y gana el
salario 42K

Tipos de relaciones
Relaciones base (o reales): es una relacin autnoma, nominada, definida
fsicamente.
Vistas (o relaciones virtuales): relacin definida a travs de otras, no posee
datos propios, transitoria.
Instantneas (o snapshot): similar a la vista pero solo se mantiene durante el
procesamiento
Cursor: seleccin de datos que actuan como una nica tabla
Consultas y Subconsultas
Temporales: se destruyen al terminar una sesin

Dominios
Un dominio describe un conjunto de posibles valores para cierto atributo. Como
un dominio restringe los valores del atributo, puede ser considerado como una
restriccin. Matemticamente, atribuir un dominio a un atributo significa "todos
los valores de este atributo deben de ser elementos del conjunto especificado".

Integridad y Restricciones:
Ajustan el modelo de datos a la realidad describiendo lo que puede o no
puede existir en el modelo de datos
Las bases de datos tienen muchas reglas de integridad
La inconsistencia entre dos entradas que pretenden representar el mismo
"hecho", este problema en particular puede surgir slo si existe redundancia en

los datos almacenados. Aun cuando no exista redundancia, la base de datos


podra seguir conteniendo informacin incorrecta. Por ejemplo, un empleado
podra aparecer con 400 horas laboradas durante la semana, en lugar de 40; o
como parte de un departamento que no existe. Vale la pena sealar que la
integridad de los datos es an ms importante en un sistema de base de datos
que en un entorno de "archivos privados", precisamente porque los datos son
compartidos. Sin los controles apropiados sera posible que un usuario
actualizara la base de datos en forma incorrecta, generando as datos malos e
"infectando" a otros usuarios con esos datos
Las BD relacionales, per se, tienen tres reglas de integridad general o metareglas:
Claves primarias
Claves forneas
Pertinencia de los atributos a un dominio

Clave primaria
Una clave primaria es una clave nica elegida entre todas las candidatas que
define unvocamente a todos los dems atributos de la tabla, para especificar
los datos que sern relacionados con las dems tablas. La forma de hacer esto
es por medio de claves forneas. Slo puede existir una clave primaria por
tabla y ningn campo de dicha clave puede contener valores NULL

Clave fornea
Una clave fornea es una referencia a una clave en otra tabla, determina la
relacin existente en dos tablas. Las claves forneas no necesitan ser claves
nicas en la tabla donde estn y s a donde estn referenciadas.
Por ejemplo, el cdigo de departamento puede ser una clave fornea en la
tabla de empleados. Se permite que haya varios empleados en un mismo
departamento, pero habr uno y slo un departamento por cada clave distinta
de departamento en la tabla de empleados.

Unidad 3

Modelo de Entidad Relacin


El Modelo de Entidad Relacin es un modelo de datos basado en una
percepcin del mundo real que consiste en un conjunto de objetos bsicos

llamados entidades y relaciones entre estos objetos, implementndose en


forma grfica a travs del Diagrama Entidad Relacin.

Objetivos y cuestiones de diseo:

Proporcionar un modelo preciso de las necesidades de informacin de la


organizacin, que actuar como un marco de trabajo para el desarrollo
de sistemas nuevos o mejorados
Proporcionar un modelo independiente de cualquier almacenamiento de
datos y mtodos de acceso, que permita tomar decisiones objetivas para
las tcnicas de implementacin y la coexistencia con sistemas antiguos.
Descripcin concisa de los requisitos de informacin de los usuarios.
No incluyen detalles de implementacin.
Podra servir para comunicarse con usuarios NO tcnicos sobre el
contenido que tendr la BD

Entidad
Cosa u objeto con significado (real o imaginado) acerca de las necesidades de
informacin que se van a conocer o mantener

Relacin
Asociacin entre dos entidades
Tipos de relaciones
Relacin Uno a Uno: Cuando una entidad slo puede estar relacionado con una
nica entidad. En este caso la clave fornea se ubica en alguna de las 2 tablas.
Relacin Uno a Muchos: Cuando un registro de una tabla (tabla secundaria)
slo puede estar relacionado con un nico registro de la otra tabla (tabla
principal) y un registro de la tabla principal puede tener ms de un registro
relacionado en la tabla secundaria. En este caso la clave fornea se ubica en la
tabla secundaria.
Relacin Muchos a Muchos: Cuando un registro de una tabla puede estar
relacionado con ms de un registro de la otra tabla y viceversa. En este caso
las dos tablas no pueden estar relacionadas directamente, se tiene que aadir
una tabla entre las dos (Tabla dbil o de vinculacin) que incluya los pares de
valores relacionados entre s.

Atributo

Cualquier detalle que sirva para clarificar, identificar, clasificar, cuantificar o


expresar el estado de una entidad.
Los atributos compuestos se pueden dividir en subpartes ms pequeas,
que representan atributos ms bsicos con significados independientes.
Los atributos que no son divisibles se denominan atributos simples o
atmicos.
La mayora de los atributos tienen un solo valor para una entidad en particular;
dichos atributos reciben el nombre de monovalor o de un solo valor. Por
ejemplo, Edad es un atributo monovalor de una persona.
Puede que una persona no tenga ninguna licenciatura, otra puede que tenga
una, y una tercera persona puede que tenga dos o ms; por consiguiente,
diferentes personas pueden tener una cantidad de valores diferente para el
atributo Licenciaturas. Dichos atributos se denominan multivalor. Un atributo
multivalor puede tener lmites superior e inferior para restringir el nmero de
valores permitidos para cada entidad individual.

Identificador nico
Atributo nico o conjunto de atributos que identifican de forma inequvoca cada
instancia de una entidad

Diagrama entidad-relacin
La estructura lgica general de una base de datos puede expresarse en forma
grfica por medio de un diagrama ER que se integra con los siguientes
componentes:

Rectngulos: representan conjuntos de entidades.


Elipses: representan atributos.
Rombos: representa conjuntos de relaciones.
Lneas: conectan los atributos a los conjuntos de entidades, y los
conjuntos de entidades a los conjuntos de relaciones.

Unidad 5
Qu es la normalizacin
La normalizacin es el 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. Tambin se
puede entender la normalizacin como una serie de reglas que sirven para
ayudar a los diseadores de bases de datos a desarrollar un esquema que
minimice los problemas de lgica. Cada regla est basada en la que le

antecede. La normalizacin se adopt porque el viejo estilo de poner todos los


datos en un solo lugar, como un archivo o una tabla de la base de datos, era
ineficiente y conduca a errores de lgica cuando se trataban de manipular los
datos.
Otra ventaja de la normalizacin de base de datos es el consumo de espacio.
Una base de datos normalizada ocupa menos espacio en disco que una no
normalizada. Hay menos repeticin de datos, lo que tiene como consecuencia
un mucho menor uso de espacio en disco.
Dependencia funcional
Una dependencia funcional es una conexin entre uno o ms atributos. Por
ejemplo si se conoce el valor de DNI tiene una conexin con Apellido o Nombre.
Las dependencias funcionales del sistema se escriben utilizando una flecha, de
la siguiente manera:
Fecha De Nacimiento ------->Edad

De la normalizacin (lgica) a la implementacin (fsica o real) puede ser


sugerible tener estas dependencias funcionales para lograr la eficiencia en las
tablas.

Primera Forma Normal


Una tabla est en Primera Forma Normal si:
Todos los atributos son atmicos. Un atributo es atmico si los elementos del
dominio son simples e indivisibles.

La tabla contiene una clave primaria nica.


La clave primaria no contiene atributos nulos.
No debe existir variacin en el nmero de columnas.
Los Campos no clave deben identificarse por la clave (Dependencia
Funcional)
Debe Existir una independencia del orden tanto de las filas como de las
columnas, es decir, si los datos cambian de orden no deben cambiar sus
significados

Esta forma normal elimina los valores repetidos dentro de una Base de Datos.
Dicho de otra forma
Al examinar estos registros, podemos darnos cuenta que 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. Los pasos a seguir son:

Tenemos que eliminar los grupos repetidos.


Tenemos que crear una nueva tabla con la PK de la tabla base y el grupo
repetido.

Los registros quedan ahora conformados en dos tablas que llamaremos


RDENES y ARTICULOS_ORDENES

Segunda Forma Normal (2FN)


Dependencia Funcional. Una relacin est en 2FN si est en 1FN y si los
atributos que no forman parte de ninguna clave dependen de forma completa
de la clave principal. Es decir que no existen dependencias parciales. (Todos los
atributos que no son clave principal deben depender nicamente de la clave
principal).
Una dependencia parcial es un trmino que describe a aquellos datos que no
dependen de la llave primaria de la tabla para identificarlos.

Una vez alcanzado el nivel de la Segunda Forma Normal, se controlan la


mayora de los problemas de lgica. Podemos insertar un registro sin un exceso
de datos en la mayora de las tablas.

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.
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.
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.
Las tablas quedan ahora de la siguiente manera.

Tercera Forma Normal (3FN)

La tabla se encuentra en 3FN si es 2FN y si no existe ninguna dependencia


funcional transitiva entre los atributos que no son clave.
Cuando las tablas estn en la Tercera Forma Normal se previenen errores de
lgica cuando se insertan o borran registros. Cada columna en una tabla est
identificada de manera nica por la llave primaria, y no deben haber datos
repetidos. Esto provee un esquema limpio y elegante, que es fcil de trabajar y
expandir.
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.
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. Las nuevas
tablas CLIENTES y RDENES se muestran a continuacin.

Forma normal de Boyce-Codd (FNBC)


es una versin ligeramente ms fuerte de la Tercera forma normal (3FN). La
forma normal de Boyce-Codd requiere que no existan dependencias
funcionales no triviales de los atributos que no sean un conjunto de la clave

candidata. En una tabla en 3FN, todos los atributos dependen de una clave, de
la clave completa y de ninguna otra cosa excepto de la clave. Se dice que una
tabla est en FNBC si y solo si est en 3FN y cada dependencia funcional no
trivial tiene una clave candidata como determinante. En trminos menos
formales, una tabla est en FNBC si est en 3FN y los nicos determinantes son
claves candidatas.
Cuarta Forma Normal (4FN)
Asegura de que las dependencias multivaluadas independientes estn
correctas y eficientemente representadas en un diseo de base de datos. La
4NF es el siguiente nivel de normalizacin despus de la forma normal de
Boyce-Codd (BCNF).
La normalizacin de la base de datos se detiene tpicamente justo antes de la
4NF, quizs debido a una creencia que las tablas que violan la 4NF (pero que
hacen frente a todas las formas normales ms bajas) son raramente
encontradas en aplicaciones empresariales. Sin embargo, esta creencia puede
no ser exacta. Wu reporta que en un estudio de cuarenta bases de datos de
organizaciones, ms del 20% contena una o ms tablas que violaban la 4NF
mientras que satisfacen todas las formas normales ms bajas.

Por Ejemplo:

Cada fila indica que un


restaurante
dado
puede
entregar una variedad dada de pizza a un rea dada.
Note que debido a que la tabla tiene una clave nica y ningn atributo noclave, no viola ninguna forma normal hasta el BCNF. Pero debido a que las
variedades de pizza que un restaurante ofrece son independientes de las reas
a las cuales el restaurante enva, hay redundancia en la tabla: por ejemplo, nos
dicen tres veces que A1 Pizza ofrece la Corteza rellena, y si A1 Pizza comienza
a producir pizzas de Corteza de queso entonces necesitaremos agregar
mltiples registros, uno para cada una de las reas de envo de A1 Pizza. En
trminos formales, esto se describe como que Variedad de pizza est teniendo
una dependencia multivalor en Restaurante.
Para satisfacer la 4NF, debemos poner los hechos sobre las variedades de pizza
ofrecidas en una tabla diferente de los hechos sobre reas de envo:

Cuando un atributo comienza afectar el desempeo de una tabla es


recomendable ponerlo como una entidad.

Quinta forma normal (5FN)


Tambin conocida como forma normal de proyeccin-unin (PJ/NF), es un nivel
de normalizacin de bases de datos diseado para reducir redundancia en las
bases de datos relacionales que guardan hechos multi-valores aislando
semnticamente relaciones mltiples relacionadas. Una tabla se dice que est
en 5NF si y slo si est en 4NF y cada dependencia de unin (join) en ella es
implicada por las claves candidatas.

S-ar putea să vă placă și