You are on page 1of 24

Caractersticas de los DBMS

Introduccin

La consecucin de trabajos del grupo ANSI culmin en marzo de 1986 al presentar el Modelo de referencia para la estandarizacin de los SGBD. Se define como Modelo de Referencia a una estructura conceptual para la estandarizacin de los SGBD, en la que se identifican una serie de componentes y se establece cmo interrelacionan entre ellos.

Los objetivos a cumplir por este Modelo de Referencia son:

Establecer un Marco comn para la descripcin de los SGBD. Lograr una Estandarizacin para impulsar la compatibilidad de los distintos componentes de los SGBD facilitando su comparacin y evaluacin

MySQL

Es un sistema de gestin de bases de datos relacional, multihilo y multiusuario con ms de seis millones de instalaciones. MySQL ABdesde enero de 2008 una subsidiaria de Sun Microsystems y sta a su vez de Oracle Corporation desde abril de 2009 desarrolla MySQL como software libre en un esquema de licenciamiento dual.

Por un lado se ofrece bajo la GNU GPL para cualquier uso compatible con esta licencia, pero para aquellas empresas que quieran incorporarlo en productos privativos deben comprar a la empresa una licencia especfica que les permita este uso. Est desarrollado en su mayor parte en ANSI C

MySQL es patrocinado por una empresa privada, que posee el copyright de la mayor parte del cdigo. Esto es lo que posibilita el esquema de licenciamiento anteriormente mencionado. Adems de la venta de licencias privativas, la compaa ofrece soporte y servicios.

Caractersticas de MySQL
Usa GNU Automake, Autoconf, y Libtool para portabilidad Uso de multihilos mediante hilos del kernel. Usa tablas en disco b-tree para bsquedas rpidas con compresin de ndice Tablas hash en memoria temporales

El cdigo MySQL se prueba con Purify (un detector de memoria perdida comercial) as como con Valgrind, una herramienta GPL. Completo soporte para operadores y funciones en clusulas select y where. Completo soporte para clusulas group by y order by, soporte de funciones de agrupacin Seguridad: ofrece un sistema de contraseas y privilegios seguro mediante verificacin basada en el host y el trfico de contraseas est cifrado al conectarse a un servidor.

Soporta gran cantidad de datos. MySQL Server tiene bases de datos de hasta 50 millones de registros. Se permiten hasta 64 ndices por tabla (32 antes de MySQL 4.1.2). Cada ndice puede consistir desde 1 hasta 16 columnas o partes de columnas. El mximo ancho de lmite son 1000 bytes (500 antes de MySQL 4.1.2). Los clientes se conectan al servidor MySQL usando sockets TCP/IP en cualquier plataforma. En sistemas Windows se pueden conectar usando named pipes y en sistemas Unix usando ficheros socket Unix.

En MySQL 5.0, los clientes y servidores Windows se pueden conectar usando memoria compartida. MySQL contiene su propio paquete de pruebas de rendimiento proporcionado con el cdigo fuente de la distribucin de MySQL.

Instancias y Estructura de memoria

Es un conjunto de estructuras de memoria que manejan los archivos de la base de datos, cuando inicia la instancia, con ella inician procesos de fondo (Background Process)

Una base de datos activa o mejor dicho que esta corriendo, debe de tener una instancia asociada. Como la instancia existe en memoria y la base de datos existe en disco, una instancia puede existir sin una base de datos y una base de datos puede existir sin una instancia,

La configuracin para RAC (Real Application Cluster), as tambin es importante saber que una instancia no puede tener asociada una sola base de datos a la vez, o sea que no puedes montar dos base de datos en una instancia.

Memoria

Memoria La memoria SGA(rea Global del Sistema, SGA Sirve para facilitar la transferencia de informacin entre usuarios y tambin almacena la informacin estructural de la BD ms frecuentemente requerida) tiene 3 estructuras bsicas:

Database buffer cache.- Es el rea de memoria que almacena copias de los bloques de datos ledos de los data files.Tambien a esta rea se le conoce nada mas como Buffer Cache. Esta seccion de la memoria tiene tres estados. Sin Usar (Unused).-El buffer esta disponible por que nunca se ha usado o actualmente esta sin usar.

Limpia (Clean).-Este buffer fue usado previamente, y ahora contiene una versin consistente del bloque de datos en un punto en tiempo. El bloque contiene datos, pero este se puede decir que esta limpio, ya que no se le necesita hacer un checkpoint a los datos. Sucia (Dirty).-El buffer contiene datos que no han sido escrito a disco, Oracle necesita hacer un checkpoint del bloque de datos antes de reusarlo. Para manejar estos estados, Oracle tiene un algoritmo llamado LRU (Least Recently Used), lo que hace este algoritmo es sacar del buffer a los bloques de datos menos usados y que ya se le hayan hecho un checkpoint para asi poder subir al Buffer Cache nuevos datos y evitar sacar del Buffer Cache los datos que se usan con frecuencia.

shared Pool .- Esta rea de memoria guarda SQL analizado (Parsed),parmetros del sistema y el diccionario de datos (Data Dictionary Cache y Library Cache).
Redo Log Buffer.- Esta estructura de memoria en el SGA, que guarda los registros de Redo, estos contienen la informacin necesaria para reconstruir los cambios hechos por DDLs o DMLs a la base de datos.

Procesos Existen varios que son obligatorios, como los mencionados aqu abajo, de la misma manera existen muchos procesos que se inician una vez que aades alguna funcionalidad, como el ARCn, que es cuando la base de datos esta en modo archivelog.

MON.- La funcionalidad de este proceso es la de monitorear que los dems procesos de la instancia estn corriendo, a su vez es responsable de limpiar el Database Buffer Cache y limpiar recursos que el cliente haya utilizado. SMON.-La tarea principal de este proceso es la de limpieza a nivel sistema, y tambin una de las tareas principales de este proceso es llevar a cabo la recuperacin al iniciar la instancia cuando anteriormente finzalizo de una manera abrupta, como un shutdown abort o un crash del servidor.

CKPT.-Su funcin es la de actualizar las cabeceras de los control files y de los data files, con informacin de Checkpoint (SCN, Posicin de Checkpoint, etc), a su vez la avisa al DBWn que debe de escribir los bloques del Buffer Cache a disco. Muy importante saber, que el CKPT no escribe los datos, ni al Redo Log ni a los data files.
DBWn.-Este proceso escribe los contenidos sucios del buffer Cache, a este proceso se le conoce como un proceso flojo, ya que por si solo no escribe a disco, este unicamente escribe a disco cuando no hay bloques de datos limpios en el buffer cache o cuando CKPT le informa que debe hacerlo

MySQL
Gestor de Instancias del script mysqld_multi