← CC3088
# Archivos Semestre 01, 2026 ## Antes de las bases de datos 👴🏼 Antes de los DBMS: * Los datos se almacenaban en archivos * Cada aplicación gestionaba sus propios datos * No existía una capa centralizada de control ## Sistemas basados en archivos Características: * Datos almacenados en archivos del sistema operativo * Programas escritos para leer y escribir esos archivos * Estructura de datos fija * Dependencia entre programa y datos ## Problemas de los sistemas basados en archivos * Redundancia de datos * Inconsistencias * Difícil mantenimiento * Poco control de seguridad * Acceso concurrente limitado ## Archivos secuenciales Un archivo secuencial almacena registros: * Uno después de otro * En un orden específico * Normalmente por orden de inserción ### Ejemplo ``` 1001, Juan Pérez, Ingeniería 1002, Ana López, Arquitectura 1003, Luis García, Medicina ``` Para encontrar un registro: * Se debe leer desde el inicio * Registro por registro ### Ventajas * Simples de implementar * Bajo costo computacional * Eficientes para recorridos completos ### Desventajas * Búsquedas lentas * Inserciones y eliminaciones costosas * Poco flexibles * No escalan bien con grandes volúmenes de datos ## Archivos indexados Un archivo indexado utiliza una estructura adicional: * Índice * Permite acceso más rápido a los datos * Similar a un índice de un libro ### Ejemplo Índice: ``` 1001 → posición 1 1002 → posición 2 1003 → posición 3 ``` Datos: ``` [registro 1][registro 2][registro 3] ``` ### Ventajas * Búsquedas más rápidas * Acceso directo a registros * Mejor rendimiento que archivos secuenciales ### Desventajas * Mayor complejidad * Coste adicional de almacenamiento * Mantenimiento del índice * Aún dependientes del programa ## Comparación | Característica | Secuencial | Indexado | |--------------|------------|----------| | Acceso | Lineal | Directo | | Velocidad de búsqueda | Baja | Media | | Complejidad | Baja | Media | | Escalabilidad | Limitada | Mejor | ## Limitaciones comunes Tanto los archivos secuenciales como los indexados: * No manejan concurrencia eficientemente * No garantizan integridad de datos * No separan datos de aplicaciones * No ofrecen recuperación ante fallos ## ¿Por qué surgen los DBMS? Los DBMS nacen para: * Centralizar el manejo de datos * Reducir redundancia * Garantizar integridad * Manejar concurrencia * Proveer seguridad * Facilitar escalabilidad