1. Introdución
1.1. Ficheros
1.1.1. Un archivo o fichero es una agrupación de datos, cuya estructura interna es la que el usuario, programador o sistema operativo le haya conferido implícitamente.
1.2. Base de datos
1.2.1. Es una colección organizada y estructurada de datos que es almacenada, ordenada y buscada.
1.2.2. No son un conjunto de datos aleatorios.
1.2.3. Una base de datos es integrada y compartida
1.2.3.1. La integridad es la unificación de datos independientes donde se elimina parcial o totalmente cualquier redundancia.
1.2.3.2. Compartida se refiere a que varios usuarios pueden tener acceso a la misma parte de la base de datos en la forma que le interese a cada uno y además pueden hacerlo concurrentemente.
1.2.4. Ventajas
1.2.4.1. Acceso
1.2.4.1.1. Se refiere a que los datos están disponibles para los usuarios.
1.2.4.2. Integridad-ACID
1.2.4.2.1. Serefiere a que los datos son correctos.
1.2.4.2.2. Atomicidad (Atomicity)
1.2.4.2.3. Integridad (Consistency)
1.2.4.2.4. Aislamiento (Isolation)
1.2.4.2.5. Persistencia (Durability)
1.2.4.3. Seguridad
1.2.4.3.1. Privilegios de usuarios.
1.2.4.3.2. Datos segmentados.
1.2.4.3.3. Accesosegurizado por medio del servidor.
2. El Sistema de Gestión de Base de Datos (SGBD)
2.1. Definicion
2.1.1. Conjunto de programas software que permiten gestionar una BD o modelar una parte del mundo real.
2.1.1.1. https://miro.medium.com/v2/resize:fit:1400/1*WYHXhbXCw6225FKjPxFEmg.png
2.1.2. Es el intermediario entre la base de datos física y el mundo exterior.
2.2. Conceptos previos
2.2.1. Nivel fisico
2.2.1.1. Representa los archivos que contienen la información y todo lo que conlleva.
2.2.2. Nivel logico
2.2.2.1. Describe la organización de los datos en la base de datos y las relaciones existentes entre ellos
2.2.3. Nivel externo
2.2.3.1. Define cómo ven los usuarios las bases de datos.
2.3. Objetivos
2.3.1. Independencia física
2.3.1.1. Inmunidad de las aplicaciones a los cambios de la estructura de almacenamiento y de la estrategia de acceso.
2.3.2. Independencia lógica
2.3.2.1. Es la capacidad de modificar el esquema conceptual sin obligar a reescribir los programas de aplicación o la estructura física.
2.3.2.1.1. Permite que cada grupo de trabajo vea los datos como le interese.
2.3.2.1.2. Permite la evolución de la visión de cada grupo y de la visión global sin tener que modificar las aplicaciones existentes.
2.3.3. Eficacia de los accesos a los datos
2.3.3.1. El SGBD debe disponer de diferentes tipos de lenguajes que permitan un acceso eficaz a los datos: MySQL, Oracle etc..
2.3.3.1.1. Estos lenguajes procedimentales permiten a los desarrolladores escribir procedimientos almacenados, funciones y (triggers).
2.3.3.2. Para usuarios no informáticos se usa SQL.
2.3.4. Administración centralizada de los datos
2.3.4.1. Para permitir un control eficaz de los datos, resolver conflictos, optimizar los accesos y el uso de los medios informáticos.
2.3.4.1.1. Definir el esquema original de la BD.
2.3.4.1.2. Definir la estructura de almacenamiento y método de acceso.
2.3.4.1.3. Modificar el esquema y la organización física.
2.3.4.1.4. Definir los usuarios y controles de autorización.
2.3.4.1.5. Definir la estrategia de respaldo y recuperación.
2.3.4.1.6. Especificar las reglas de integridad.
2.3.4.1.7. Controlar el rendimiento.
2.3.5. No redundancia de los datos
2.3.5.1. En los sistemas de ficheros existen datos repetidos en diferentes ficheros.
2.3.5.1.1. Generan riesgo de incoherencias, desperdicio de espacio, necesidad de actualizaciones múltiples.
2.3.5.2. En una BD se trabaja con datos integrados en una estructura compartida por varias aplicaciones con diseño sin redundancias y controlados por el SGBD.
2.3.5.3. Por razones comerciales o técnicas puede admitirse algo de redundancia en las BD, siempre que esté controlada.
2.3.6. Integridad de los datos
2.3.6.1. El SGBD vigilará que se respeten las reglas de integridad cuando se inserten o modifiquen o eliminen datos en la BD
2.3.6.1.1. Reglas sobre datos elementales: pruebas de tipo, de redundancia, de rango, de comparación …
2.3.6.1.2. Reglas sobre registros: restricciones sobre el nº total de ocurrencias, sobre inserciones o borrados.
2.3.6.1.3. Reglas sobre asociaciones: regla de integridad referencial.
2.3.7. Compartición de los datos
2.3.7.1. El SGBD permitirá que las aplicaciones compartan los datos de la BD simultáneamente sin que se produzcan interferencias.
2.3.7.2. La ejecución de operaciones simultáneas sin ningún control puede producir errores tales como pérdida de las mismas.
2.3.7.3. El SGBD dispondrá de mecanismos para evitar los errores y para que cada aplicación acceda a los datos como si fuera la única.
2.3.8. Seguridad de los datos
2.3.8.1. Evitar que personas no autorizadas puedan acceder a la información.
2.3.8.2. La información y los recursos están disponibles para el personal autorizado.
2.3.8.3. Guardar la totalidad de la información, cuyo contenido debe permanecer inalterado a menos que sea modificado por personal autorizado.
2.3.8.4. Prevenir el acceso de individuos no autorizados a la información.
2.3.8.5. Proteger a la BD contra fallos lógicos o físicos.
2.3.8.6. Recuperación de la base de datos cuando se produce un fallo fichero log y copias de seguridad.
2.3.8.7. Protección: es cuando los datos no están en peligro de pérdida o manipulación accidental.
2.3.8.8. Seguridad: es cuando los datos no están en peligro de robo o manipulación intencional.
3. Principales conceptos
3.1. Datos
3.1.1. Son los hechos básicos sobre los que se fundamentan las necesidades de información y de procesamiento de una compañía.
3.2. Hardware
3.2.1. Es el conjunto de dispositivos físicos donde esta la base de datos.
3.3. Software
3.3.1. El Sistema de Gestión de Bases de Datos (SGBD).
3.3.2. Los programas de aplicación.
3.4. Usuarios
3.4.1. Los programadores de aplicaciones.
3.4.2. Los usuarios finales.
3.4.3. El administrador de bases de datos.