Este documento introduce los conceptos básicos de las bases de datos. Explica que una base de datos es un conjunto de archivos que almacenan información de una organización para eliminar la redundancia. Describe los principales tipos de bases de datos, incluyendo jerárquicas, planas, en red y relacionales. Finalmente, resume los componentes clave de un sistema de base de datos como el hardware, software y datos.
2. Base de datos
Base de datos
Una base de datos es un archivo o conjunto de archivos
que contienen múltiples.
El contenido de una base de datos engloba a la
información concerniente (almacenadas en archivos) de
una organización, de tal manera que los datos estén
disponibles para los usuarios, una finalidad de la base
de datos es eliminar la redundancia o al menos
minimizarla.
Los tres componentes principales de un sistema de
base de datos son el hardware, el software DBMS y los
datos a manejar, así como los usuarios encargados de
la manipulación del sistema.
3. Base de datos
Tipos de bases de datos
Bases de datos Jerarquica
Bases de datos simples o planas
Bases de datos en red
Bases de datos relacionales
Bases de datos orientadas a objetos
4. Tipos de bases de datos
Bases de datos Jerárquicas
Son bases de datos que, como su nombre indica,
almacenan su información en una estructura
jerárquica. En este modelo los datos se organizan
en una forma similar a un árbol (visto al revés), en
donde un nodo padre de información puede tener
varios hijos. El nodo que no tiene padres se le
conoce como raíz, y a los nodos que no tienen
hijos se les conoce como hojas
Problemas del modelo jerárquico.
Duplicidad de registros
Integridad referencial.
Desnormalización
5. Tipos de bases de datos
Bases de dato simples o planas
Son aquellas que están formadas por una sola
tabla de datos. Este tipo de base de datos son
muy fáciles de crear y utilizar; por ejemplo para
crear y gestionar una agenda telefónica.
6. Tipos de bases de datos
Bases de datos en red
Se pueden considerar como de una potencia
intermedia entre el modelo relacional y el
jerárquico. Su estructura es bastante mas
compleja, con lo que se consigue evitar, al menos
en parte, los problemas del modelo jerárquico.
Problemas del modelo en red
Una restricción bastante importante de este
modelo, es que una ocurrencia de registro
miembro puede pertenecer como máximo a una
sola instancia de un determinado conjunto,
aunque puede participar en varios tipos de
conjuntos distintos.
7. Tipos de bases de datos
Bases de datos relacionales
Este modelo se caracteriza por almacenar
organizar los datos en forma de tabla, esta es una
forma habitual de organizar la información.
Conceptos básicos del modelo relacional
Tabla: conjunto de registros que tienen cierta
homogeneidad.
Registros: es cada una de las fichas que
componen una tabla.
Dominio: Conjunto de valores que puede tomar
cada uno de los atributos.
Relación: asociación entre tablas.
8. Tipos de bases de datos
Bases de datos orientadas a objetos
Este tipo es muy similar a las bases de datos
relacionales; sin embargo, se utilizan estructuras
de información llamadas “objetos”. Estas bases de
datos son mas flexibles.
Conceptos Fundamentales
Clase: tipo de dato definido por el usuario que
especifica un grupo de objetos que comparten las
mismas características.
Estado: Características propias de cada objeto.
Encapsulación: cada objeto es consistente con
sus características.
Mensaje: cada uno de los estímulos que se envía
cada objeto.
Herencia: toda jerarquía de tipo o clase que se
establece para facilitar la programación.
9. Arquitectura de un Sistema de Base de datos
Niveles o Abtracción de las
Nivel Interno: es el nivel más bajo de
bases de datos abstracción y el nivel real de los datos
almacenados. Este nivel lleva asociada
una representación de los datos, que es lo
que denominamos Esquema Físico.
Nivel Conceptual: es el correspondiente
a una visión de la base de datos desde el
punto de visto del mundo real. Incluye la
definición de los datos y las relaciones
entre ellos. Este nivel lleva asociado un
Esquema Conceptual.
Nivel de Externo: son partes del
esquema conceptual. El nivel conceptual
presenta toda la base de datos, mientras
que los usuarios, por lo general, sólo
tienen acceso a pequeñas parcelas de
ésta.
10. Sistemas Manejadores de Bases de datos
Para construir una base de datos en soporte informático con todas las
informaciones a almacenar (estructuras de datos, tablas, índices , etc…),
es necesario disponer de una herramienta que lo permita.
Sistemas Manejadores de Bases de datos
11. Lenguajes de los Sistemas de Gestión de Bases de Datos
Los SGBD deben ofrecer lenguajes e interfaces apropiadas para cada
tipo de usuario:
- Lenguaje de Definición de Datos (LDD)
- administradores de la base de datos.
- Lenguaje de Manipulación de Datos (LMD)
- Diseñadores.
- Lenguajes de Cuarta Generación (4GL)
- programadores de aplicaciones y usuarios finales.
12. Lenguaje de Definición de Datos (LDD)
Una vez finalizado el diseño conceptual de una base de datos y
escogido un SGBD para su implementación, el primer paso consiste en
especificar el esquema lógico y el esquema interno de la base de
datos, y la correspondencia entre ambos usando un LDD.
El SGBD posee un compilador de LDD cuya función consiste en
procesar las sentencias del lenguaje para identificar las descripciones
de los distintos elementos de los esquemas y almacenar la descripción
del esquema en el catálogo o diccionario de datos.
El diccionario contiene metadatos: describe los objetos de la base de
datos.
13. Lenguaje de Manipulación de Datos (LMD)
Una vez creados los esquemas de la base de datos, los usuarios necesitan un
lenguaje que les permita manipular los datos de la base de datos: realizar
consultas, inserciones, eliminaciones y modificaciones. Este lenguaje es el que
se denomina lenguaje de manejo de datos (LMD).
LMD procedural el usuario (normalmente será un programador) especifica qué
datos se necesitan y cómo hay que obtenerlos. Esto quiere decir que el usuario
debe especificar todas las operaciones de acceso a datos llamando a los
procedimientos necesarios para obtener la información requerida.
Estos lenguajes acceden a un registro, lo procesan y basándose en los
resultados obtenidos, acceden a otro registro, que también deben procesar. Así
se va accediendo a registros y se van procesando hasta que se obtienen los
datos deseados.
Las sentencias de un LMD procedural deben estar embebidas en un lenguaje de
alto nivel, ya que se necesitan sus estructuras (bucles, condicionales, etc.) para
obtener y procesar cada registro individual. A este lenguaje se le denomina
lenguaje anfitrión.
Las bases de datos jerárquicas y de red utilizan LMD procedurales.
14. Lenguajes de Cuarta Generación (4GL)
No existe consenso sobre lo que es un lenguaje de cuarta generación (4GL).
Lo que en un lenguaje de tercera generación (3GL) como C requiere cientos de líneas de
código, tan solo necesita diez o veinte líneas en un 4GL.
Comparado con un 3GL, que es procedural, un 4GL es un lenguaje no procedural: el
usuario define qué se debe hacer, no cómo debe hacerse.
Los 4GL se apoyan en unas herramientas de mucho más alto nivel denominadas
herramientas de cuarta generación. El usuario no debe definir los pasos a seguir en un
programa para realizar una determinada tarea, tan sólo debe definir una serie de
parámetros que estas herramientas utilizarán para generar un programa de aplicación. Se
dice que los 4GL pueden mejorar la productividad de los programadores en un factor de
10, aunque se limita el tipo de problemas que pueden resolver.
Los 4GL abarcan:
- Lenguajes de presentación, como lenguajes de consultas y generadores de informes.
- Lenguajes especializados, como hojas de cálculo.
- Generadores de aplicaciones que definen, insertan, actualizan y obtienen datos de la base de datos.
- Lenguajes de muy alto nivel que se utilizan para generar el código de la aplicación.
- Los lenguajes SQL y QBE son ejemplos de 4GL.
15. Modelos de datos
• Modelos lógicos basados en objetos: los dos más
extendidos son el modelo entidad-relación y el orientado
a objetos.
• El modelo entidad-relación (E-R) se basa en una
percepción del mundo compuesta por objetos,
llamados entidades, y relaciones entre ellos.
• El orientado a objetos donde los objetos se agrupan
en clases, relacionándose mediante el envío de
mensajes.
• Modelos lógicos basados en registros: estos modelos se usan
para especificar la estructura lógica global de la base de datos,
estructurada en registros de formato fijo de varios tipos.
• Modelos físicos de datos: muy poco usados, son el modelo
unificador y el de memoria de elementos. Algunos autores definen
estos modelos como "modelos de datos primitivos".
16. Bases de Datos
En el diseño de una base de datos, hay que tener en cuenta
distintas consideraciones, entre las que destacan:
• La velocidad de acceso
• El tamaño de la información
• El tipo de información
• La facilidad de acceso a la información
• La facilidad para extraer la información requerida
• El comportamiento del sistema de gestión de bases de
datos con cada tipo de información.