Para la gestión del almacenamiento de una base de datos existen 4 conceptos bien definidos que deben ser conocidos para poder comprender la forma en la que se almacenan los datos. Vamos a ver la diferencia entre bloque, extensión, segmento y espacio de tablas.
Bloques: Se tratan de la unidad más pequeña. Generalmente
debe múltiple del tamaño de bloque del sistema operativo, ya que es la unidad
mínima que va a pedir Oracle al sistema operativo. Si no fuera múltiple del
bloque del sistema se añadiría un trabajo extra ya que el sistema debería
obtener más datos de los estrictamente necesarios. Se especifica mediante
DB_BLOCK_SIZE
Extensiones: Se forma con uno o más bloques. Cuando se
aumenta tamaño de un objeto se usa una extensión para incrementar el espacio.
Segmentos: Grupo de extensiones que forman un objeto de la
base de datos, como por ejemplo una tabla o un índice.
Espacio de tablas:Formado por uno o más datafiles, cada
datafile solo puede pertenecer a un determinado tablespace
3.1.1 Definicion de espacio de almacenamiento.
La mayoría de las bases de datos se almacenan en las
llamadas memorias secundarias, especialmente discos duros, aunque, en
principio, pueden emplearse también discos ópticos, memorias flash, etc.
Las razones por las cuales las bases de datos se almacenan en memorias secundarias son:
En cuanto al respaldo de las bases de datos (ver backup),
suelen emplearse tanto discos duros, como cintas magnéticas, discos ópticos o
similares.
Las técnicas empleadas para almacenar bases de datos son
sumamente importantes para la velocidad de acceso y recuperación de datos. Las
técnicas dependen del tipo de almacenamiento, el uso que se le da o se le dará
a la base de datos, la estructura de la misma, el SGBD empleado, etc.
Esta dependencia no significa necesariamente que haya que
cambiar la estructura de la base de datos si se cambian las técnicas empleadas.
Las técnicas de almacenamiento son independientes de la base de datos, pero, de
todas maneras, las mejores técnicas muchas veces pueden determinarse viendo la
estructura de la base de datos, entre otras características.
Los encargados de elegir estas técnicas son los diseñadores
y administradores de bases de datos, y dependen también de las capacidades del
SGBD. En general, el SGBD ofrece diferentes opciones y técnicas para organizar
los datos.
La idea es que los encargados de la base de
datos encuentren las técnicas idóneas, o sea, aquellas que permitan la mayor
velocidad posible de acceso a los datos. Una mala decisión en esta área puede
resultar en una menor velocidad de acceso a la base de datos, o en un uso
excesivo del espacio de almacenamiento, o incluso, puede aumentar la velocidad
de consulta de una base de datos, pero disminuir la velocidad de actualización
de la misma.
3.1.2 Definicion y creacion del espacio asignado para cada base de datos.
Las bases de datos se almacenan en ficheros o archivos, existen diferentes formas de organizaciones primarias de archivos que determinan la forma en que los registros de un archivo se colocan físicamente en el disco y, por lo tanto, cómo se accede a éstos.
Las distintas formas de organizaciones primarias de archivos
son:
- Archivos de Montículos (o no Ordenados): esta técnica coloca los registros en el disco sin un orden específico, añadiendo nuevos registros al final del archivo.
- Archivos Ordenados (o Secuenciales): mantiene el orden de los registros con respecto a algún valor de algún campo (clave de ordenación).
- Archivos de Direccionamiento Calculado: utilizan una función de direccionamiento calculado aplicada a un campo específico para determinar la colocación de los registros en disco.
- Árboles B: se vale de la estructura de árbol para las colocaciones de registros.
Existe una segunda forma de acceder a los datos llamada:
- Organización secundaria o estructura de acceso auxiliar: Estas permiten que los accesos a los registros de un archivo basado en campos alternativos, sean más eficientes que los que han sido utilizados para la organización primaria de archivos.
3.1.3 Bitacoras.
La estructura más amplia mente usada para grabar las
modificaciones de la base de datos es la Bitácora. Cada registro de la bitácora
escribe una única escritura de base de datos y tiene lo siguiente:
1. Nombre de la transacción: Nombre de la transacción que
realizó la operación de escritura.
2. Nombre del dato: El nombre único del dato escrito.
3. Valor antiguo: El valor del dato antes de la escritura.
4. Valor nuevo: El valor que tendrá el dato después de la
escritura.
3.1.4 Particiones.
Una partición es una división de una base de datos lógica o
sus elementos constituyentes en partes independientes. La partición de bases de
datos se hace normalmente por razones de mantenimiento, rendimiento o manejo.
Cada partición puede ser extendida hasta múltiples nodos, y los usuarios en el
nodo pueden hacer transacciones locales en la partición.
Esto aumenta el rendimiento en sitios que tienen
transacciones regularmente involucrando ciertas vistas de datos, y manteniendo
la disponibilidad y la seguridad. Esta partición puede hacerse creando bases de
datos más pequeñas separadas (cada una con sus propias tablas, índices, y
registros de transacciones) o dividiendo elementos seleccionados, por ejemplo,
solo una tabla.
3.1.5 Espacios Privados.
Un «espacio privado» permite que los administradores y
redactores gestionen el conjunto de datos del sitio. Algunas bases de datos
tienen estos espacios privados llamados comúnmente paneles de control, que son
formularios que aparecen al abrir la base de datos.
Los paneles de control sirven de "puerta principal" o "recibidor" de una base de datos en el sentido de que dirigen a las personas hacia determinadas tareas, como introducir o buscar datos. Sirven también para mantener alejados a los usuarios de las tablas que contienen los datos en tiempo real.
Cuando reciba una base de datos, debe adentrarse más allá del panel de control para averiguar cómo están estructurados los datos, pero merece la pena echar un vistazo inicial al panel de control.
Los paneles de control sirven de "puerta principal" o "recibidor" de una base de datos en el sentido de que dirigen a las personas hacia determinadas tareas, como introducir o buscar datos. Sirven también para mantener alejados a los usuarios de las tablas que contienen los datos en tiempo real.
Cuando reciba una base de datos, debe adentrarse más allá del panel de control para averiguar cómo están estructurados los datos, pero merece la pena echar un vistazo inicial al panel de control.
3.1.6 Espacio para Objetos.
Los DBMS se basan en archivos para almacenar datos, y estos
archivos, o conjuntos de datos, residen en medios de almacenamiento, o
dispositivos. Una buena parte del trabajo del DBA implicará la planificación
para el almacenamiento real de la base de datos.
Algunas tecnologías de almacenamiento son más adecuadas que
otras. Sin embargo, la naturaleza mecánica de la unidad de disco los hace más
vulnerables al fracaso de los componentes de otro equipo. Además, las formas en
que las unidades de disco son utilizados por las bases de datos pueden hacer
que la gestión del almacenamiento impredecibles, como la barra lateral
"Modern DBMS de uso de disco“ Puede usarse RAID para mejorar la seguridad
de los datos.
3.2 Segmentos.
Un segmento contiene un tipo específico de objetos de la
base de datos, como por ejemplo una tabla. Un segmento está compuesto de
extensiones que definen el tamaño disponible para el segmento.
A medida que se llenan las extensiones se van añadiendo
nuevas extensiones, es aquel espacio reservado por la base de datos, dentro de
un datafile, para ser utilizado por un solo objeto. Así una tabla (o cualquier
otro objeto) está dentro de su segmento, y nunca podrá salir de él, ya que si
la tabla crece, el segmento también crece con ella.
Los segmentos son los equivalentes físicos de los objetos
que almacenan datos. El uso efectivo de los segmentos requiere que el DBA
conozca los objetos, que utiliza una aplicación, cómo los datos son
introducidos en esos objetos y el modo en que serán recuperados.
Un servidor Oracle es un sistema que permite administrar
bases de datos y que ofrece un medio de gestión de información abierto,
completo e integrado. Un servidor Oracle está constituido de una instancia y
una base de datos.
Instancia de Oracle: Una instancia de Oracle permite
acceder a la base de datos Oracle y permite abrir únicamente una sola base de
datos. La instancia de Oracle está compuesta de procesos en segundo plano que
administran y aplican las relaciones entre las estructuras físicas y las
estructuras de memoria.
Existen dos categorías:
- Procesos en Segundo Plano Obligatorios: DBWN, PMON, CKPT, LGWR, SMON
- Procesos en Segundo Plano Facultativos: ARCn, LMDn, RECO, CJQ0, LMON, Snnn, Dnnn, Pnnn, LCKn, QMNn
3.4 Estancias Multiples.
Se llama instancia múltiple al hecho de poder ejecutar un
programa más de una vez al mismo tiempo. Hay programas que no admiten más que
una sola instancia, es decir que si ya se está ejecutando, por más que le des
un click de nuevo en el icono o en el menú no aparecerá un nuevo ejemplar del
programa. Con las bases de datos se complica un poco porque si un usuario
modifica un registro que otro usuario tiene también abierto, la modificación
que se haga en una instancia debe reflejarse de inmediato (actualizarse) en
cualquier otra instancia abierta de la misma base de datos.
Sin embargo, en las bases de datos se puede seleccionar la
opción en el diseño de la BD, y se reflejarán de inmediato las modificaciones
en todas las instancias abiertas
En programación, una instancia se produce con la creación de
un objeto perteneciente a una clase (se dice que se instancia la clase). El
objeto que se crea tiene los atributos, propiedades y métodos de la clase a la
que pertenece. Los objetos y sus características se usan en la construcción de
programas, ya sea como contenedores de datos o como partes funcionales del
programa. Los objetos también puede ser ocurrencia de las clases.

























