1. CARACTERISTICAS DBMS
• Bases de datos jerárquicos: los datos se organizan en grupos unidos entre ellos
por relaciones de “posesión”, en las que un conjunto de datos puede tener
otros conjuntos de datos, pero un conjunto puede pertenecer sólo a otro conjunto.
La estructura resultante es un árbol de conjuntos de datos.
• Bases de datos reticulares: el modelo reticular es muy parecido al jerárquico, y
de hecho nace como una extensión de este último. También en este modelo
conjuntos de datos están unidos por relaciones de posesión, pero cada conjunto
de datos puede pertenecer a uno o más conjuntos.
• Bases de datos relacionales: las bases de datos que pertenecen a esta
categoría se basan en el modelo relaciones, cuya estructura principal es la
relación, es decir una tabla bidimensional compuesta por líneas y columnas. Cada
línea, que en terminología relacional se llama tupla, representa una entidad que
nosotros queremos memorizar en la base de datos. las características de cada
entidad están definidas por las columnas de las relaciones, que se llaman
atributos. Entidades con características comunes, es decir descritas por el mismo
conjunto de atributos, formarán parte de la misma relación.
• Base de datos por objetos (object-oriented): el esquema de una base de datos
por objetos está representado por un conjunto de clases que definen las
características y el comportamiento de los objetos que poblarán la base de datos.
La diferencia principal respecto a los modelos examinados hasta ahora es la no
positividad de los datos. En efecto, con una base de datos tradicional (entendiendo
con este término cualquier base de datos no por objetos), las operaciones que se
tienen que efectuar en los datos se les piden a las aplicaciones que los usan. Con
una base de datos object-oriented, al contrario, los objetos memorizados en la
base de datos contienen tanto los datos como las operaciones posibles con tales
datos. En cierto sentido, se podrá pensar en los objetos como en datos a los que
se les ha puesto una inyección de inteligencia que les permite saber cómo
comportarse, sin tener que apoyarse en aplicaciones externas.
2. Otras características q se presentan en las DBMS son:
• Control de la redundancia de datos: Este consiste en lograr una mínima
cantidad de espacio de almacenamiento para almacenar los datos evitando la
duplicación de la información.
• Compartimento de datos: Una de las principales características de las bases de
datos, es que los datos pueden ser compartidos entre muchos usuarios
simultáneamente, proveyendo, de esta manera, máxima eficiencia.
• Mantenimiento de la integridad: La integridad de los datos es la que garantiza la
precisión o exactitud de la información contenida en una base de datos..
• Soporte para el control de transacciones y recuperación de fallas Las
transacciones deben ser controladas de manera que no alteren la integridad de la
base de datos. La recuperación de fallas tiene que ver con la capacidad de un
sistema DBMS de recuperar la información que se haya perdido durante una falla
en el software o en el hardware.
• Independencia de los datos: En las aplicaciones basadas en archivos, el
programa de aplicación debe conocer tanto la organización de los datos como las
técnicas que el permiten acceder a los datos. En los sistemas DBMS los
programas de aplicación no necesitan conocer la organización de los datos en el
disco duro. Este totalmente independiente de ello.
• Seguridad:La disponibilidad de los datos puede ser restringida a ciertos usuarios.
Según los privilegios que posea cada usuario de la base de datos, podrá acceder
a mayor información que otros.
• Velocidad:Los sistemas DBMS modernos poseen altas velocidades de respuesta
y proceso.
• Independencia del hardware: La mayoría de los sistemas DBMS están
disponibles para ser instalados en múltiples plataformas de hardware.
Los sistemas de bases de datos relacionales RDBMS (RelationalDatabase Management
System, por sus siglas en Inglés) tales como Oracle, MySQL, SQL Server, PostgreSQL,
3. Informix, entre otros, le permiten ejecutar las tareas que se mencionan a continuación, de
una forma entendible y razonablemente sencilla:Le permiten ingresar datos al sistema, le
permiten almacenar los datos, le permiten recuperar los datos y trabajar con ellos,
le proveen herramientas para capturar, editar y manipular datos, le permiten aplicar
seguridad, le permiten crear reportes e informes con los datos.
COMPONENTES DE UN DBMS
• Procesador de consulta: interacciona con el usuario mediante sentencias
especificas en un lenguaje de consulta . SQL ( lenguaje de consulta secuencial).
• Método de acceso:El procesador de consulta tiene que poder accesar los datos
requeridos en el menor tiempo posible, estos métodos se pueden clasificar en dos
grupos: ISAM (Método de acceso secuencial indexado), HASHING
(Transformación de clave).
• Editores de informes: Son herramientas que proporcionan mecanismos para
mejorar el formato por defecto de consulta. El procesador de consulta obtiene los
datos requeridos y el editor de informes toma como entrada estos datos y la
especificación de un formato para producir un informe formateado.
• Generador de formatos: Los formatos producen una interfaz amigable al usuario
para añadir, borrar, actualizar y recuperar información de la base de datos, los
generadores de los formatos toman como entrada un archivo de especificación
que describen el formato de tablas y columnas de las bases de datos con el
formato que va a interactuar, un conjunto de reglas de validación para los datos,
mensajes de error, etc…
• Generador es de menú: Es una herramienta que sirve para generar menús.
• Interfaz con el lenguaje host: Es una interfaz que permite al sistema Host o
cualquier otro sistema simular instrucciones del Sistema Operativo.
• Procesador de transacciones: Tiene como objetivo las cuestiones referentes a la
integridad de bases de datos, recuperación y control de la concurrencia.
• Diccionario de datos: Almacena información sobre las tablas y columnas en la
base de datos, los métodos de acceso empleados, los privilegios de acceso, etc…
ARQUITECTURA DE UN DBMS
Una base de datos en ejecución consta de 3 cosas:
4. ARCHIVOS:
• Control (ctl): almacenan información acerca de la estructura de archivos de la
base.
• Rollback (rbs): cuando se modifica el valor de alguna tupla en una transacción,
los valores nuevos y anteriores se almacenan en un archivo, de modo que si
ocurre algún error, se puede regresar (rollback) a un estado anterior.
• Redo (rdo): bitácora de toda transacción, en muchos dbms incluye todo tipo de
consulta incluyendo aquellas que no modifican los datos.
• Datos (dbf): el tipo más común, almacena la información que es accesada en la
base de datos.
• Indices (dbf) (dbi): archivos hermanos de los datos para acceso rápido.
• Temp (tmp): localidades en disco dedicadas a operaciones de ordenamiento o
alguna actividad particular que requiera espacio temporal adicional.
MEMORIA
• Shared Global Area (SGA): es el área más grande de memoria y quizás el más
importante
• Shared Pool: es una caché que mejora el rendimiento ya que almacena parte del
diccionario de datos y el parsing de algunas consultas en SQL
• Redo Log Buffer: contiene un registro de todas las transacciones dentro de la
base, las cuales se almacenan en el respectivo archivo de Redo y en caso de
siniestro se vuelven a ejecutar aquellos cambios que aún no se hayan reflejado en
el archivo de datos (commit).
• Large Pool: espacio adicional, generalmente usado en casos de multithreading y
esclavos de I/O.
• Java Pool: usado principalmente para almacenar objetos Java
• Program Global Area (PGA): información del estado de cursores/apuntadores
5. • User Global Area(UGA): información de sesión, espacio de stack.
PROCESOS
• Threading
• System Monitor: despierta periódicamente y realiza algunas actividades entre las
que se encuentran la recuperación de errores, recuperación de espacio libre en
tablespaces y en segmentos temporales.
• Process Monitor: limpia aquellos procesos que el usuario termina de manera
anormal, verificando consistencias, liberación de recursos, bloqueos.
• DatabaseWriter: escribe bloques de datos modificados del buffer al disco,
aquellas transacciones que llegan a un estado de commit.
• Log Writer: escribe todo lo que se encuentra en el redo log buffer hacia el redo file
• Checkpoint: sincroniza todo lo que se tenga en memoria, con sus
correspondientes archivos en disco
Las partes utilizadas para ejemplificar la arquitectura se refieren a Oracle.
6. • User Global Area(UGA): información de sesión, espacio de stack.
PROCESOS
• Threading
• System Monitor: despierta periódicamente y realiza algunas actividades entre las
que se encuentran la recuperación de errores, recuperación de espacio libre en
tablespaces y en segmentos temporales.
• Process Monitor: limpia aquellos procesos que el usuario termina de manera
anormal, verificando consistencias, liberación de recursos, bloqueos.
• DatabaseWriter: escribe bloques de datos modificados del buffer al disco,
aquellas transacciones que llegan a un estado de commit.
• Log Writer: escribe todo lo que se encuentra en el redo log buffer hacia el redo file
• Checkpoint: sincroniza todo lo que se tenga en memoria, con sus
correspondientes archivos en disco
Las partes utilizadas para ejemplificar la arquitectura se refieren a Oracle.