2. ¿Qué es una Base de Datos?
Una base de datos es un almacén para colecciones de datos o hechos
relacionados, ordenados en una estructura específica.
3. Sistemas de bases de datos frente a sistemas de
archivos
Una manera de mantener información en un computador es hacerlo
mediante un sistema de procesamiento de archivos típico o tradicional,
que permitirá tener a los archivos estructurados y organizados, y poder
realizar operaciones con ellos. Este sistema de archivos se mantiene
mediante un sistema operativo convencional.
Estos sistemas de archivos tiene una serie de inconvenientes
importantes:
4. Inconvenientes de los sistemas de
archivos
Redundancia e inconsistencia de datos. Existen datos que pueden
repetirse en diferentes lugares o archivos, esto provoca que, teniendo esa
duplicidad de datos, el almacenamiento y el costo (en recursos del sistema)
de acceso sean más altos. Inconsistencia de datos se presentará porque las
copias de los mismos datos en diferentes archivos pueden no coincidir.
Dificultad en el acceso a los datos. Cuando se requiere de ciertos datos
diferentes de archivos diferentes, la obtención, consulta y modificación de
los datos no puede hacerse directamente de forma práctica y eficiente.
Aislamiento de datos. Debido a que los datos están dispersos en varios
archivos, y los archivos pueden estar en diferentes formatos, es difícil
escribir nuevos programas de aplicación para recuperar los datos
apropiados.
5. Inconvenientes de los sistemas de
archivos
Problemas de integridad. Los valores de los datos almacenados en la BD
deben satisfacer ciertas restricciones de consistencia. Los desarrolladores
hacen cumplir estas restricciones en el sistema añadiendo código
apropiado en las diversas aplicaciones.
Problemas de atomicidad. En muchas aplicaciones es crucial asegurar
que, cuando ocurra un fallo y sea detectado, se restauren los datos a un
estado de consistencia que existía antes del fallo.
Anomalías en el acceso concurrente. En estos sistemas un entorno en
el que permita a múltiples usuarios actualizar los datos de un mismo archivo
simultáneamente puede dar lugar a datos inconsistentes o un estado
incorrecto.
Problemas de seguridad. No todos los usuarios de un sistema de bases
de datos deberían poder acceder a todos los datos.
6. Conceptos básicos de base de datos
Tablas. - Una tabla de base de datos es
similar en apariencia a una hoja de
cálculo en cuanto a que los datos se
almacenan en filas y columnas. Por
ende, es bastante fácil importar una hoja
de cálculo en una tabla de base de datos.
7. Conceptos básicos de base de datos
Formularios. - Los formularios permiten
crear una interfaz de usuario en la que
puede escribir y modificar datos. Los
formularios a menudo contienen
botones de comandos y otros controles
que realizan distintas tareas.
8. Conceptos básicos de base de datos
Informes. - Los informes se usan para
dar formato a los datos, resumirlos y
presentarlos. Por lo general, un informe
responde a una pregunta específica
como: "¿Cuánto dinero recibimos de
cada cliente este año?"
9. Conceptos básicos de base de datos
Consultas. - Las consultas pueden realizar
diversas funciones en una base de datos. La
función más común es recuperar datos
específicos de las tablas.
Debido a que muchas veces no quiere ver
todos los registros a la vez, las consultas le
permiten agregar criterios para "filtrar" los
datos y obtener solo los registros que
quiere.
10. Conceptos básicos de base de datos
Macros. - Es una serie de instrucciones que se almacenan para que se
puedan ejecutar de forma secuencial mediante una sola llamada u orden de
ejecución.
Módulos. - Los módulos, como las macros, son objetos que puede usar para
agregar funciones a la base de datos.
11. Visión de los datos.
Uno de los propósitos principales de un sistema de bases de datos es proporcionar a los
usuarios una visión abstracta de los datos.
Nivel Físico: Describe cómo se almacenan realmente los datos. Se describen en detalle
las estructuras de datos complejas de bajo nivel.
Nivel Lógico: Es el siguiente nivel más alto de abstracción. Describe que datos se
almacenan en la base de datos y qué relaciones existen entre esos datos. Los
administradores de bases de datos, que deben decidir la información que se mantiene
en la base de datos, usan el nivel lógico de abstracción.
Nivel deVistas: El nivel más alto de abstracción describe sólo parte de la base de datos
completa. Los usuarios que utilizan este nivel de abstracción tienen una gran
simplificación en su interacción con el sistema, ya que ven un conjunto de programas
de aplicación (vistas) que esconden los detalles de los tipos de datos.Además de
esconder detalles de nivel lógico también proporcionan un mecanismo de seguridad
para evitar que los usuarios accedan a ciertas partes, prohibidas para ellos, de la base
de datos.
12. Modelos de datos
Bajo la estructura de la base de datos se encuentra el modelo de datos:
una colección de herramientas conceptuales para describir los datos,
las relaciones, la semántica y las restricciones de consistencia.
Para ilustrar el concepto de un modelo de datos son usados dos
modelos; el modelo entidad-relación y el modelo relacional.
13. Modelo entidad-relación
Está basado en la precepción del mundo real que consta de una colección de objetos básicos
llamados entidades, y de relaciones entre estos objetos.
Una entidad es una cosa u objeto del mundo real que se distingue de otros objetos. Las
entidades se describen en una base de datos mediante un conjunto de atributos.
Una relación es una asociación entre varias entidades. Al conjunto de todas las entidades del
mismo tipo se le llama conjunto de entidades, y al conjunto de todas las relaciones del
mismo tipo se le llama conjunto de relaciones.
14. Modelo relacional
En el modelo relacional se utiliza un grupo de tablas para representar
los datos y las relaciones entre ellos. Cada tabla está compuesta por
varias columnas, y cada columna tiene un nombre único.
15. Otros modelos de datos
Modelo de datos orientado a objetos, que es una extensión del
modelo E-R con nociones de encapsulación, métodos o funciones, e
identidad de objetos.
Modelo de datos relacional orientado a objetos, que combina las
características del modelo de datos orientado a objetos y el modelo
de datos relacional.
16. Lenguajes de gestión de base de datos
Un sistema de base de datos proporciona un lenguaje de definición de datos (LDD)
para especificar el esquema de la base de datos y un lenguaje de manipulación de
datos (LMD) para expresar las consultas y las modificaciones a la base de datos.
El Lenguaje de definición de datos (LDD) sirve para especificar el esquema de la BD. El
objetivo del lenguaje es permitir especificar un conjunto de tablas, que se almacenan
en un archivo especial llamado diccionario de datos o directorio de datos. Esta
información son datos acerca de los datos, es decir, metadatos.
El Lenguaje de manipulación de datos (LMD) permite acceder y
manipular los datos organizados.
17. Sistema Gestor de Base de Datos “SGBD”
Es un sistema de software que permite la definición de bases de datos;
así como la elección de las estructuras de datos necesarios para el
almacenamiento y búsqueda de los datos, ya sea de forma interactiva o
a través de un lenguaje de programación. Un SGBD relacional es un
modelo de datos que facilita a los usuarios describir los datos que serán
almacenados en la base de datos junto con un grupo de operaciones
para manejar los datos.
18. Administrador de base de datos.
Una de las principales razones de usar SGBD es tener un control centralizado
tanto de los datos como de los programas que acceden a esos datos. La
persona que tiene este control central sobre el sistema se llama administrador
de la base de datos (ABD). Sus funciones incluyen:
Diseño y creación de esquemas.
Definición de estructuras y métodos de accesos.
Modificar los esquemas y la organización física, si fuera necesario.
Mantenimiento de usuarios: Crear cuentas, roles, conceder o revocar autorizaciones a los
usuarios para poder trabajar con los datos.
Mantenimientos rutinarios: copias de respaldo, comprobación de espacio ocupado en los
discos, comprobaciones de rendimiento.
19. Estructura de un sistema de bases de datos
Un sistema de bases de datos se divide en módulos que se encargan de
cada una de las responsabilidades del sistema completo. A grandes
rasgos se pueden dividir en los componentes gestor de
almacenamiento y procesador de consultas.
20. Estructura de un sistema de bases de datos
Gestor de almacenamiento
Proporciona la interfaz entre los datos de bajo nivel en la base de datos y los programas de aplicación
y consultas emitidas al sistema. Es responsable de la interacción con el gestor de archivos para
realizar el almacenamiento, recuperación y actualización de los datos en la base de datos.
Entre sus componentes se incluyen:
Gestor de autorización e integridad, comprobando que se satisfagan las restricciones de
integridad y la autorización de los usuarios para acceder a los datos.
Gestor de transacciones, asegura la consistencia de la base de datos a pesar de los fallos del
sistema, y controla las transacciones concurrentes.
Gestor de archivos, gestiona la reserva de espacio de almacenamiento de disco y las estructuras
de datos usadas para representar la información almacenada en disco.
Gestor de memoria intermedia, permite que la base de datos maneje tamaños de datos mucho
mayores que el tamaño de la memoria principal.
21. Estructura de un sistema de bases de datos
Procesador de consultas
Ayuda al sistema de bases de datos a simplificar y facilitar el acceso a los datos.
Sus componentes incluyen:
• Intérprete del LDD, interpreta las instrucciones del LDD y registra las definiciones en el
diccionario de datos.
• Compilador del LMD, traduce las instrucciones del LMD en un lenguaje de consultas a
instrucciones de bajo nivel que entiende el motor de evaluación de consultas. El compilador
del LMD también optimiza las consultas.
• Motor de evaluación de consultas, ejecuta las instrucciones de bajo nivel generadas por el
compilador del LMD.