Академический Документы
Профессиональный Документы
Культура Документы
Base de datos
Archivos y bases de datos
Introduccin
1. Archivos
Definicin: Un archivo o fichero es una coleccin de registros, que contienen datos lgicamente
relacionados.
Los archivos pueden ser utilizados por sistemas de informacin manuales o por sistemas de
informacin computacionales o informticos.
Corresponde a los sistemas que utilizan herramientas digitales para guardar y manipular su
informacin, como por ejemplo planillas Excel o documentos Word.
Nota: A pesar de que estos sistemas ocupen herramientas tecnolgicas para apoyar sus
operaciones, no son sistemas informticos o computacionales, dado que la informacin no se
procesa de forma automtica.
Ejemplo
Una universidad, cuenta con un sistema de informacin para apoyar el proceso acadmico de sus
alumnos, donde se utilizan planillas Excel para guardar y manipular la informacin de: los alumnos,
carreras, asignaturas, profesores, matrculas, etc.
Segn la imagen anterior, se guarda la informacin de cada elemento en una pestaa diferente de
la planilla. Al momento de establecer relaciones entre los elementos, como por ejemplo la de
alumno con carrera (marcado en rojo), esto se guarda en otra pestaa y pasa lo mismo con todas
las dems relaciones.
Esto podra ocasionar duplicidad de informacin, en el caso de que se vuelvan a digitar los datos de
los alumnos y carreras en la pestaa que relaciona ambos tems(alumnos_carrera). Tambin para
algunos usuarios podra ser complicado interpretar la informacin.
Corresponde a los sistemas que poseen programas informticos que guardan y manipulan la
informacin a travs de archivos, como por ejemplo archivos txt. Los programas informticos
escritos en los lenguajes de programacin C, cobol o pascal, se caracterizan por tener este manejo
de archivos.
En los aos 60, estos sistemas fueron uno de los primeros intentos de automatizacin para los
sistemas de informacin manuales. Los que nacieron para dar respuesta a la necesidad que tenan
los departamentos de la empresa para acceder de forma ms eficiente a la informacin. Por lo que
se empezaron a desarrollar sistemas informticos de archivos propios para cada departamento.
Ejemplo
propiedad
cliente
venta
propiedad
cliente
contrato de arriendo
Estos departamentos cuentan con programas informticos propios para gestionar su informacin,
tal como se muestra en la siguiente imagen.
Donde podemos ver, que cada departamento accede a sus propios archivos utilizando programas
informticos escritos especialmente para ellos. Cada aplicacin se encarga de gestionar la
introduccin de los datos, el mantenimiento de los archivos y la generacin de un conjunto de
informes especficos. La estructura fsica y el almacenamiento de los archivos lo determina cada
programa informtico (manipulacin del archivo depende por completo del programa).
Esta forma de operar puede traer como consecuencia que existan: datos duplicados y redundantes,
distintos formatos para los mismos datos y distinta forma de acceder a la informacin por cada
departamento.
Problemas de archivos:
Aislamiento de datos: cuando los datos estn ubicados en archivos distintos, resulta difcil poder
cruzar la informacin.
Redundancia o duplicidad de datos: esto se da cuando se registran los mismos datos en distintos
archivos.
Rigidez de bsqueda: el archivo se crea para acceder a los datos de una determinada forma. Es
complejo combinar distintas formas de bsqueda. Por cada nueva consulta requerida, se crean
nuevos archivos y nuevos programas para acceder a ellos, lo cual ocasiona que se generen
muchos programas, costosos de mantener en el tiempo.
Dependencia lgica y fsica de los datos: la definicin de los datos la otorga el programa
informtico, en lugar de almacenarse de forma separada e independiente.
2. Base de datos
Las bases de datos surgen como alternativa a los archivos, intentando eliminar o reducir sus
inconvenientes.
Definicin: Una base de datos es una coleccin compartida de datos lgicamente relacionados, junto
con la descripcin de estos datos, que estn diseados para satisfacer las necesidades de
informacin de una organizacin. Una base de datos se aloja en el hardware de almacenamiento
del equipo, tal como un disco duro y se administra a travs del software llamado sistema de gestin
de base de datos (SGBD).
Acceso mltiple: los datos pueden ser manipulador por diversos usuarios a la vez, sin que se
produzcan conflictos ni salidas incoherentes.
Independencia fsica: se puede cambiar el soporte fsico de la base de datos, el disco duro, por
ejemplo, sin que eso repercuta en la base de datos ni en los programan que la usan.
Independencia lgica: capacidad de que se puedan modificar los datos contenidos en una base
de datos, su estructura y relaciones, sin afectar o afectando lo mnimo a los programas
informticos que los usen.
Lenguaje de programacin de alto nivel (SQL): existe una forma sencilla y estndar de crear,
manipular y consultar la base de datos (querys), esto es a travs del lenguaje de programacin
llamado SQL.
Definicin: Un sistema de gestin de base de datos (tambin llamado motor de base de datos), es
un software que permite a los usuarios mantener (guardar, actualizar, eliminar) y manipular una
base de datos, adems se encarga de su seguridad y confidencialidad.
El SGBD es el software que interacta entre el programa informtico y la base de datos, tal como se
muestra en la siguiente imagen.
Donde, la base de datos se accede a travs del sistema de gestin de base de datos y este a su vez
interacta con los usuarios por medio de un programa informtico.
Funciones principales SGBD
Definir base de datos (DDL: Data Definition Languaje): Lenguaje de definicin de datos. Permite
crear las tablas de la base de datos, donde se crea la estructura de las tablas, sus tipos de datos
y sus restricciones.
Lenguaje de consulta (SQL): Permite buscar la informacin dentro de la base de datos, mediante
un lenguaje estndar de consulta llamado SQL (Structured Query Languaje), el cual resuelve el
problema de complejidad en la bsqueda y cruce de la informacin que exista en el sistema de
archivos.
Nota: los lenguajes DDL y DML tambin estn escritos en lenguaje SQL.
Sistema integridad: Este control permite mantiene la coherencia de los datos. Por ejemplo, en
una tabla donde estn definidas correctamente sus claves primarias y forneas, si se intenta
transgredir uno de sus principios, como el de insertar datos duplicados (por ejemplo), el SGBD
enva un error y no deja completar la operacin.
SQL Server: SGBD perteneciente a Microsoft. Es un SGBD destinado a las grandes organizaciones
y compite con Oracle. La universidad del Bio-Bio cuenta con este SGBD.
Microsoft Access: No es tan completo como Oracle o SQL Server, es un componente de la suite
ofimtica Office de Microsoft y permite gestionar bases de datos personales de pequeas y
medianas organizaciones.
Utilizar bases de datos ofrece muchas ventajas con respecto a los archivos. Sin embargo, esto trae
consigo algunas desventajas.
Requiere personal calificado, debido a la dificultad del manejo de este tipo de sistemas. Esto
requiere contratar los servicios de profesionales de la tecnologa de la informacin.
Su uso es de mediano-largo plazo, dado que es costoso implementar una base de datos (tanto
en tiempo como en dinero), esta no estar operativa en el corto plazo.
Permisos: Se encarga de dar o quitar los permisos a los usuarios, para consultar, ingresar,
actualizar o eliminar los datos de la base de datos.
Generar consultas e informes: Se encarga de generar en forma eficiente, las consultas e informes
solicitados por los usuarios o por los otros profesionales informticos, anlisis que por lo general
considera un gran volumen de informacin y la integracin entre varios elementos.
Arquitectura de bases de datos
a. OLTP (online transactional processing): Los sistemas OLTP son bases de datos orientadas al
procesamiento de transacciones, como las provenientes de un sistema de informacin
transaccional (TPS). Donde el sistema de base de datos debe ser capaz de soportar un gran
volumen de transacciones y mantener la coherencia de los datos.
Como ejemplos se pueden citar las operaciones en un supermercado, las reservas areas, las
operaciones bancarias, las ventas de las grandes tiendas.
b. OLAP (online analytical processing): Los sistemas OLAP son bases de datos orientadas al
procesamiento analtico.
Este anlisis suele implicar, la lectura de grandes cantidades de datos para llegar a extraer algn
tipo de informacin til: tendencias de ventas, patrones de comportamiento de los
consumidores, elaboracin de informes complejos. etc.
Este sistema es el que se utiliza en las herramientas de inteligencia de negocios, como el
DataMining (minera de datos).
El uso de las bases de datos permite generar la informacin que se utilizar como entrada para el
anlisis de inteligencia de negocios. Dicha informacin no podra ser tomada desde un sistema
basado en archivos, dado que esta informacin no es confiable, esta podra poseer problemas de
integridad, duplicidad, seguridad. etc.
Existen las siguientes tcnicas y tipos de bases de datos para gestionar la inteligencia de negocios,
las cuales son:
Definicin: La minera de datos es el conjunto de tcnicas que permiten explorar grandes bases de
datos, de manera automtica o semiautomtica, con el objetivo de encontrar patrones repetitivos,
tendencias o reglas que expliquen el comportamiento de dichos datos en un contexto.
Un ejemplo clsico de aplicacin de la minera de datos tiene que ver con la deteccin de hbitos
de compra en supermercados. Un estudio detect que los viernes haba una cantidad
inusualmente elevada de clientes que adquiran a la vez paales y cerveza. Se detect que se deba
a que dicho da solan acudir al supermercado padres jvenes cuya perspectiva para el fin de
semana consista en quedarse en casa cuidando de su hijo y viendo la televisin con una cerveza
en la mano. El supermercado pudo incrementar sus ventas de cerveza, ubicndolas prximas a los
paales.
b. Tipos de bases de datos
Existen los siguientes tipos de base de datos, las cuales se basan en la arquitectura OLAP. Su objetivo
es apoyar la depuracin de informacin en la minera de datos.
Definicin: Un Datawarehouse es una base de datos corporativa que se caracteriza por integrar y
depurar grandes volmenes de informacin proveniente de una o ms fuentes distintas, para luego
procesarla permitiendo su anlisis desde infinidad de perspectivas y con grandes velocidades de
respuesta.
Su implementacin es costosa.
Definicin: Un Datamart es una base de datos que es un subconjunto del Datawarehouse. Es una
base de datos departamental, especializada en el almacenamiento de los datos de un rea funcional
especfica de la organizacin. Su objetivo es hacer ms eficiente el anlisis de datos, tomando solo
lo referente a cada departamento.
En una empresa pueden existir muchos DataMart, uno por cada departamento.
II. Modelamiento de la base de datos
Definicin modelo de datos: Un modelo de datos representa la estructura lgica de las bases de
datos, incluidas las relaciones y limitaciones que determinan como se almacenan los datos y como
se accede a ellos. Existen modelos de datos en los niveles conceptual y lgico
Al momento de realizar el diseo se debe pensar primero en los datos y sus relaciones y luego en
los programas informticos que le darn apoyo. Esto ltimo era el gran problema del sistema de
archivos, donde se pensaba en el programa solamente, lo que ocasionaba que los datos
dependieran fuertemente de las aplicaciones.
El diseo de la base de datos est dentro del proceso de desarrollo de software. En la siguiente
imagen se expone a grandes rasgos las actividades de dicho proceso.
1. Identificar la necesidad de
informacin
usuario
3. Establecer los
requerimientos funcionales
del SI
Analista
Base de datos Programa informtico
9.Implementar programa
5.Realizar diseo conceptual
informtico
Modelo de datos conceptual (MER) Programador
Diseo de base de datos
DML, SQL
Base de
Datos
Donde:
1. Diseo Conceptual
En esta etapa se crea el modelo de datos conceptual de la base de datos. Se genera el modelo
entidad relacin (MER)
Definicin: El modelo de entidad relacin es un modelo de datos basado en una percepcin del
mundo real, el cual se conforma de objetos llamados entidades y de relaciones. Permite representar
de forma grfica como se relacionan las entidades entre s.
El MER nos permite describir los datos involucrados en una organizacin del mundo real en trminos
de objetos y sus relaciones.
El MER aporta conceptos tiles que permite representar una situacin informal, indicada por los
usuarios a otra ms detallada que posteriormente se pueda implementar en la base de datos.
Preguntas a resolver:
Cules son las restricciones de integridad o reglas de negocio que deberan ser impuestas por
la base de datos?
Ejemplo
Segn la imagen anterior, existe la entidad alumno, la cual almacena los atributos rut y nombre del
alumno y por otro lado existe la entidad carrera, que almacena el cdigo y nombre de la carrera.
Ambas entidades estn unidas a travs de la relacin estudia y se lee de la siguiente forma:
Conceptos
a. Entidad
Una entidad es una cosa u objeto del mundo real, que es distinguible de todos los dems objetos y
de la cual es necesario almacenar sus caractersticas.
Tipos de entidad:
Entidad dbil: cuya existencia depende de otra entidad. No tiene significado por si sola.
Ejemplo: la matrcula del alumno.
b. Instancia o registro de una entidad
Ejemplo: los alumnos con rut: 11.111.111-1 y 22.222.222-2 son instancias de la entidad alumno.
c. Atributo
Ejemplo: los atributos de la entidad alumno son: rut, nombre, fecha de nacimiento, etc.
clave primaria: atributo o conjunto de ellos que permite identificar de forma nica la instancia
de una entidad.
Ejemplo: el rut es nico por alumno.
Atributo derivado: representa un valor que se puede obtener del valor de otro atributo o
conjunto de ellos.
Ejemplo: el atributo edad, se puede calcular a partir de la fecha de nacimiento del alumno.
Atributo univaluado: contiene un nico valor para cada instancia de una entidad. La mayora de
los atributos son de este tipo.
Ejemplo: rut del alumno, nombre.
Atributo multivaluado: contiene mltiples valores para cada instancia de una entidad.
Ejemplo: una carrera posee mltiples secciones, un alumno puede poseer muchas direcciones.
Por composicin
Asociacin significativa entre entidades. Se debe leer la relacin en ambos sentidos, de izquierda a
derecha y de derecha a izquierda.
Las relaciones tambin pueden poseer atributos, donde se almacenar la informacin que naci a
partir de la relacin.
Ejemplo:
Existen las entidades alumno y curso, ambas estn relacionadas a travs de la relacin inscrito.
Alumno posee los atributos rut y nombre. Curso posee los atributos cdigo y nombre. La relacin
inscrito posee los atributos ao y periodo.
Corresponde al nmero de veces que estn relacionadas las instancias de las entidades. Se debe
evaluar en ambos sentidos de la relacin.
La cardinalidad tiene el formato (rango mnimo: rango mximo), donde cada parmetro representa:
rango mnimo: cantidad mnima de veces que est relacionada la entidad 1 con la entidad 2.
rango mximo: cantidad mxima de veces que est relacionada la entidad 1 con la entidad 2.
Tipos de Cardinalidad:
Relacin uno a uno (1:1): define que cada instancia de la entidad A est relacionada con solo
una instancia de la entidad B.
Parmetros:
rango mnimo: 1-> Cada instancia de A est relacionada con al menos una instancia de B.
Esto indica que todas las instancias de A deben estar relacionadas con al menos una
instancia de B.
rango mximo: 1-> Cada instancia de A est relacionada con solo una instancia de B.
Conclusin: todas las instancias de A deben estar relacionadas con solo 1 instancia de B.
Calculo
Profesor 1
Algebra
Profesor 2
Modelamiento
ASIGNATURA PROFESOR
Podemos ver que todas las instancias de la asignatura estn relacionadas con solo una instancia
de profesor.
Nota: desde el sentido de derecha a izquierda un profesor puede dictar muchas asignaturas,
pero ese es el otro sentido, estamos analizando el sentido izquierda-derecha.
Relacin cero a uno (0:1): define que una instancia de la entidad A puede estar relacionada en
forma optativa con una instancia de la entidad B.
Parmetros:
rango mnimo: 0 -> Pueden existir instancias de la entidad A que no estn relacionadas con
la entidad B
rango mximo: 1-> Si existe relacin entre la entidad A y la entidad B, est es nica.
Pepe
Pasanta 1
Gonzalo
Pasanta 2
Javiera
ALUMNO PASANTIA
Relacin uno a muchos (1, *), (1, n): define que una instancia de la entidad A puede estar
relacionada con una o varias instancias de la entidad B.
Parmetros:
rango mnimo: 1 -> Cada instancia de la entidad A est relacionada con al menos una
instancia de la entidad B.
rango mximo: n-> la instancia de la entidad A est relacionada con 1 o muchas instancias
de B.
Pepe BD
Gonzalo Clculo
Javiera Algebra
ALUMNO ASIGNATURA
Pepe cursa la asignatura BD y Clculo, mientras que Gonzalo cursa la asignatura Clculo y
Algebra, en cambio Javiera est cursando solo Algebra.
Relacin 0 a muchos (0, *), (0, n): define que una instancia de la entidad A puede estar
relacionada en forma optativa con una o varias instancias de la entidad B.
Parmetros:
rango mnimo: 0 -> Pueden existir instancias de la entidad A que no estn relacionadas con
la entidad B.
rango mximo: n-> cuando existe la relacin, la instancia de la entidad A est relacionada
con 1 o muchas instancias de B.
Pepe
Ttulo ICI
Gonzalo
Ttulo ICA
Javiera
ALUMNO TITULO
Pepe tiene el ttulo de ICI y el de ICA, mientras que Gonzalo tiene el ttulo de ICA. Javiera no
posee ningn ttulo universitario porque perdi la carrera.
Relaciones unarias o recursivas
Corresponde a la entidad que posee una relacin que se vincula consigo misma.
(0,n)
En la siguiente tabla se resume como se representan todos los elementos del modelo entidad
relacin:
Elemento Nomenclatura
entidad rectngulo
atributo elipse
relacin rombo
uno a uno (1 , 1)
cero a uno (0 , 1)
cardinalidad
uno a muchos (1 , n) o (1,*)
cero a muchos (0 , n) o (0,*)
Ejemplo en clases
La unidad de registro acadmico de la universidad del Bo-Bo desea disear una base de datos para
administrar el proceso acadmico de sus alumnos. Para ello tiene los siguientes requisitos de
informacin:
nombres ciudad
nombre direccion codigo nombre
matricula
rut
(1,n)
fecha_nacimiento (1,n) ao periodo
(1,n)
(1,1)
codigo nombre
posee
calificacion
(1,n)
(1,n) ponderacion
rinde evaluacion
nombre
codigo
Tarea en clases
Objetivos
La corredora necesita mantener un registro de quienes han arrendado las casas que ofrece.
La corredora a menudo desea conocer cunto tiempo ha estado arrendada una propiedad,
y cuanto tiempo ha estado sin arrendatario.
En esta etapa se traduce el modelo de datos conceptual MER en un modelo de datos lgico.
El modelo de datos lgico se caracteriza por poseer ms detalles tcnicos con respecto al MER, lo
que es necesario para luego implementar la base de datos fsica. A pesar de poseer ms tecnicismos,
este modelo sigue siendo independiente del SGBD a utilizar.
a. Modelo jerrquico: es un modelo de datos en el cual los datos estn organizados en una
estructura parecida a un rbol. Donde, un nodo padre de informacin puede tener varios hijos.
El nodo que no tiene padres es llamado raz, y a los nodos que no tienen hijos se los conoce
como hojas.
b. Modelo en red: es un modelo de datos concebido como un modo flexible para representar los
objetos y sus relaciones. Representa una mejora con respecto al jerrquico, donde un nodo
puede tener ms de un padre.
c. Modelo relacional (MR): este modelo se basa en el uso de tablas, tambin llamadas relaciones.
Las tablas se representan grficamente como una estructura rectangular formada por filas y
columnas. No importa el orden de los datos, a diferencia de otros modelos como el jerrquico y
el de red.
El modelo relacional tiene la considerable ventaja de que es ms fcil de entender y de utilizar
por un usuario no experto, adems de que representa con mayor fidelidad la realidad del flujo
de informacin de la organizacin. Esto hace que a nivel mundial sea el modelo de datos ms
utilizado.
Este modelo utilizaremos.
Conceptos:
Restricciones de integridad:
No pueden existir 2 filas con la misma clave primaria en una tabla. Ejemplo: no pueden
existir 2 alumnos con el mismo rut.
No pueden existir claves primarias o claves forneas nulas.
Integridad referencial: Una clave fornea debe existir como llave primaria en otra tabla.
Consideraciones generales:
Todas las entidades con sus respectivos atributos se convierten en tablas y campos
respectivamente.
Se heredan los nombres originales de las entidades, atributos y relaciones.
Los nombres de las claves primarias de las tablas deben ser nicos en el modelo, por lo que se
recomienda que cada campo de la tabla tenga como nombre un prefijo de 3 letras que
represente el nombre de la tabla. Ejemplo: carrera->car_codigo, car_nombre. Etc.
Se debe especificar el dominio o tipo de dato del campo.