SlideShare una empresa de Scribd logo
El rendimiento del sistema depende de la
eficiencia de la estructura de datos que se
utiliza para representar la información en
la base de datos y de la eficiencia del
sistema para operar sobre esa base de
datos
El sistema operativo de la computadora puede
proporcionar algunas de las funciones del
sistema de la base de datos. En la mayoría de
los casos, el sistema operativo proporciona
únicamente los servicios mas básicos y el
sistema de base de datos debe construirse
sobre esa base.
El sistema de base de datos consta de varios componentes
funcionales , entre los que se encuentran:
• El gestor de archivos, que se encarga de asignar el espacio en
la memoria del disco y la estructura de datos que se usa para
representar información almacenada en el disco.
• El gestor de registros intermedios buffer, que es responsable
de transferir la información entre la memoria del disco y la
memoria principal.
• El analizador sintáctico (parser) de consultas, que traduce
sentencias de un lenguaje de consulta a un lenguaje de nivel más
bajo.
• El selector de estrategias, que intenta transformar la solicitud
del usuario en una forma equivalente pero más eficiente,
encontrando así una estrategia adecuada para ejecutar la
consulta.
• El gestor de autorización e integridad, que
prueba la satisfacción de las restricciones de
integridad (como, por ejemplo, restriccio­nes de
clave) y comprueba que el usuario está autorizado
para acceder a los datos.
• El gestor de recuperaciones, que asegura que la
base de datos permanezca en un estado consistente
(correcto) a pesar de que ocurran rallos en el
sistema.
• El controlador de concurrencia, que asegura que
las interacciones concurrentes con la base de datos
se llevan a cabo sin conflictos entre ellas.
Además se requieren varias estructuras de datos como parte de
la implementación física, entre las que se encuentran:
• Archivos de datos, que almacenan la base de datos.
• Diccionario de datos, que almacena información acerca de
la estructura de la base de datos, y la información de
autorización, como las restricciones de clave.
• Índices, que permiten tener acceso rápido a datos que
tienen determinados valores.
• Datos estadísticos, que almacenan información acerca de
los datos en la base de datos. Esta. información la utiliza el
selector de estrategias.
7.2. MEDIOS DE ALMACENAMIENTO7.2. MEDIOS DE ALMACENAMIENTO
FISICOFISICO
En la mayoría de los sistemas de computadores existen
varios tipos de almacenamiento de datos. Estos medios
de almacenamiento se clasifican según la velocidad con
que puede tenerse acceso a los datos, según el coste por
unidad de datos para comprar la memoria, y según la
«fiabilidad» que tienen. Entre los medios con que
normalmente se cuenta están:
• Próximo (caché). Esta es la forma de almacenamiento más rápida
y más costosa. El tamaño de la memoria caché es muy pequeño y
el sistema operativo gestiona su utilización. No necesitaremos
preocupamos de la gestión de la memoria caché en el sistema de
base de datos.
• Memoria principal. Este es el medio de almacenamiento que se
emplea para los datos disponibles sobre los cuales se va a operar.
Las instrucciones de máquina de propósito general operan sobre la
memoria principal. Aunque la memoria principal puede contener
varios megabytes de datos, casi siempre es demasiado pequeña
para almacenar la base de datos completa. A la memoria principal
muchas veces se le llama memoria central. Normalmente los
contenidos de la memoria principal se pierden si hay un corte de
energía eléctrica o si se «cae» el sistema.
• Almacenamiento en disco. Este es el medio principal
para el almacenamiento de datos a largo plazo. Lo común
es que toda la base de datos esté almacenada en disco.
Los datos deben trasladarse del disco a la memoria
principal para poder operar sobre ellos. Después de
realizar las operaciones, los datos deben devolverse al
disco.
• Almacenamiento en cinta. Este tipo de
almacenamiento se usa principalmente para copias de
seguridad y datos de archivo. Aunque la cinta es mucho
más barata que el disco, el acceso a los datos es mucho
más lento, puesto' que la cinta debe leerse
secuencialmente desde el principio. Por esta razón, el
almacena­miento en cinta se denomina almacenamiento
de acceso secuencial y se usa principalmente para recuperarse
de fallos en el disco
7.3. ORGANIZACION DE ARCHIVOS7.3. ORGANIZACION DE ARCHIVOS
Un archivo está organizado lógicamente como
una secuencia de regis­tros. Estos registros se
asignan a bloques del disco. Los archivos se
dan como construcciones básicas en los
sistemas operativos, por lo que supondremos
que existe un sistema de archivos subyacente.
Necesitamos considerar formas de
representar modelos lógicos de datos en
términos de archivos.
Aunque los bloques son de tamaño fijo determinado
por las propie­dades físicas del disco y por el
sistema operativo, los tamaños de los registros
varían. En una base de datos relacional, las tuplas
de relacio­nes distintas son, por lo general, de
diferente tamaño. En una base de datos de red es
probable que el tipo de registro propietario sea de
distinto tamaño que el tipo de registro miembro.
Una forma de enfocar la asignación de la base de datos
a los archivos es utilizar varios archivos y almacenar
en un archivo dado solamente registros de una
longitud fija. Una alternativa es estructurar los
archivos de una forma tal que podamos acomodar
registros de varias longitudes diferentes. Los
archivos de registros de longitud fija son más fáciles
de implementar que los archivos de registros de
longitud variable. Muchas de las técnicas usadas
pueden aplicarse al caso de longitud variable. Así,
pues, empezamos considerando un archivo de
registros de longitud fija.
7.3.1. Registros de longitud fija7.3.1. Registros de longitud fija
Como ejemplo, consideremos un archivo de registros depósito
para le base de datos bancaria. Cada registro de este archivo
se define como sigue:
type depósito = registro
nombre-sucursal: char (20); número-cuenta: integer; nombre-cliente:
char (20); saldo: real;
end
7.3.2. Registros de longitud variable7.3.2. Registros de longitud variable
Los registros de longitud variable se presentan en los sistemas
de base de datos de varias formas:
• Almacenamiento de varios tipos de registros en un archivo.
• Tipos de registros que permiten uno o más campos de
longitudes variables.
• Tipos de registros que permiten campos repetidos.
Existen varias técnicas para implementar los registros de
longitud variable. El formato del registro es:
type lista-depósito = record
nombre-sucursal: char (20);
info-cuenta ; array [1 .. 00] of
record;
número-cuenta: integer;
nombre-cliente: char (20);
saldo; real;
end
end
Definimos info-cuenta como un array con un número arbitrario dc
elementos de manera que el tamaño del registro no tiene límite (¡salvo.
por supuesto, el tamaño del disco!).
Representación en cadena de bytesRepresentación en cadena de bytes
Un método sencillo para implementar los registros de
longitud variable es añadir un símbolo especial de
fin de registro (.1) al final de cada registro. Así
podemos almacenar cada registro como una cadena
de bytes consecutivos.
La representación en cadena de bytes tiene varias
desventajas. Las más serias son:
• No es fácil volver a utilizar el espacio que ocupaba un registro
que se eliminó. Aunque existen técnicas para gestionar la
inserción y eliminación, resultan en un gran número de
fragmentos pequeños de espacio en disco que se desperdician.
• En general, los registros no disponen de espacio para crecer.
Si un registro de longitud variable se hace más largo debe
moverse y si el registro está sujeto, el movimiento resulta
costoso.
Por tanto, la representación en cadena de bytes normalmente no
se utiliza para implementar registros de longitud variable.
Representación de longitud fijaRepresentación de longitud fija
Para implementar los registros de longitud variable de
manera eficiente en un sistema de archivos,
utilizamos uno o más registros de longitud lija para
representar un registro de longitud variable.
Existen dos técnicas de para implementar archivos de
registros de longitud variable empleando registros
de longitud fija .
• Espacio reservado. Si hay una longitud máxima de
registro que nunca se excede, podemos utilizar
registros de longitud fija de esa longitud. El espacio
no utilizado (para registros más cortos que el
espacio máximo) se llena con un símbolo especial
nulo o de «fin de registro» .
• Punteros. El registro de longitud variable se
representa por una lista de registros de longitud fija
encadenado por medio de punteros.
El método de espacio reservado es útil cuando gran
parte de los registros es de longitud cercana al
máximo. Si no es así, puede desperdiciarse una
cantidad apreciable de espacio. En el ejemplo
bancario puede darse el caso de que algunas
sucursales tengan muchas más cuentas que otras.
Esto nos lleva a considerar el uso del método de
punteros. Para representar el archivo empleando
el método de punteros.
 
7.4 ORGANIZACIÓN DE REGRISTROS EN BLOQUES
Un archivo puede considerarse como una colección de registros. Sin embargo, como
los datos se transfieren entre el almacenamiento en disco y la memoria principal en
unidades de bloque, vale la pena asignar los registros a los bloques de tal forma que
un simple bloque contenga registros relacionados entre sí. Si asignamos los registros
a los bloques al azar, normalmente se dará el caso de que sea necesario tener acceso a
un bloque diferente para cada registro que se acceda.
Si podemos acceder a varios de los registros deseados con un solo acceso a bloque,
habremos ahorrado algunos accesos a disco.
Anteriormente describimos una estructura de archivos en la que toda la información
relativa a las cuentas de una sucursal aparecía en un registro (de longitud variable).
Las representaciones de esta estruc­tura de archivo con registros de longitud fija
utilizaban varios registros para representar un registro de longitud variable.
Si podemos almace­nar varios de esos registros en un bloque reducimos el número de
accesos a bloque requeridos para leer un registro de longitud variable.
Es fácil agrupar registros de esta manera si la base de datos nunca
cambia. Sin embargo, supóngase que se abre una nueva cuenta en
la sucursal Perryridge. Si estamos utilizando la estructura que se
muestra en la Figura 7.12 desearíamos añadir el registro que
corresponde a esta cuenta al mismo bloque en que están el resto de
las cuentas de la sucursal Perryridge.
• Como alternativa consideremos una estructura que ocupa un espa­cio un poco mayor
que la estructura de la Figura anterior pero que permite mejorar la eficiencia del acceso a
la información. A cada valor ilc nomhre-aucursal le asignamos una cadena de bloques. Cada
cadena de bloques contiene el registro de longitud variable completo para el
correspondiente valor de nombre-sucursal.
• La Figura 7.13 muestra la estructura apropiada para el archivo depósito. Las cadenas tienen
una estructura ligeramente diferente de las demás estructuras de regis­tros de longitud fija
que hemos utilizado:
• El primer registro de la cadena contiene el valor de nombre-sucursal de la cadena.
• Los siguientes registros contienen los campos que se repiten. No hace falta
repetir el nombre-sucursal, ya que es el mismo para todos los registros de la cadena.
• Obsérvese que hay dos longitudes de registro diferentes en cada
cadena. El primer registro contiene un valor de nombre-sucursal.
Todos los demás registros contienen tres campos: número-cuenta,
nombre-oliente, y saldo.
• cada cadena ocupa exactamente un bloque. Si extendemos el
ejemplo a uno más real, en el que una sucursal tiene miles de
cuentas, una cadena puede requerir varios bloques.
• Reservamos un espacio fijo al prin­cipio de cada bloque como
encabezamiento de bloque y lo usamos para almacenar los punteros de
la cadena. La Figura 7.14 muestra parte de una estructura de
archivos de una base de datos bancaria extendida.
• Al crecer una cadena por inserción de registros, puede que se
necesite añadirle nuevos bloques.
FIGURA 7.14FIGURA 7.14
BLOQUESBLOQUES
ENCADENADOSENCADENADOS
ARCHIVOS SECUENCIALESARCHIVOS SECUENCIALES
• Un archivo secuencial está diseñado para procesar de manera eficiente registros en un
determinado orden basándose en alguna clave de bús­queda. Para permitir una
recuperación rápida de registros en el orden de la clave de búsqueda, los registros se
encadenan por medio de punteros. El puntero de cada registro apunta al siguiente
registro en el orden de la clave de búsqueda.
• La Figura 7.15 muestra un archivo secuencial de registros depósito sacado del ejemplo
bancario. Los registros están almacenados en el orden de la clave de búsqueda,
empleando nombre-sucursal como clave de búsqueda.
Figura 7.15. Archivo secuencial de
registros depósito.
• Para la inserción aplicamos las siguientes reglas:
1.1. Localizar el registro en el archivo que precede al registro que se va a insertar en el
orden de la clave de búsqueda.
2.2. Si existe algún registro libre (es decir, un espacio que haya resultado de una
eliminación) dentro del mismo bloque que este registro, se inserta allí el nuevo
registro. Si no, se inserta un nuevo bloque de desbordamiento. En cualquier caso, se
ajustan los punteros para que los registros queden encadenados en el orden de
la clave de búsqueda.
• La Figura 7.16 muestra el archivo de la Figura 7.15 después de la inserción del
registro (North Town, 888, Adams, 800). La estructura de la Figura 7.16
permite insertar rápidamente registros nuevos, pero obliga a las aplicaciones de
procesamiento secuencial de archivos a procesar los registros en un orden que
no corresponde al orden físico de los registros.
7.6.ASIGNACIÓN (MAPPING) DE DATOS7.6.ASIGNACIÓN (MAPPING) DE DATOS
RELACIONALES A ARCHIVOSRELACIONALES A ARCHIVOS
• Muchos sistemas de base de datos relaciónales almacenan cada relación en
un archivo separado. Esto permite al sistema de base de datos aprovechar
al máximo el sistema de archivos que forma parte del sistema operativo.
• Por tanto, las relaciones pueden asignarse a una estructura simple de
archivos. Esta implementación sencilla de un sistema de base de datos
relacional se adapta bien a los sistemas de base de datos diseñados para
computadores persona­les. En estos sistemas, el tamaño de la base de
datos es pequeño, por lo que no se aprovecharía una estructura de
archivos sofisticada.
• Este enfoque sencillo de la implementación de bases de datos relacionales
se vuelve menos satisfactorio al aumentar el tamaño de la base de datos.
ALMACENAMIENTOALMACENAMIENTO
DE DICCIONARIO DEDE DICCIONARIO DE
DATOSDATOS
Un sistema de base de datos relacional
necesita mantener datos acerca de las
relaciones.
A esta información se le denomina:
Diccionario de Datos o Catalogo de
Sistema.
Entre los tipos de información que el
sistema debe almacenar están:
Los nombres de las relaciones.
Los nombres de los archivos.
Los dominios de los atributos.
Los nombres de las vistas definidas en la base
de datos y la definición de esas vistas.
Las restricciones de integridad de cada
relación (ejemplo: las restricciones de clave)
Los sistemas que utilizan estructuras muy
sofisticadas para almacenar relaciones,
pueden conservarse datos estadísticos y
descriptivos acerca de las relaciones:
Número de tuplas en cada relación.
Método de almacenamiento utilizado para cada
relación( ejemplo, agrupado ó sin agrupar)
Si se utiliza la BD para almacenar datos del
sistema, simplificamos la estructura global
del sistema y permitimos aprovechar toda la
capacidad de aquélla para agilizar el acceso
a los datos del sistema. La elección de
cómo se van a representar los datos por
medio de las relaciones debe hacerla el
diseñador del sistema.
GESTION DE REGISTROSGESTION DE REGISTROS
INTERMEDIOS (BUFFER)INTERMEDIOS (BUFFER)
Otra forma de reducir el número de accesos a
disco es mantener tantos bloques como sea
posible en la memoria principal. El objetivo es
incrementar al máximo la posibilidad de que,
cuando se necesite acceder a un bloque, éste
ya éste en la memoria principal y, por lo tanto
no se requiera acceso al disco
Los registros intermedios (buffer) son
aquellas apartes de la memoria principal
disponible para almacenar copias de bloques
del disco.
El responsable del subsistema para la
asignación de espacio en el buffer se
denomina Gestor del buffer.
El gestor del Buffer intercepta todas las
solicitudes que hace el resto del sistema
pidiendo bloques de la BD. Si el bloque ya
esta en el buffer, se pasa al solicitante la
dirección del bloque en la memoria principal.
Si el bloque no está en el Buffer, el gestor
del buffer lee el bloque del disco y lo escribe
en el buffer y pasa la dirección del bloque
en memoria principal al solicitante. Así el
gestor del buffer es transparente para
aquellos programas del sistema que solicitan
bloques del disco.
El gestor de buffer debe utilizar técnicas mas
sofisticadas que las que se emplean en los
esquemas comunes de gestión de memoria virtual,
con el fin de servir adecuadamente al sistema de
Bd:
Estrategias de Reemplazo: cuando no queda
espacio libre en el buffer, debe sacarse un bloque
antes de que pueda escribirse uno nuevo.
Bloques Sujetos: Para que el sistema de BD
pueda recuperarse de caídas, es necesario
restringir las oportunidades en las que se puede
gravar un bloque en el disco.
Salida forzada de bloques: Existen situaciones
en la que es necesario escribir el bloque en el
disco aunque no se necesite el espacio que ocupa
en el buffer.

Más contenido relacionado

La actualidad más candente

Estructura de almacenamiento
Estructura de almacenamientoEstructura de almacenamiento
Estructura de almacenamiento
Andrea Mendez
 
Archivo Secuencial
Archivo SecuencialArchivo Secuencial
Archivo Secuencial
luismy_martinez
 
METODOS DE ORDENACION ORDENAMIENTO Y BUSQUEDA (ALGORITMOS)
METODOS DE ORDENACION ORDENAMIENTO Y BUSQUEDA (ALGORITMOS)METODOS DE ORDENACION ORDENAMIENTO Y BUSQUEDA (ALGORITMOS)
METODOS DE ORDENACION ORDENAMIENTO Y BUSQUEDA (ALGORITMOS)Fuerza Auriazul
 
Archivos secuenciales
Archivos secuencialesArchivos secuenciales
Archivos secuencialessekt07
 
Gestion de Memoria
Gestion de MemoriaGestion de Memoria
Gestion de Memoria
Julio Cesar Mendez Cuevas
 
Mapa conceptual sobre
Mapa conceptual sobre Mapa conceptual sobre
Mapa conceptual sobre Juan Anaya
 
Estructura de Datos - Unidad 6 Metodos de busqueda
Estructura de Datos - Unidad 6 Metodos de busquedaEstructura de Datos - Unidad 6 Metodos de busqueda
Estructura de Datos - Unidad 6 Metodos de busqueda
José Antonio Sandoval Acosta
 
Planificacion del procesador
Planificacion del procesadorPlanificacion del procesador
Planificacion del procesadorManuel Ceron
 
Planificacion de CPU FCFS (First Come, First Served)
Planificacion de CPU FCFS (First Come, First Served)Planificacion de CPU FCFS (First Come, First Served)
Planificacion de CPU FCFS (First Come, First Served)
Rodrigo Saraguro
 
Recursividad
RecursividadRecursividad
Recursividad
TAtiizz Villalobos
 
HASH Organizacion de Archivos en Bases de Datos
HASH Organizacion de Archivos en Bases de DatosHASH Organizacion de Archivos en Bases de Datos
HASH Organizacion de Archivos en Bases de Datos
Angel Feijo
 
Programación Orientada a Objetos -Unidad 6 archivos
Programación Orientada a Objetos -Unidad 6 archivosProgramación Orientada a Objetos -Unidad 6 archivos
Programación Orientada a Objetos -Unidad 6 archivos
José Antonio Sandoval Acosta
 
Administración de memoria con listas enlazadas
Administración de memoria con listas enlazadasAdministración de memoria con listas enlazadas
Administración de memoria con listas enlazadas69johan69
 
CUESTIONARIO SISTEMA OPERATIVO
CUESTIONARIO SISTEMA OPERATIVOCUESTIONARIO SISTEMA OPERATIVO
CUESTIONARIO SISTEMA OPERATIVO
angelaq121
 
calidad de los sistemas de informacion
calidad de los sistemas de informacioncalidad de los sistemas de informacion
calidad de los sistemas de informacion
Erika Vazquez
 
Normalización de la base de datos (3 formas normales)
Normalización de la base de datos (3 formas normales)Normalización de la base de datos (3 formas normales)
Normalización de la base de datos (3 formas normales)
michell_quitian
 
Recursividad
RecursividadRecursividad
Recursividad
TAtiizz Villalobos
 
Estructura de Datos : Ordenamiento Externo
Estructura de Datos : Ordenamiento Externo Estructura de Datos : Ordenamiento Externo
Estructura de Datos : Ordenamiento Externo
Carlos Criollo
 

La actualidad más candente (20)

Estructura de almacenamiento
Estructura de almacenamientoEstructura de almacenamiento
Estructura de almacenamiento
 
Archivo Secuencial
Archivo SecuencialArchivo Secuencial
Archivo Secuencial
 
METODOS DE ORDENACION ORDENAMIENTO Y BUSQUEDA (ALGORITMOS)
METODOS DE ORDENACION ORDENAMIENTO Y BUSQUEDA (ALGORITMOS)METODOS DE ORDENACION ORDENAMIENTO Y BUSQUEDA (ALGORITMOS)
METODOS DE ORDENACION ORDENAMIENTO Y BUSQUEDA (ALGORITMOS)
 
Archivos secuenciales
Archivos secuencialesArchivos secuenciales
Archivos secuenciales
 
Gestion de Memoria
Gestion de MemoriaGestion de Memoria
Gestion de Memoria
 
Mapa conceptual sobre
Mapa conceptual sobre Mapa conceptual sobre
Mapa conceptual sobre
 
Estructura de Datos - Unidad 6 Metodos de busqueda
Estructura de Datos - Unidad 6 Metodos de busquedaEstructura de Datos - Unidad 6 Metodos de busqueda
Estructura de Datos - Unidad 6 Metodos de busqueda
 
Planificacion del procesador
Planificacion del procesadorPlanificacion del procesador
Planificacion del procesador
 
Planificacion de CPU FCFS (First Come, First Served)
Planificacion de CPU FCFS (First Come, First Served)Planificacion de CPU FCFS (First Come, First Served)
Planificacion de CPU FCFS (First Come, First Served)
 
Recursividad
RecursividadRecursividad
Recursividad
 
HASH Organizacion de Archivos en Bases de Datos
HASH Organizacion de Archivos en Bases de DatosHASH Organizacion de Archivos en Bases de Datos
HASH Organizacion de Archivos en Bases de Datos
 
Memoria virtual
Memoria virtualMemoria virtual
Memoria virtual
 
Programación Orientada a Objetos -Unidad 6 archivos
Programación Orientada a Objetos -Unidad 6 archivosProgramación Orientada a Objetos -Unidad 6 archivos
Programación Orientada a Objetos -Unidad 6 archivos
 
Administración de memoria con listas enlazadas
Administración de memoria con listas enlazadasAdministración de memoria con listas enlazadas
Administración de memoria con listas enlazadas
 
CUESTIONARIO SISTEMA OPERATIVO
CUESTIONARIO SISTEMA OPERATIVOCUESTIONARIO SISTEMA OPERATIVO
CUESTIONARIO SISTEMA OPERATIVO
 
calidad de los sistemas de informacion
calidad de los sistemas de informacioncalidad de los sistemas de informacion
calidad de los sistemas de informacion
 
Normalización de la base de datos (3 formas normales)
Normalización de la base de datos (3 formas normales)Normalización de la base de datos (3 formas normales)
Normalización de la base de datos (3 formas normales)
 
Recursividad
RecursividadRecursividad
Recursividad
 
Manejo de memoria
Manejo de memoriaManejo de memoria
Manejo de memoria
 
Estructura de Datos : Ordenamiento Externo
Estructura de Datos : Ordenamiento Externo Estructura de Datos : Ordenamiento Externo
Estructura de Datos : Ordenamiento Externo
 

Destacado

Algortimos taller
Algortimos tallerAlgortimos taller
Algortimos tallerpoliv06
 
Criterios de evaluacion p3 algortimos dia 8 de junio
Criterios de evaluacion p3 algortimos dia 8 de junioCriterios de evaluacion p3 algortimos dia 8 de junio
Criterios de evaluacion p3 algortimos dia 8 de junioEli Diaz
 
Sesion 02 algoritmos y estructura de datos
Sesion 02  algoritmos y estructura de datosSesion 02  algoritmos y estructura de datos
Sesion 02 algoritmos y estructura de datosimagincor
 
Estructura de Datos y Algoritmos I (I Bimestre)
Estructura de Datos y Algoritmos I (I Bimestre)Estructura de Datos y Algoritmos I (I Bimestre)
Estructura de Datos y Algoritmos I (I Bimestre)
Videoconferencias UTPL
 
Sesion 01 algoritmos y estructura de datos
Sesion 01  algoritmos y estructura de datosSesion 01  algoritmos y estructura de datos
Sesion 01 algoritmos y estructura de datosimagincor
 
Arboles binarios
Arboles binariosArboles binarios
Arboles binariosfavi_hola
 
Presentación curso 2150510 algoritmos y programación
Presentación curso 2150510 algoritmos y programaciónPresentación curso 2150510 algoritmos y programación
Presentación curso 2150510 algoritmos y programaciónLuzmila Rojas Estrada
 
7492681 m-algoritmos
7492681 m-algoritmos7492681 m-algoritmos
7492681 m-algoritmoscgviviana
 

Destacado (8)

Algortimos taller
Algortimos tallerAlgortimos taller
Algortimos taller
 
Criterios de evaluacion p3 algortimos dia 8 de junio
Criterios de evaluacion p3 algortimos dia 8 de junioCriterios de evaluacion p3 algortimos dia 8 de junio
Criterios de evaluacion p3 algortimos dia 8 de junio
 
Sesion 02 algoritmos y estructura de datos
Sesion 02  algoritmos y estructura de datosSesion 02  algoritmos y estructura de datos
Sesion 02 algoritmos y estructura de datos
 
Estructura de Datos y Algoritmos I (I Bimestre)
Estructura de Datos y Algoritmos I (I Bimestre)Estructura de Datos y Algoritmos I (I Bimestre)
Estructura de Datos y Algoritmos I (I Bimestre)
 
Sesion 01 algoritmos y estructura de datos
Sesion 01  algoritmos y estructura de datosSesion 01  algoritmos y estructura de datos
Sesion 01 algoritmos y estructura de datos
 
Arboles binarios
Arboles binariosArboles binarios
Arboles binarios
 
Presentación curso 2150510 algoritmos y programación
Presentación curso 2150510 algoritmos y programaciónPresentación curso 2150510 algoritmos y programación
Presentación curso 2150510 algoritmos y programación
 
7492681 m-algoritmos
7492681 m-algoritmos7492681 m-algoritmos
7492681 m-algoritmos
 

Similar a Estructura de archivos y sistema

Caracteristicas dbms (1)
Caracteristicas dbms (1)Caracteristicas dbms (1)
Caracteristicas dbms (1)Javier Plazas
 
BASES DE DATOS
BASES DE DATOSBASES DE DATOS
BASES DE DATOS
yurley_alexa
 
Clase04 Arquitectura PACS
Clase04 Arquitectura PACSClase04 Arquitectura PACS
Clase04 Arquitectura PACS
Eduardo Silva
 
Ova
OvaOva
Unidad 2 Arquitectura del gestor
Unidad 2 Arquitectura del gestorUnidad 2 Arquitectura del gestor
Unidad 2 Arquitectura del gestor
Kira Yagamí
 
Base de datos
Base de datosBase de datos
Base de datos
MJRP1993
 
Gestion de almacenamiento
Gestion de almacenamientoGestion de almacenamiento
Gestion de almacenamientoedgarutn2011
 
Clase 04 Arquitectura PACS
Clase 04 Arquitectura PACSClase 04 Arquitectura PACS
Clase 04 Arquitectura PACS
Eduardo Silva
 
Administración de Base de Datos
Administración de Base de DatosAdministración de Base de Datos
Administración de Base de DatosAxel Mérida
 
Ciberconsulta -karen plata- 11-6
Ciberconsulta -karen plata- 11-6Ciberconsulta -karen plata- 11-6
Ciberconsulta -karen plata- 11-6Karen Plata
 
Sistemas de-archivo
Sistemas de-archivoSistemas de-archivo
Sistemas de-archivo
calderonsaritaa
 
Oracle g11 - Administration workshop1 sg1
Oracle g11 - Administration workshop1  sg1 Oracle g11 - Administration workshop1  sg1
Oracle g11 - Administration workshop1 sg1
Rodolfo Zoilo
 
Base de dato act4
Base de  dato act4Base de  dato act4
Base de dato act4
Niduvit Salgado
 
Base de dato
Base de  dato Base de  dato
Base de dato
Niduvit Salgado
 

Similar a Estructura de archivos y sistema (20)

Base de datos
Base de datosBase de datos
Base de datos
 
Base de datos
Base de datosBase de datos
Base de datos
 
Base de datos
Base de datosBase de datos
Base de datos
 
Caracteristicas dbms (1)
Caracteristicas dbms (1)Caracteristicas dbms (1)
Caracteristicas dbms (1)
 
BASES DE DATOS
BASES DE DATOSBASES DE DATOS
BASES DE DATOS
 
Clase04 Arquitectura PACS
Clase04 Arquitectura PACSClase04 Arquitectura PACS
Clase04 Arquitectura PACS
 
Ova
OvaOva
Ova
 
Base de datos
Base de datosBase de datos
Base de datos
 
Unidad 2 Arquitectura del gestor
Unidad 2 Arquitectura del gestorUnidad 2 Arquitectura del gestor
Unidad 2 Arquitectura del gestor
 
Base de datos
Base de datosBase de datos
Base de datos
 
Gestion de almacenamiento
Gestion de almacenamientoGestion de almacenamiento
Gestion de almacenamiento
 
Clase 04 Arquitectura PACS
Clase 04 Arquitectura PACSClase 04 Arquitectura PACS
Clase 04 Arquitectura PACS
 
Administración de Base de Datos
Administración de Base de DatosAdministración de Base de Datos
Administración de Base de Datos
 
Ciberconsulta -karen plata- 11-6
Ciberconsulta -karen plata- 11-6Ciberconsulta -karen plata- 11-6
Ciberconsulta -karen plata- 11-6
 
Sistemas de-archivo
Sistemas de-archivoSistemas de-archivo
Sistemas de-archivo
 
Referente conceptual
Referente conceptualReferente conceptual
Referente conceptual
 
Oracle g11 - Administration workshop1 sg1
Oracle g11 - Administration workshop1  sg1 Oracle g11 - Administration workshop1  sg1
Oracle g11 - Administration workshop1 sg1
 
Base de dato act4
Base de  dato act4Base de  dato act4
Base de dato act4
 
Base de dato
Base de  dato Base de  dato
Base de dato
 
Bases de datos
Bases de datosBases de datos
Bases de datos
 

Último

TA02.LAIVE GRUPO1 auditoría financiera.pdf
TA02.LAIVE GRUPO1 auditoría financiera.pdfTA02.LAIVE GRUPO1 auditoría financiera.pdf
TA02.LAIVE GRUPO1 auditoría financiera.pdf
DeyaniradelPilar
 
PPT Inspecciones Diarias Codelco - EE.CC. 31-05 al 02 Junio 2024.pptx
PPT  Inspecciones Diarias Codelco - EE.CC. 31-05 al 02 Junio 2024.pptxPPT  Inspecciones Diarias Codelco - EE.CC. 31-05 al 02 Junio 2024.pptx
PPT Inspecciones Diarias Codelco - EE.CC. 31-05 al 02 Junio 2024.pptx
Claudio Toro Avalos
 
EJEMPLO BIBLICO DE LIDERAZGO (DANIEL).pptx
EJEMPLO BIBLICO DE LIDERAZGO (DANIEL).pptxEJEMPLO BIBLICO DE LIDERAZGO (DANIEL).pptx
EJEMPLO BIBLICO DE LIDERAZGO (DANIEL).pptx
JeanCGonzlez
 
W0001-3_LIDERAZGO-PRESENTACIÓN SEMANA_4.pptx
W0001-3_LIDERAZGO-PRESENTACIÓN SEMANA_4.pptxW0001-3_LIDERAZGO-PRESENTACIÓN SEMANA_4.pptx
W0001-3_LIDERAZGO-PRESENTACIÓN SEMANA_4.pptx
Giovanny Puente
 
Planeación Estrategica 2024 Lideres en Vidrio.pptx
Planeación Estrategica 2024 Lideres en Vidrio.pptxPlaneación Estrategica 2024 Lideres en Vidrio.pptx
Planeación Estrategica 2024 Lideres en Vidrio.pptx
ProduvisaCursos
 
Lineamientos para la ejecución del Simulacro Nacional Multipeligro 2023-2024...
Lineamientos para la ejecución del Simulacro Nacional Multipeligro  2023-2024...Lineamientos para la ejecución del Simulacro Nacional Multipeligro  2023-2024...
Lineamientos para la ejecución del Simulacro Nacional Multipeligro 2023-2024...
MiguelCautiCordova
 
W0001-3_LIDERAZGO-PRESENTACIÓN SEMANA_5.pptx
W0001-3_LIDERAZGO-PRESENTACIÓN SEMANA_5.pptxW0001-3_LIDERAZGO-PRESENTACIÓN SEMANA_5.pptx
W0001-3_LIDERAZGO-PRESENTACIÓN SEMANA_5.pptx
Giovanny Puente
 

Último (7)

TA02.LAIVE GRUPO1 auditoría financiera.pdf
TA02.LAIVE GRUPO1 auditoría financiera.pdfTA02.LAIVE GRUPO1 auditoría financiera.pdf
TA02.LAIVE GRUPO1 auditoría financiera.pdf
 
PPT Inspecciones Diarias Codelco - EE.CC. 31-05 al 02 Junio 2024.pptx
PPT  Inspecciones Diarias Codelco - EE.CC. 31-05 al 02 Junio 2024.pptxPPT  Inspecciones Diarias Codelco - EE.CC. 31-05 al 02 Junio 2024.pptx
PPT Inspecciones Diarias Codelco - EE.CC. 31-05 al 02 Junio 2024.pptx
 
EJEMPLO BIBLICO DE LIDERAZGO (DANIEL).pptx
EJEMPLO BIBLICO DE LIDERAZGO (DANIEL).pptxEJEMPLO BIBLICO DE LIDERAZGO (DANIEL).pptx
EJEMPLO BIBLICO DE LIDERAZGO (DANIEL).pptx
 
W0001-3_LIDERAZGO-PRESENTACIÓN SEMANA_4.pptx
W0001-3_LIDERAZGO-PRESENTACIÓN SEMANA_4.pptxW0001-3_LIDERAZGO-PRESENTACIÓN SEMANA_4.pptx
W0001-3_LIDERAZGO-PRESENTACIÓN SEMANA_4.pptx
 
Planeación Estrategica 2024 Lideres en Vidrio.pptx
Planeación Estrategica 2024 Lideres en Vidrio.pptxPlaneación Estrategica 2024 Lideres en Vidrio.pptx
Planeación Estrategica 2024 Lideres en Vidrio.pptx
 
Lineamientos para la ejecución del Simulacro Nacional Multipeligro 2023-2024...
Lineamientos para la ejecución del Simulacro Nacional Multipeligro  2023-2024...Lineamientos para la ejecución del Simulacro Nacional Multipeligro  2023-2024...
Lineamientos para la ejecución del Simulacro Nacional Multipeligro 2023-2024...
 
W0001-3_LIDERAZGO-PRESENTACIÓN SEMANA_5.pptx
W0001-3_LIDERAZGO-PRESENTACIÓN SEMANA_5.pptxW0001-3_LIDERAZGO-PRESENTACIÓN SEMANA_5.pptx
W0001-3_LIDERAZGO-PRESENTACIÓN SEMANA_5.pptx
 

Estructura de archivos y sistema

  • 1.
  • 2. El rendimiento del sistema depende de la eficiencia de la estructura de datos que se utiliza para representar la información en la base de datos y de la eficiencia del sistema para operar sobre esa base de datos
  • 3. El sistema operativo de la computadora puede proporcionar algunas de las funciones del sistema de la base de datos. En la mayoría de los casos, el sistema operativo proporciona únicamente los servicios mas básicos y el sistema de base de datos debe construirse sobre esa base.
  • 4. El sistema de base de datos consta de varios componentes funcionales , entre los que se encuentran: • El gestor de archivos, que se encarga de asignar el espacio en la memoria del disco y la estructura de datos que se usa para representar información almacenada en el disco. • El gestor de registros intermedios buffer, que es responsable de transferir la información entre la memoria del disco y la memoria principal. • El analizador sintáctico (parser) de consultas, que traduce sentencias de un lenguaje de consulta a un lenguaje de nivel más bajo. • El selector de estrategias, que intenta transformar la solicitud del usuario en una forma equivalente pero más eficiente, encontrando así una estrategia adecuada para ejecutar la consulta.
  • 5. • El gestor de autorización e integridad, que prueba la satisfacción de las restricciones de integridad (como, por ejemplo, restriccio­nes de clave) y comprueba que el usuario está autorizado para acceder a los datos. • El gestor de recuperaciones, que asegura que la base de datos permanezca en un estado consistente (correcto) a pesar de que ocurran rallos en el sistema. • El controlador de concurrencia, que asegura que las interacciones concurrentes con la base de datos se llevan a cabo sin conflictos entre ellas.
  • 6. Además se requieren varias estructuras de datos como parte de la implementación física, entre las que se encuentran: • Archivos de datos, que almacenan la base de datos. • Diccionario de datos, que almacena información acerca de la estructura de la base de datos, y la información de autorización, como las restricciones de clave. • Índices, que permiten tener acceso rápido a datos que tienen determinados valores. • Datos estadísticos, que almacenan información acerca de los datos en la base de datos. Esta. información la utiliza el selector de estrategias.
  • 7. 7.2. MEDIOS DE ALMACENAMIENTO7.2. MEDIOS DE ALMACENAMIENTO FISICOFISICO En la mayoría de los sistemas de computadores existen varios tipos de almacenamiento de datos. Estos medios de almacenamiento se clasifican según la velocidad con que puede tenerse acceso a los datos, según el coste por unidad de datos para comprar la memoria, y según la «fiabilidad» que tienen. Entre los medios con que normalmente se cuenta están:
  • 8. • Próximo (caché). Esta es la forma de almacenamiento más rápida y más costosa. El tamaño de la memoria caché es muy pequeño y el sistema operativo gestiona su utilización. No necesitaremos preocupamos de la gestión de la memoria caché en el sistema de base de datos. • Memoria principal. Este es el medio de almacenamiento que se emplea para los datos disponibles sobre los cuales se va a operar. Las instrucciones de máquina de propósito general operan sobre la memoria principal. Aunque la memoria principal puede contener varios megabytes de datos, casi siempre es demasiado pequeña para almacenar la base de datos completa. A la memoria principal muchas veces se le llama memoria central. Normalmente los contenidos de la memoria principal se pierden si hay un corte de energía eléctrica o si se «cae» el sistema.
  • 9. • Almacenamiento en disco. Este es el medio principal para el almacenamiento de datos a largo plazo. Lo común es que toda la base de datos esté almacenada en disco. Los datos deben trasladarse del disco a la memoria principal para poder operar sobre ellos. Después de realizar las operaciones, los datos deben devolverse al disco. • Almacenamiento en cinta. Este tipo de almacenamiento se usa principalmente para copias de seguridad y datos de archivo. Aunque la cinta es mucho más barata que el disco, el acceso a los datos es mucho más lento, puesto' que la cinta debe leerse secuencialmente desde el principio. Por esta razón, el almacena­miento en cinta se denomina almacenamiento de acceso secuencial y se usa principalmente para recuperarse de fallos en el disco
  • 10. 7.3. ORGANIZACION DE ARCHIVOS7.3. ORGANIZACION DE ARCHIVOS Un archivo está organizado lógicamente como una secuencia de regis­tros. Estos registros se asignan a bloques del disco. Los archivos se dan como construcciones básicas en los sistemas operativos, por lo que supondremos que existe un sistema de archivos subyacente. Necesitamos considerar formas de representar modelos lógicos de datos en términos de archivos.
  • 11. Aunque los bloques son de tamaño fijo determinado por las propie­dades físicas del disco y por el sistema operativo, los tamaños de los registros varían. En una base de datos relacional, las tuplas de relacio­nes distintas son, por lo general, de diferente tamaño. En una base de datos de red es probable que el tipo de registro propietario sea de distinto tamaño que el tipo de registro miembro.
  • 12. Una forma de enfocar la asignación de la base de datos a los archivos es utilizar varios archivos y almacenar en un archivo dado solamente registros de una longitud fija. Una alternativa es estructurar los archivos de una forma tal que podamos acomodar registros de varias longitudes diferentes. Los archivos de registros de longitud fija son más fáciles de implementar que los archivos de registros de longitud variable. Muchas de las técnicas usadas pueden aplicarse al caso de longitud variable. Así, pues, empezamos considerando un archivo de registros de longitud fija.
  • 13. 7.3.1. Registros de longitud fija7.3.1. Registros de longitud fija Como ejemplo, consideremos un archivo de registros depósito para le base de datos bancaria. Cada registro de este archivo se define como sigue: type depósito = registro nombre-sucursal: char (20); número-cuenta: integer; nombre-cliente: char (20); saldo: real; end
  • 14. 7.3.2. Registros de longitud variable7.3.2. Registros de longitud variable Los registros de longitud variable se presentan en los sistemas de base de datos de varias formas: • Almacenamiento de varios tipos de registros en un archivo. • Tipos de registros que permiten uno o más campos de longitudes variables. • Tipos de registros que permiten campos repetidos. Existen varias técnicas para implementar los registros de longitud variable. El formato del registro es:
  • 15. type lista-depósito = record nombre-sucursal: char (20); info-cuenta ; array [1 .. 00] of record; número-cuenta: integer; nombre-cliente: char (20); saldo; real; end end Definimos info-cuenta como un array con un número arbitrario dc elementos de manera que el tamaño del registro no tiene límite (¡salvo. por supuesto, el tamaño del disco!).
  • 16. Representación en cadena de bytesRepresentación en cadena de bytes Un método sencillo para implementar los registros de longitud variable es añadir un símbolo especial de fin de registro (.1) al final de cada registro. Así podemos almacenar cada registro como una cadena de bytes consecutivos. La representación en cadena de bytes tiene varias desventajas. Las más serias son:
  • 17. • No es fácil volver a utilizar el espacio que ocupaba un registro que se eliminó. Aunque existen técnicas para gestionar la inserción y eliminación, resultan en un gran número de fragmentos pequeños de espacio en disco que se desperdician. • En general, los registros no disponen de espacio para crecer. Si un registro de longitud variable se hace más largo debe moverse y si el registro está sujeto, el movimiento resulta costoso. Por tanto, la representación en cadena de bytes normalmente no se utiliza para implementar registros de longitud variable.
  • 18. Representación de longitud fijaRepresentación de longitud fija Para implementar los registros de longitud variable de manera eficiente en un sistema de archivos, utilizamos uno o más registros de longitud lija para representar un registro de longitud variable. Existen dos técnicas de para implementar archivos de registros de longitud variable empleando registros de longitud fija .
  • 19. • Espacio reservado. Si hay una longitud máxima de registro que nunca se excede, podemos utilizar registros de longitud fija de esa longitud. El espacio no utilizado (para registros más cortos que el espacio máximo) se llena con un símbolo especial nulo o de «fin de registro» . • Punteros. El registro de longitud variable se representa por una lista de registros de longitud fija encadenado por medio de punteros.
  • 20. El método de espacio reservado es útil cuando gran parte de los registros es de longitud cercana al máximo. Si no es así, puede desperdiciarse una cantidad apreciable de espacio. En el ejemplo bancario puede darse el caso de que algunas sucursales tengan muchas más cuentas que otras. Esto nos lleva a considerar el uso del método de punteros. Para representar el archivo empleando el método de punteros.  
  • 21. 7.4 ORGANIZACIÓN DE REGRISTROS EN BLOQUES Un archivo puede considerarse como una colección de registros. Sin embargo, como los datos se transfieren entre el almacenamiento en disco y la memoria principal en unidades de bloque, vale la pena asignar los registros a los bloques de tal forma que un simple bloque contenga registros relacionados entre sí. Si asignamos los registros a los bloques al azar, normalmente se dará el caso de que sea necesario tener acceso a un bloque diferente para cada registro que se acceda. Si podemos acceder a varios de los registros deseados con un solo acceso a bloque, habremos ahorrado algunos accesos a disco. Anteriormente describimos una estructura de archivos en la que toda la información relativa a las cuentas de una sucursal aparecía en un registro (de longitud variable). Las representaciones de esta estruc­tura de archivo con registros de longitud fija utilizaban varios registros para representar un registro de longitud variable. Si podemos almace­nar varios de esos registros en un bloque reducimos el número de accesos a bloque requeridos para leer un registro de longitud variable.
  • 22. Es fácil agrupar registros de esta manera si la base de datos nunca cambia. Sin embargo, supóngase que se abre una nueva cuenta en la sucursal Perryridge. Si estamos utilizando la estructura que se muestra en la Figura 7.12 desearíamos añadir el registro que corresponde a esta cuenta al mismo bloque en que están el resto de las cuentas de la sucursal Perryridge.
  • 23. • Como alternativa consideremos una estructura que ocupa un espa­cio un poco mayor que la estructura de la Figura anterior pero que permite mejorar la eficiencia del acceso a la información. A cada valor ilc nomhre-aucursal le asignamos una cadena de bloques. Cada cadena de bloques contiene el registro de longitud variable completo para el correspondiente valor de nombre-sucursal. • La Figura 7.13 muestra la estructura apropiada para el archivo depósito. Las cadenas tienen una estructura ligeramente diferente de las demás estructuras de regis­tros de longitud fija que hemos utilizado: • El primer registro de la cadena contiene el valor de nombre-sucursal de la cadena. • Los siguientes registros contienen los campos que se repiten. No hace falta repetir el nombre-sucursal, ya que es el mismo para todos los registros de la cadena.
  • 24. • Obsérvese que hay dos longitudes de registro diferentes en cada cadena. El primer registro contiene un valor de nombre-sucursal. Todos los demás registros contienen tres campos: número-cuenta, nombre-oliente, y saldo. • cada cadena ocupa exactamente un bloque. Si extendemos el ejemplo a uno más real, en el que una sucursal tiene miles de cuentas, una cadena puede requerir varios bloques. • Reservamos un espacio fijo al prin­cipio de cada bloque como encabezamiento de bloque y lo usamos para almacenar los punteros de la cadena. La Figura 7.14 muestra parte de una estructura de archivos de una base de datos bancaria extendida. • Al crecer una cadena por inserción de registros, puede que se necesite añadirle nuevos bloques. FIGURA 7.14FIGURA 7.14 BLOQUESBLOQUES ENCADENADOSENCADENADOS
  • 25. ARCHIVOS SECUENCIALESARCHIVOS SECUENCIALES • Un archivo secuencial está diseñado para procesar de manera eficiente registros en un determinado orden basándose en alguna clave de bús­queda. Para permitir una recuperación rápida de registros en el orden de la clave de búsqueda, los registros se encadenan por medio de punteros. El puntero de cada registro apunta al siguiente registro en el orden de la clave de búsqueda. • La Figura 7.15 muestra un archivo secuencial de registros depósito sacado del ejemplo bancario. Los registros están almacenados en el orden de la clave de búsqueda, empleando nombre-sucursal como clave de búsqueda. Figura 7.15. Archivo secuencial de registros depósito.
  • 26. • Para la inserción aplicamos las siguientes reglas: 1.1. Localizar el registro en el archivo que precede al registro que se va a insertar en el orden de la clave de búsqueda. 2.2. Si existe algún registro libre (es decir, un espacio que haya resultado de una eliminación) dentro del mismo bloque que este registro, se inserta allí el nuevo registro. Si no, se inserta un nuevo bloque de desbordamiento. En cualquier caso, se ajustan los punteros para que los registros queden encadenados en el orden de la clave de búsqueda. • La Figura 7.16 muestra el archivo de la Figura 7.15 después de la inserción del registro (North Town, 888, Adams, 800). La estructura de la Figura 7.16 permite insertar rápidamente registros nuevos, pero obliga a las aplicaciones de procesamiento secuencial de archivos a procesar los registros en un orden que no corresponde al orden físico de los registros.
  • 27. 7.6.ASIGNACIÓN (MAPPING) DE DATOS7.6.ASIGNACIÓN (MAPPING) DE DATOS RELACIONALES A ARCHIVOSRELACIONALES A ARCHIVOS • Muchos sistemas de base de datos relaciónales almacenan cada relación en un archivo separado. Esto permite al sistema de base de datos aprovechar al máximo el sistema de archivos que forma parte del sistema operativo. • Por tanto, las relaciones pueden asignarse a una estructura simple de archivos. Esta implementación sencilla de un sistema de base de datos relacional se adapta bien a los sistemas de base de datos diseñados para computadores persona­les. En estos sistemas, el tamaño de la base de datos es pequeño, por lo que no se aprovecharía una estructura de archivos sofisticada. • Este enfoque sencillo de la implementación de bases de datos relacionales se vuelve menos satisfactorio al aumentar el tamaño de la base de datos.
  • 29. Un sistema de base de datos relacional necesita mantener datos acerca de las relaciones. A esta información se le denomina: Diccionario de Datos o Catalogo de Sistema.
  • 30. Entre los tipos de información que el sistema debe almacenar están: Los nombres de las relaciones. Los nombres de los archivos. Los dominios de los atributos. Los nombres de las vistas definidas en la base de datos y la definición de esas vistas. Las restricciones de integridad de cada relación (ejemplo: las restricciones de clave)
  • 31. Los sistemas que utilizan estructuras muy sofisticadas para almacenar relaciones, pueden conservarse datos estadísticos y descriptivos acerca de las relaciones: Número de tuplas en cada relación. Método de almacenamiento utilizado para cada relación( ejemplo, agrupado ó sin agrupar)
  • 32. Si se utiliza la BD para almacenar datos del sistema, simplificamos la estructura global del sistema y permitimos aprovechar toda la capacidad de aquélla para agilizar el acceso a los datos del sistema. La elección de cómo se van a representar los datos por medio de las relaciones debe hacerla el diseñador del sistema.
  • 33. GESTION DE REGISTROSGESTION DE REGISTROS INTERMEDIOS (BUFFER)INTERMEDIOS (BUFFER) Otra forma de reducir el número de accesos a disco es mantener tantos bloques como sea posible en la memoria principal. El objetivo es incrementar al máximo la posibilidad de que, cuando se necesite acceder a un bloque, éste ya éste en la memoria principal y, por lo tanto no se requiera acceso al disco
  • 34. Los registros intermedios (buffer) son aquellas apartes de la memoria principal disponible para almacenar copias de bloques del disco. El responsable del subsistema para la asignación de espacio en el buffer se denomina Gestor del buffer.
  • 35. El gestor del Buffer intercepta todas las solicitudes que hace el resto del sistema pidiendo bloques de la BD. Si el bloque ya esta en el buffer, se pasa al solicitante la dirección del bloque en la memoria principal.
  • 36. Si el bloque no está en el Buffer, el gestor del buffer lee el bloque del disco y lo escribe en el buffer y pasa la dirección del bloque en memoria principal al solicitante. Así el gestor del buffer es transparente para aquellos programas del sistema que solicitan bloques del disco.
  • 37. El gestor de buffer debe utilizar técnicas mas sofisticadas que las que se emplean en los esquemas comunes de gestión de memoria virtual, con el fin de servir adecuadamente al sistema de Bd: Estrategias de Reemplazo: cuando no queda espacio libre en el buffer, debe sacarse un bloque antes de que pueda escribirse uno nuevo.
  • 38. Bloques Sujetos: Para que el sistema de BD pueda recuperarse de caídas, es necesario restringir las oportunidades en las que se puede gravar un bloque en el disco. Salida forzada de bloques: Existen situaciones en la que es necesario escribir el bloque en el disco aunque no se necesite el espacio que ocupa en el buffer.