Arquitectura de DBMS

Anuncio
Universidad Privada del Valle
Facultad De Tecnología
Ing. Industrial y de Sistemas
DISEÑO DE BASE DE DATOS I
Arquitectura de DBMS
NOMBRE:
Tatiana Vargas Vega
DOCENTE:
Ing. Marco Zarate
COCHABAMBA – BOLIVIA
Agosto, 2010
Uso de DBMS
Introducción
Definición
DBMS Database Management System
Colección de datos interrelacionados y un conjunto de programas para acceder a esos datos
Componentes de un DBMS



Data definition language (DDL):
Define elementos de los datos en la base de datos
Data manipulation language (DML):
Manipula datos para aplicaciones
Data dictionary:
Definiciones de todas las variables en la base
DBMS más populares
Ejemplos
Logo
Nombre
URL
Productos
Sybase
www.sybase.com
Adaptive
Server
Oracle
www.oracle.com
Oracle8,
Oracle8i,
Oracle8iEE
, Oracle9i,
Oracle 10g
PostgreSQ
L
www.postgresql.org
PostgreSQ
L
Microsoft
www.microsoft.com
Access,
MS-SQL
Server
MySQL
www.mysql.com
MySQL
Informix
www.informix.com
Illustra,
Universal
Server,
Dynamic
Server
IBM
www.ibm.com
DB2
Apache
http://db.apache.org/derby
Derby
SQLite
http://www.sqlite.org
SQLite
Firebird
http://firebird.sourceforge.n
et
Firebird
Arquitectura de un manejador de bases de datos (DBMS)
Una base de datos en ejecución consta de 3 cosas:

Archivos
o Control (ctl): almacenan información acerca de la estructura de archivos de
la base.
o 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.
o Redo (rdo): bitácora de toda transacción, en muchos dbms incluye todo tipo
de consulta incluyendo aquellas que no modifican los datos.
o Datos (dbf): el tipo más común, almacena la información que es accesada en
la base de datos.
o Indices (dbf) (dbi): archivos hermanos de los datos para acceso rápido.
o


Temp (tmp): localidades en disco dedicadas a operaciones de ordenamiento
o alguna actividad particular que requiera espacio temporal adicional.
Memoria
o 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
o Program Global Area (PGA): información del estado de
cursores/apuntadores
o User Global Area(UGA): información de sesión, espacio de stack
Procesos
o Threading
o 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.
o Process Monitor: limpia aquellos procesos que el usuario termina de manera
anormal, verificando consistencias, liberación de recursos, bloqueos.
o Database Writer: escribe bloques de datos modificados del buffer al disco,
aquellas transacciones que llegan a un estado de commit.
o Log Writer: escribe todo lo que se encuentra en el redo log buffer hacia el
redo file
o Checkpoint: sincroniza todo lo que se tenga en memoria, con sus
correspondientes archivos en disco
Instancia de una bd en Oracle
La arquitectura de un sistema de base de datos se basa en 3 niveles distintos:



nivel físico: es el nivel más bajo de abstracción y el nivel real de los datos
almacenados. Este nivel define cómo se almacenan los datos en el soporte físico, ya
sea en registros o de cualquier otra forma, así como los métodos de acceso. 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. Es decir se trata con la entidad u objeto representado,
sin importar como está representado o almacenado éste. Es la representación de los
datos realizada por la organización, que recoge los datos parciales de los
requerimientos de los diferentes usuarios y aplicaciones parciales. Incluye la
definición de los datos y las relaciones entre ellos. Este nivel lleva asociado un
Esquema Conceptual.
nivel de visión: 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. El nivel visión es el encargado de dividir estas parcelas.
Un ejemplo sería el caso del empleado de una organización que tiene acceso a la
visión de su nómina, pero no a la de sus compañeros. El esquema asociado a éste
nivel es el Esquema de Visión.
Este modelo de arquitectura permite establecer el principio de independencia de los datos,
ya se trate de una independencia lógica o física. La independencia lógica significa que los
cambios en el esquema lógico no deben afectar a los esquemas externos que no utilicen los
datos modificados; la independencia física significa que el esquema lógico no se va a ver
afectado por los cambios realizados en el esquema interno, correspondientes a modos de
acceso, etc.
Esquema de un DBMS
Lenguajes del DBMS
En la estructura básica de un Sistema Manejador de Base de Datos se enuncian dos
lenguajes que permiten trabajar sobre la base de datos. Estos lenguajes estandar son:

DDL (Data Definition language): Lenguaje de Definición de Datos. Por medio de
este el DBMS identifica las descripciones de los elementos de los esquemas y
almacena la descripción del esquema en el catálogo del DBMS.
Por medio de este el DBMS especifica el esquma conceptual e interno (Base de
datos Almacenada).

SDL (Store Definition language): Lenguaje de definición de almacenamiento. Es
utilizado por el DBMS para especificar el esquema interno que corresponde a la
Base de Datos Almacenada.

VDL (View Definition language): Lenguaje de Definición de Vistas. Es utilizado
por el DBMS para especificar las vistas del usuario y sus correspondiencias con el
esquema conceptual.
En las Bases de Datos Relacionales, el SQL, representa una combinación de los anteriores.

DML (Data Manipulation language): Lenguaje de Manipulación de Datos.
Permite la manipulación de las operaciones de Inserción, Eliminación y
Modificación.
o Tipos de DML's:
 De alto Nivel o No por procedimientos: SQL.
 De bajo Nivel o por procedimientos.
Bibliografía
http://ict.udlap.mx/people/carlos/is341/bases06.html
http://www.unalmed.edu.co/~mstabare/Dbms.htm#Esquema%20de%20un%20DBMS
Descargar