Excelencia Educativa Abierta al Pueblo

REPÚBLICA BOLIVARIANA DE VENEZUELA MINISTERIO DEL PODER POPULAR PARA LA DEFENSA UNIVERSIDAD NACIONAL EXPERIMENTAL POLITÉCNICA DE LA FUERZA ARMADA NACIONAL, “UNEFA” NÚCLEO MIRANDA, EXTENSIÓN SANTA TERESA COORDINACIÓN DE INGENIERIA UNIDAD CURRICULAR BASE DE DATOS.

SMBDs.

Autor: Henríquez Yutcelinis C.I.: 20.065.592 Aular Wiljac C.I.: 19.960.100 Tutora: Serrano Franlia 7MO Semestre ISD1

Santa Teresa del Tuy, 04 de abril de 2012

cabeza de lectura / grabación. Por todo esto. Es posible desarrollar (y así se ha hecho) un gran número de estructuras de almacenamiento diferentes. Físicamente. etc. Para esto se utilizan técnicas para organizar los datos almacenados en disco de manera tal que un elemento de información requerido se pueda localizar con un mínimo de operaciones de E/S. y desde luego. por lo regular en discos magnéticos de cabeza móvil. discos ópticos. etc. un objetivo prioritario de desempeño en sistemas de bases de datos es reducir al mínimo el número de accesos a disco. pista. cilindro. Lo fundamental en un ambiente de base de datos es que los tiempos de acceso a disco son mucho más largos que los tiempos de acceso a memoria principal. Daremos por sentado que se conocen los aspectos básicos de la arquitectura de los discos y se conocen términos tales como tiempo de búsqueda. aunque en algunos sistemas pueden utilizarse otros medios (por ejemplo tambores. Los tiempos de acceso a disco representativos van de cerca de 400 milisegundos o más para un disco flexible en un micro hasta unos 30 milisegundos o menos para un disco rápido en un mainframe. retardo rotacional. No existe una sola estructura óptima para todas las aplicaciones por lo que un buen sistema debe poder utilizar varias estructuras . Cualquier organización de los datos en el disco se denomina estructura de almacenamiento. tienen distintas características de desempeño que son adecuadas para ciertas aplicaciones y no lo son para otras.Estructura Interna de los SMBD Manejo de Memoria El nivel interno de un sistema de bases de datos es el que se ocupa de la forma como están almacenados los datos. el acceso a memoria principal será con toda probabilidad por lo menos cuatro o cinco órdenes de magnitud más rápido que el acceso a disco en un sistema dado.) en vez de esos discos o además de ellos. las bases de datos casi siempre se almacenan en medios de acceso directo.

para ciertos archivos que sirven como entrada a aplicaciones batch. Una organización de archivos. directo e indexado. para copias de backup de la BD. Los tres métodos de organización de archivos disponibles son: secuencial. los backups. La organización secuencial es usada para archivos journal. El segundo tipo de organización secuencial es aplicable en un ambiente de procesamiento de archivos. Organización de Archivos La organización de archivos se refiere a la estructura física de un archivo sobre el disco. junto con las posibles técnicas de acceso para esa organización constituye un método de acceso. a fin de almacenar diversas porciones de la base de datos en diversas formas y deberá ser posible cambiar la estructura de almacenamiento de una porción determinada cuando varíen o se comprendan mejor los requerimientos de desempeño. Un archivo con este tipo de organización secuencial tiene todos sus registros almacenados según el valor de una clave que es normalmente la clave primaria. etc. para archivos de transacciones batch.distintas. Las organizaciones directas e indexadas son técnicas usadas por el SMBD para el almacenamiento de data dentro de la base de datos. Organización Secuencial En este tipo de organización. Existen dos tipos posibles de organización secuencial. . Los archivos journal. los archivos de transacciones batch son del tipo pila. Si los registros son almacenados sin ningún orden específico sino sólo por su orden cronológico de llegada el archivo correspondiente es una pila. Una técnica de acceso define los pasos involucrados en el almacenamiento y la recuperación de registros específicos a través de acceso secuencial o aleatorio a dicho registro. los registros son almacenados en la secuencia física en la que ellos van a ser procesados. donde un gran porcentaje de los registros necesitan ser accesados frecuentemente. Cada una de estas organizaciones es usada por el SMBD en alguna forma.

Pero si se debe insertar un nuevo registro que va en la mitad del archivo. Son posibles dos tipos de organización directa. la organización secuencial no es recomendable para un ambiente en línea donde se requiere un acceso rápido. una usando técnicas de direccionamiento en base a una clave y la otra usando técnicas hashing. En un archivo con este tipo de organización.Con un archivo organizado secuencialmente sólo se puede usar acceso secuencial. Técnicas Hashing Son similares a las de direccionamiento por clave en que la fórmula es aplicada a un campo del registro (usualmente la clave primaria) teniendo como resultado un valor usado como la dirección en disco para almacenar ese registro. . El acceso aleatorio no es posible. La diferencia es que las técnicas hashing no garantizan una dirección de almacenamiento única. el archivo completo debe ser recopiado a una nueva localización física donde se coloca adecuadamente el nuevo registro. puede ser actualizado y reescrito en el mismo lugar físico en el que se encontraba. La fórmula puede producir dos o más registros con el mismo valor resultante. El borrado físico de un registro existente también requiere que el archivo sea recopiado a una nueva localización física donde no se encuentra el registro borrado Organización Directa La organización directa da un performance excepcional en un ambiente on-line. Por esto. cada registro es almacenado y recuperado en una dirección de disco sobre la base de una fórmula que es aplicada a un valor de un campo del registro. Cuando se actualiza la información de un registro existente. todos los registros que lo preceden físicamente deben ser recuperados antes de obtenerlo a él. Si un registro específico va a ser consultado desde el archivo. los registros pueden ser añadidos sólo al final del archivo. donde se requiere acceso aleatorio. En la organización directa.

Entonces. Los nueve registros del archivo empleado están almacenados en el archivo de datos y el archivo índice tiene una entrada por cada una de las entradas en el archivo de datos. al buscar los registros Empleado según el orden del archivo índice. El tener un archivo índice implica requerimientos de espacio adicionales para poder almacenar un registro. pero los registros del archivo índice si lo están. que indica donde está almacenado ese registro en el archivo de datos. . se están accediendo los registros Empleado según el orden de la clave primaria. La función hashing es seleccionada de manera tal que los registros sean esparcidos lo más uniformemente posible a lo 9largo de todo el archivo.Esta técnica permite utilizar el disco eficientemente mientras intenta retener la rapidez del acceso aleatorio (no más de un acceso a disco para obtener un registro específico) si se pueden minimizar los efectos de los resultados duplicados de la fórmula. Cuando para dos o más registros se obtiene como resultado el mismo valor de la función hashing se dice que se produce una colisión y los dos registros son llamados sinónimos. pero no quedan almacenados en una secuencia en particular. Cada registro en el archivo índice contiene un NUM-EMP. Organización aleatoria indexada En este tipo de organización los registros en el archivo de datos están almacenados de manera aleatoria y en el archivo índice existe una entrada por cada registro lógico existente en el archivo de datos (este tipo de archivo índice se conoce como archivo denso) almacenados según el orden de la clave primaria. y un número de página. que es la clave primaria del registro Empleado. Los registros lógicos en el archivo de datos no están almacenados según el orden de la clave primaria. ¿Por qué es necesario este overhead? Una razón es para permitir el acceso secuencial de los registros lógicos.

Organización indexada secuencial En este tipo de organización los registros en el archivo de datos están almacenados según la secuencia de la clave primaria. si se da algún error en los datos. hay un bug (Error o un defecto en el software o hardware que hace que un programa funcione incorrectamente. empieza a deshacer las órdenes ejecutadas hasta dejar la base de datos en su estado inicial (llamado punto de integridad). si es capaz de mantener la integridad de los datos. Siendo así a nivel del archivo índice sólo se necesita una entrada o un registro por cada página del archivo de datos (índice no denso) correspondiente al registro que tenga el mayor o el menor valor de clave primaria en la página del archivo de datos. Un SGBD se dice transaccional. haciendo que estas transacciones no puedan finalizar en un estado intermedio. Transacciones Una transacción en un Sistema de Gestión de Bases de Datos se puede decir que es un conjunto de órdenes que se ejecutan formando una unidad de trabajo. Cuando por alguna causa el sistema debe cancelar la transacción. el lenguaje de consulta de datos SQL (Structured Query Language). Las actividades de recuperación incluyen el hacer . provee los mecanismos para especificar que un conjunto de acciones deben constituir una transacción. es decir en forma indivisible o atómica. como si la orden de la transacción nunca se hubiese realizado. A menudo los bugs son causados por conflictos del software cuando las aplicaciones intentan funcionar en tándem) de programa ó de hardware. Recuperabilidad La recuperabilidad significa que. Para esto. el DBA (Administrador de base de datos) puede traer de vuelta la base de datos al tiempo y estado en que se encontraba en estado consistente antes de que el daño se causara.

 Las pruebas de recuperación consisten en la restauración de los datos. La recuperación es una de las tareas más importantes de los DBA's.mdf. tales como hacer diversas copias en medios de almacenamiento removibles y almacenarlos fuera del área en antelación a un desastre anticipado.dbf.ldf. . después se aplican las bitácoras a esos datos para restaurar la base de datos y llevarla a un estado consistente en un tiempo y momento determinados. .myi). Alternativamente se puede restaurar una base de datos que se encuentra fuera de línea sustituyendo con una copia de la base de datos. . Es posible hacer respaldos de la base de datos que no incluyan las estampas de tiempo y las bitácoras. .myd. .respaldos de la base de datos y almacenar esos respaldos de manera que se minimice el riesgo de daño o pérdida de los mismos. . . MySQL. MS Access).mdb.SQL Server.db. .   Las cintas de backup Los ficheros nativos de la Base de datos (. . . La recuperaabilidad tiene dos formas primarias:  La recuperación de las bases de datos consisten en información y estampas de tiempo junto con bitácoras los cuales se cambian de manera tal que sean consistentes en un momento y fecha en particular. Recuperación de base de datos en diferentes supuestos Podemos recuperar desde:  Los ficheros de backup de la base de datos (MS.frm. .dbx.ndf. la diferencia reside en que el DBA debe sacar de línea la base de datos en caso de llevar a cabo una recuperación.data.

        Bases de datos corruptadas por apagón no ordenado de sistema Tablas borradas.Recuperación de Base de Datos con diversos daños Entre la información que podemos perder y que podemos recuperar son:  Ficheros de bacckup no reconocibles por la base de datos o la aplicación de Backup. Meta dispositivos de la base de datos borrados Páginas de datos dañados. Índices dañados Imposibilidad o problemas de acceso a algunas tablas BBDD con problemas de cabeceras sobrescritas o inconsistentes.  Bases de datos bloqueadas marcadas como “Suspect” que sean inaccesibles. Tablas corruptas. Ficheros corruptos y daños. Ficheros sobrescritos accidentalmente .