Beruflich Dokumente
Kultur Dokumente
LZARO CRDENAS
T/M
MATERIA:
ADMO. DE BASE DE DATOS
TAREA:
INVESTIGAR LA UNIDAD 2
CIUDAD LZARO CRDENAS MICHOACN, MAYO 2015
Unidad #2
Arquitectura del gestor
2.1 Caractersticas del DBMS
Los sistemas de administracin de bases de datos son usados para:
Permitir a los usuarios acceder y manipular la base de datos proveyendo
mtodos para construir sistemas de procesamiento de datos para
aplicaciones que requieran acceso a los datos.
Proveer a los administradores las herramientas que les permitan
ejecutar tareas de mantenimiento y administracin de los datos.
Algunas de sus caractersticas son:
Control de la Redundancia de Datos
Este consiste en lograr una mnima cantidad de espacio de almacenamiento para
almacenar los datos evitando la duplicacin de la informacin. De esta manera se
logran ahorros en el tiempo de procesamiento de la informacin, se tendrn
menos inconsistencias, menores costos operativos y har el mantenimiento ms
fcil.
Compartimiento de Datos
Una de las principales caractersticas de las bases de datos, es que los datos
pueden ser compartidos entre muchos usuarios simultneamente, proveyendo, de
esta manera, mxima eficiencia.
Mantenimiento de la Integridad
La integridad de los datos es la que garantiza la precisin o exactitud de la
informacin contenida en una base de datos. Los datos interrelacionados deben
siempre representar informacin correcta a los usuarios.
Soporte para Control de Transacciones y Recuperacin de Fallas
Se conoce como transaccin toda operacin que se haga sobre la base de datos.
Las transacciones deben por lo tanto ser controladas de manera que no alteren la
integridad de la base de datos. La recuperacin de fallas tiene que ver con la
rea Global del sistema (SGA), la cual se comparte entre todos los
servidores y los procesos en segundo plano.
Buffer del Dietario o del Registro del Rehacer (Redo Log Buffer).
El Pool Compartido (Shared Pool).
Cach de Biblioteca.
Cach del Diccionario de Datos.
Estructuras de Control.
Informacin diversa
Cuando se inicia una instancia Oracle monta la base de datos, es decir, asocia
dicha instancia a su base de datos correspondiente. En un mismo ordenador
pueden ejecutarse varias instancias simultneamente, accediendo cada una a su
propia base de datos fsica.
nicamente el administrador de la base de datos puede iniciar una instancia y
abrir una base de datos. Si una base de datos est abierta, entonces el
administrador puede cerrarla y, cuando esto ocurre, los usuarios no pueden
acceder a la informacin que contiene.
Estructura de Datos del SGA
Cach de los Buffers (Database Buffer Cache)
La cach de los buffers de la base de datos es una parte de la SGA que contiene
copias de los bloques de datos de lectura de las pginas. Todos los procesos de
los usuarios conectados concurrentemente a la instancia comparten el acceso a
ella. Esta cach junto con la cach compartida de SQL estn lgicamente
segmentadas en varios conjuntos, lo que reduce la contencin en sistemas
multiprocesador.
Organizacin de la Cach de los Buffers
Los buffers en la cach estn organizados en dos listas: la lista en espera y la lista
LRU. La lista en espera contiene los buffers en espera (dirty buffers), los cuales
contienen datos que han sido modificados pero que an no se han escrito en
disco. La lista LRU contiene los buffers libres, buffers que estn siendo accedidos
actualmente (pinned buffers) y los buffers en espera, que an no estn
almacenados en la lista en espera. Cuando un proceso Oracle accede a un buffer,
este lo sita al final de la lista LRU.
La primera vez que un proceso de usuario necesita un dato concreto, este los
busca en los datos almacenados en la cach de los buffers. Si el proceso
encuentra el dato en uno de estos buffers, se lee directamente de la memoria
(cache hit). Si no lo encuentra, entonces debe copiar la pgina en disco a un
buffer de la cach antes de leerlo (cache miss). Acceder a los datos a travs de
un cache hit es ms rpido que hacerlo mediante un cache miss.
Antes de leer un bloque de datos dentro de la cach, el proceso debe encontrar
primero un buffer libre, empezando desde el menos usado recientemente de la
lista LRU. El proceso sigue buscando hasta que encuentra un buffer libre o hasta
que llega al final de la lista.
El Algoritmo LRU y la Lectura Completa de Tablas
Los parmetros que configuran los buffer pools KEEP y RECYCLE son
DB_KEEP_CACHE_SIZE y DB_RECYCLE_CACHE_SIZE.
Buffer del Registro del Rehacer (Redo Log Buffer)
El redo log buffer es un buffer circular en el SGA que contiene informacin sobre
cambios hechos a la base de datos, la cual se almacena en las entradas redo.
Estas entradas contienen la informacin necesaria para reconstruir, o rehacer
cambios hechos en la base de datos mediante las operaciones INSERT, UPDATE,
Procesamiento de E/S
Copias de seguridad y operaciones de recuperacin
El large pool satisface mejor las peticiones de gran cantidad de memoria que el
pool compartido. Sin embargo, no posee una lista LRU.
Java Pool
La memoria java pool se usa en la memoria del servidor para almacenar todo el
cdigo y datos del JVM en las sesiones. Se usa de diferentes formas,
dependiendo del modo en que se ejecute el servidor Oracle.
El asesor de estadsticas de java pool proporciona informacin sobre la memoria
de la cache de biblioteca usada para java y predice como pueden afectar cambios
en el tamao del java pool en la tasa de anlisis. El asesor de java pool se activa
internamente cuando el statistics_level est configurado en TYPICAL o mayor.
Estas estadsticas se reinician cuando el asesor es desactivado.
Streams Pool
En una nica base de datos, se puede especificar que los flujos de memoria se
asignen desde un pool en el SGA llamado Streams pool. Para configurarlo se
especifica el tamao del pool en bytes usando el parmetro
STREAMS_POOL_SIZE. Si un streams pool no est definido, entonces se crea
automticamente cuando los flujos se usan por primera vez.
Si SGA_TARGET est activo, entonces la memoria del SGA para los Streams pool
viene del pool global del SGA. Si no est activo, entonces se transfiere desde la
cache del buffer, aunque solo tiene lugar despus del primer uso de los flujos. La
cantidad transferida es del 10% del tamao del pool compartido.
Cach de Diccionario (Dictionary Cache)
El diccionario de datos es una coleccin de tablas y vistas de la base de datos que
contienen informacin sobre la base de datos (sus estructuras y sus usuarios.
Oracle accede con frecuencia al diccionario de datos, por lo que tiene dos
localizaciones especiales en memoria designadas a mantenerlo. Una de ellas es la
cach del diccionario de datos, tambin conocida como la cache de fila porque
contiene datos sobre las filas en vez de los buffers (los cuales contienen bloques
de datos), y la otra es el cache de biblioteca.
El Parmetro SGA_MAX_SIZE
El SGA comprende un nmero de componentes de memoria, denominados pools
de memoria, que se usan para satisfacer una clase particular de asignacin de
memoria. Todos los componentes del SGA asignan y liberan espacio en unidades
(mdulos). El tamao del mdulo queda determinado por el tamao total del SGA.
En la mayora de las plataformas el tamao del mdulo es 4MB si el tamao total
del SGA es menor de 1GB, y de 16MB para SGA mayores.
La base de datos puede configurar lmites sobre cuanta memoria virtual se usa
para el SGA. Puede crear instancias con un mnimo de memoria y permitir que la
instancia use ms, expandiendo la memoria asignada a los componentes del SGA,
hasta un mximo determinado por el SGA_MAX_SIZE. Si el valor es menor que la
suma de memoria asignada para todos los componentes, la base de datos ignora
la configuracin de SGA_MAX_SIZE.
Para un rendimiento ptimo, en la mayora de los sistemas, todo el SGA debera
ajustarse a la memoria real. Si no es as, y la memoria virtual es usada para
almacenar partes del SGA, entonces el rendimiento total del sistema puede
decrementarse en gran medida. La cantidad de memoria dedicada para todas las
reas compartidas en el SGA tambin influye en el rendimiento.
El tamao del SGA queda determinado por muchos parmetros, aunque son los
siguientes los que tienen un gran efecto sobre el tamao del SGA:
Parmetro
Descripcin
DB_CACHE_SIZE
LOG_BUFFER
SHARED_POOL_SIZE
LARGE_POOL_SIZE
JAVA_POOL_SIZE
Este incluye toda la memoria del SGA, en diferencia con las versiones anteriores
en las que la memoria para la SGA interna y fija se configuraba a travs de otros
parmetros. En consecuencia, el SGA_TARGET da un control preciso sobre el
tamao de la regin de memoria compartida asignada por la base de datos. Si
est configurado con un valor mayor que SGA_MAX_SIZE al inicio, entonces este
ltimo se usa como respaldo para el SGA_TARGET.
2.1.2 Estructuras Fsicas de la Base de Datos
reas Globales de Programas PGA (Program Global Areas)
Un rea global de programa (PGA) es una regin de memoria que contiene datos
e informacin de control para los procesos de servidores. Es una memoria no
Oracle crea el rea de ejecucin en el primer paso que una ejecucin es pedida.
Para una sentencia INSERT, UPDATE y DELETE Oracle libera el rea de
ejecucin despus de que la sentencia ha sido ejecutada. Para las consultas,
Oracle libera el rea de ejecucin solamente cuando todas las filas han sido
recorridas, o la consulta ha sido cancelada.
reas de Trabajo SQL
Para las consultas complejas, una gran porcin del rea de ejecucin es dedicada
a reas de trabajo asignadas por operadores de memoria-intensiva como los
siguientes:
Operadores de base de clasificacin Sort-based (order by, group by,
rollup)
Hash-join
Bitmap merge
Bitmap create
permite que alguna de las piezas se procesen en la memoria mientras el resto son
distribuidos en un disco temporal para ser procesado luego. Aunque los
operadores de bitmap no se distribuyen por el disco cuando su rea de trabajo es
muy pequea, su complejidad es inversamente proporcional al tamao de su rea
de trabajo. Estos operadores se ejecutan ms rpido en reas de trabajo ms
grandes.
Administracin de la Memoria del PGA para un Modo Dedicado
Se puede administrar el tamao de las reas de trabajo SQL globalmente y
automticamente. El administrador de la base de datos simplemente necesita que
sea especificado el tamao total dedicado a la memoria del PGA para las
instancias de configurando el parmetro PGA_AGGREGATE_TARGET. El nmero
especificado (por ejemplo 2G) es un objetivo global para la instancia, y se trata de
asegurar que la cantidad total de memoria del PGA asignada por toda la base de
datos de los procesos del servidor nunca exceda esa meta.
Con PGA_AGGREGATE_TARGET, modificar el tamao de las reas de trabajo
para todas las sesiones dedicadas es automtico, y todos los parmetros
*_AREA_SIZE se ignoran en estas sesiones.
rea de Ordenaciones (Sort Areas)
Las reas de ordenaciones (Sort Areas) de Oracle son las zonas de memoria en
las que se ordenan los datos, es decir el espacio en memoria que necesita la
organizacin y ordenacin de las filas.
El tamao por defecto, expresado en bytes, es especfico de cada SO. Sin
embargo, hay muchas razones importantes por las que este tamao influye en el
rendimiento. En el manual de Oracle 10i encontramos cuatro de ellas:
Paginacin
La paginacin consiste en dividir los programas en pequeos bloques o
pginas, de manera que sea ms fcil moverlos de memoria a disco y viceversa.
De la misma forma, la memoria se divide en marcos de pgina. De esta forma, la
cantidad de memoria desperdiciada por un proceso es el final de su ltima pgina,
minimizando as la fragmentacin interna y evitando la externa.
En un momento cualquiera, la memoria se encuentra ocupada con pginas de
diferentes procesos, mientras que algunos marcos estn disponibles para su uso.
El sistema operativo mantiene una lista de estos ltimos marcos, y una tabla por
cada proceso, donde consta en qu marco se encuentra cada pgina del proceso.
De esta forma, las pginas de un proceso pueden no estar contiguamente
ubicadas en memoria, y pueden intercalarse con las pginas de otros procesos.
En la tabla de pginas de un proceso, se encuentra la ubicacin del marco que
contiene a cada una de sus pginas. Las direcciones lgicas ahora se forman
como un nmero de pgina y de un desplazamiento dentro de esa pgina
(conocido comnmente como offset). El nmero de pgina es usado como un
ndice dentro de la tabla de pginas, y una vez obtenida la direccin del marco de
memoria, se utiliza el desplazamiento para componer la direccin real o direccin
fsica. Este proceso se realiza en una parte del ordenador especficamente
diseada para esta tarea, es decir, es un proceso hardware y no software.
De esta forma, cuando un proceso es cargado en memoria, se cargan todas sus
pginas en marcos libres y se completa su tabla de pginas.
Swapping
El Swapping es el procedimiento de mover los bloques de memoria en los que
estn algunos procesos que no se estn utilizando, desde la memoria principal a
un espacio Swap dejando as hueco libre para poder cargar en memoria otros
procesos que s se van a utilizar.
El espacio Swap o espacio de intercambio es una zona de disco (un fichero o
una particin) que se usa para guardar las imgenes de los procesos que no han
de mantenerse en memoria fsica.
Este procedimiento es muy similar a la paginacin, con la diferencia principal de
que el directorio Swap funciona exactamente igual que la memoria RAM, por lo
que puede almacenar datos privados, contraseas y todo lo que almacena sta.
Sin embargo, en la paginacin, nicamente se sacan de memoria pginas
pertenecientes a procesos que no se estn utilizando, adems de que se pueden
sacar solo algunas pginas de los procesos y no stos enteros como se hace en el
Swapping.
Con respecto al tamao que debe tener el directorio Swap, hay muchas
discusiones sobre ello como por ejemplo la antigua creencia de El Swap debe
tener el doble de tamao que la RAM. cosa que no es vlida hoy da debido a la
gran capacidad de la memoria RAM de la mayora de ordenadores.
Como conclusin, hay que destacar que el uso de la memoria virtual por parte
de Oracle, va a influir bastante en el rendimiento, disminuyndolo drsticamente
en comparacin con el uso nicamente de la memoria RAM.
rea de Cdigo de Software (Sca)
El rea de cdigo de software son zonas de memoria destinadas a almacenar el
cdigo de Oracle en ejecucin o que puede ejecutarse. Este cdigo de Oracle se
almacena en una zona distinta, y ms protegida, que las zonas dedicadas a
almacenar los cdigos de programas de usuarios.
La SCA suele ser de tamao esttico, cambiando nicamente cuando el
software se reinstala o actualiza. El tamao requerido para este rea puede variar
en funcin del SO. Son reas de slo lectura y pueden ser instalas de forma
compartida o no compartida. Cuando es posible, el cdigo de Oracle se comparte,
por lo que todos los usuarios pueden acceder a l sin tener mltiples copias en
memoria. El resultado es un ahorro considerable de memoria y una mejora del
rendimiento general.
Por otra parte, los programas de usuario tambin pueden ser compartidos o no.
Algunas utilidades y herramientas de Oracle (como ocurre con Oracle Forms y
SQL*Plus) pueden ser instalados de forma compartida, pero otras no. Mltiples
instancias de Oracle pueden usar la misma SCA con diferentes bases de datos si
estn corriendo en la misma mquina.
Hay que tener en cuenta que la opcin de instalar software compartido puede
no estar disponible en funcin del sistema operativo, como ocurre por ejemplo en
mquinas con Windows.
Estructura de los Procesos
Cuando un usuario se conecta a una base de datos de Oracle ejecuta dos
mdulos de cdigo diferentes, que adems el encargado de gestionar estos
procesos es el sistema operativo, estos dos mdulos diferentes son:
Lock (LCKn)
Es un proceso opcional, configurado para manejar los bloqueos entre bases de
datos Oracle cuando estas se encuentran en distintos computadores y
compartiendo el mismo conjunto de discos (es decir en modo servidor en
paralelo).
Job Queue (SNPn)
Es un proceso opcional, que se encarga de planificar los procesos que se deben
ejecutar y asegurar que todos deben de terminar en algn momento.
Queue Monitor (QMNn)
QMNn es un proceso opcional de background para el encolamiento avanzado de
Oracle, que monitorea las colas de mensajes. El encolamiento avanzado se usa
Requerimiento
RAM
Memoria virtual
Oracle
512 MB
1024
MB
MySQL
512 MB
1024 MB
1.5 GB
1 GB
4 GB
Sin limite
Requerimiento
Oracle
MySQL
Y depende que base de datos uses para efectuar las operaciones pero, es la
misma teora para cualquier BD.
Instalacin de MySQl en Windows 7
1. Comprobar que no existe una versin anterior, si existe desinstalarla.
2. Descargar el archivo de instalacin, en nuestro caso MySQL Enterprise.
3. Ejecute el archivo:
Cada vez que veo la pantalla de la GNU GPL me lleno de felicidad. No slo por las
condiciones y el precio: es adems, para m, una garanta de profesionalidad.
Esta pantalla nos permite optimizar el funcionamiento del servidor en previsin del
nmero de usos concurrentes. La opcin por defecto, Decisin Support (DSS) /
OLAP ser probablemente la que ms te convenga.
Deja ambas opciones marcadas, tal como vienen por defecto. Es la ms adecuada
para un uso de propsito general o de aprendizaje, tanto si eres desarrollador
como no. Aceptar conexiones TCP te permitir conectarte al servidor desde otras
mquinas (o desde la misma simulando un acceso web tpico).
[FIRST|AFTER col_name]
| MODIFY [COLUMN] column_definition [FIRST | AFTER col_name]
| DROP [COLUMN] col_name
| DROP PRIMARY KEY
| DROP INDEX index_name
| DROP FOREIGN KEY fk_symbol
| DISABLE KEYS
| ENABLE KEYS
| RENAME [TO] new_tbl_name
| ORDER BY col_name
| CONVERT TO CHARACTER SET charset_name [COLLATE collation_name]
| [DEFAULT] CHARACTER SET charset_name [COLLATE collation_name]
| DISCARD TABLESPACE
| IMPORT TABLESPACE
| table_options