1. **4-Sistema Gestores de Bases de Datos**
1.1. Definición
1.1.1. Conjunto de herramientas que facilitan la consulta uso y actualización de una BDD
1.2. Operaciones Básicas
1.2.1. **CRUD**
1.2.1.1. Consultar (Read)
1.2.1.2. Añadir (Create)
1.2.1.3. Actualizar (Update)
1.2.1.4. Borrar (Delete)
1.3. Componentes
1.3.1. Datos
1.3.2. Herramientas de acceso
1.3.2.1. Herramienta de Programación
1.3.2.2. Diccionario de Datos
1.3.2.2.1. Que tenga metadatos
1.3.3. Utilidades administrativas
1.3.3.1. Backups
1.3.4. Entorno Gráfico
1.3.4.1. Simplifican la gestión del SGBD
1.4. Funciones
1.4.1. 1-Permitir a los usuarios **almacenar datos,acceder** a ellos y **actualizarlos de forma sencilla** y **con un gran rendimiento**
1.4.2. 2-Garantizar la** integridad de los datos**
1.4.3. 3-Tener un **sistema de seguridad** que garantice el acceso a los **usuarios autorizados**
1.4.4. 4-Proporcionar un **diccionario de datos**
1.4.4.1. Que contiene información sobre cómo están estructurados los datos en tablas, registros y campos
1.4.5. 5-Permitir el uso de **transacciones**
1.4.5.1. En caso de error se deshacen los cambios
1.4.5.2. Las acciones se hacen todas o no se hacen
1.4.6. 6-Permitir la **concurrencia**
1.4.7. 7-**Independendizar los datos de la aplicación**
1.4.8. 8-Incorporar herramientas para la copia de seguridad
1.5. **Transacciones**
1.5.1. Proceso que realiza una serie de operaciones en una base de datos
1.5.1.1. **Se hacen todas o no se hacen**
1.5.2. **ACID**
1.5.2.1. Atomicidad
1.5.2.1.1. **Se ejecuta en su totalidad o no se ejecuta en absoluto**
1.5.2.2. Consistencia
1.5.2.2.1. Las transacciones deben cumplir con todas las reglas **de integridad y restricciones definidas en la base de datos.**
1.5.2.3. Aislamiento
1.5.2.3.1. Aseguran que las **transacciones concurrentes** se ejecuten invisibles entre sí
1.5.2.4. Durabilidad
1.5.2.4.1. Los cambios de la BDD son permanentes y no se perderán
1.6. Arquitectura ANSI/X3/SPARC
1.6.1. Estandar De Facto en SGBD
1.6.1.1. Nivel Externo
1.6.1.1.1. Distintas vistas usuarios
1.6.1.2. Nivel lógico
1.6.1.2.1. Estructura lógica de BDD
1.6.1.3. Nivel Interno
1.6.1.3.1. Almacenamiento Físico
1.6.2. **Indenpendencia**
1.6.2.1. Lógica
1.6.2.1.1. Modificar esquema conceptual sin alterar esquemas externos
1.6.2.2. Física
1.6.2.2.1. Modificar esquema interno sin modificar el esquema externo
1.7. Lenguajes
1.7.1. Lenguajes Importantes
1.7.1.1. DDL (Data Definition Language)
1.7.1.1.1. Define la estructura
1.7.1.2. DML (Data Manipulation Language)
1.7.1.2.1. Manipula los datos de la BDD
1.7.1.3. DCL (Data Control Language)
1.7.1.3.1. Controla el acceso a los datos
1.7.1.4. Lenguaje Host
1.7.1.4.1. Programacion principal
1.7.1.4.2. Desarrollar aplicaciones con BDD
1.7.1.4.3. Eficientes y Robustas
1.8. Usuarios
1.8.1. Administrador de la Base de Datos (BDA)
1.8.1.1. Asegura q la BDD funcione
1.8.1.1.1. Confiable, eficiente y segura
1.8.2. Desarrollador
1.8.2.1. Almacena, recupera y manipula datos en sus aplicaciones de SGBD
1.8.2.1.1. implica
1.8.3. Usuarios Finales
1.8.3.1. Usan las aplicaciones
2. 5-Arquitecturas de Acceso a BDD
2.1. **Cliente/Servidor**
2.1.1. Parte Servidor
2.1.1.1. Potente HW y SW
2.1.1.2. Actua de deposito de datos
2.1.2. Parte Cliente
2.2. Conexión Directa
2.2.1. Open DataBase Conectivity(ODBC)
2.2.1.1. Interfaz de programación de aplicaciones(API)
2.2.1.2. Aceede a una amplia gama de BDD
2.3. APIs REST
2.3.1. Arquitectura de desarrollo web
2.3.2. Estandar HTTP
2.3.2.1. **Protocolo HTTP: GET, POST, PUT y DELETE**
2.4. BDD Centralizadas
2.4.1. Implantado en una plataforma
2.4.2. Tecnologías sencillas, experimentadas y de gran robustez
3. **1-Conceptos**
3.1. **Definición Base de Datos**
3.1.1. Conjunto de datos organizados
3.1.2. Fácil de acceder, administrar y actualizar
3.1.3. Tiene una estructura lógica
3.1.4. Cada dato tiene un significado y está relacionado con otros datos de alguna manera
3.2. **Características Base de Datos**
3.2.1. Universo de Discurso
3.2.2. Importa la lógica y la organización
3.2.3. Aplicaciones diseñadas para que los usuarios entren a la BDD
4. **2-Ficheros(Archivos)**
4.1. **Definición**
4.1.1. Estructura para almacenar datos
4.1.1.1. Lo crean los Sistemas Operativos de los ordenadores
4.1.2. Tienen nombre y una extensión
4.1.3. El formato se interpreta por la información que contiene
4.1.3.1. Lo único que almacena es una secuencia de bits
4.2. **Criterios**
4.2.1. Las 2 primeras han caido en desuso
4.2.1.1. **Utilidad**
4.2.1.1.1. Maestros
4.2.1.1.2. Movimiento
4.2.1.1.3. Históricos
4.2.1.1.4. Temporales
4.2.1.2. **Organización**
4.2.1.2.1. Secuencial
4.2.1.2.2. Directa
4.2.1.2.3. Indexada
4.2.1.3. **Contenido**
4.2.1.3.1. Ficheros de texto
4.2.1.3.2. Ficheros binarios
4.3. **Inconvenientes**
4.3.1. Se acceden a los datos a través de de programas que conocen el formato del fichero
4.3.2. Existen infinidad de formatos distintos
4.3.3. No estan diseñados para acceder a varios programas de forma simultánea
4.3.4. La redundancia de datos desperdicia espacio
4.3.5. Si un usuario tiene acceso a un fichero, tiene acceso a todo su contenido
5. **3-Bases de Datos**
5.1. **Características**
5.1.1. Es una colección de información
5.1.2. Está organizada por tablas
5.1.2.1. cada tabla almacena la información relativa de un objeto
5.1.3. Se pueden formar relaciones con otras tablas
5.1.4. Cada fila es un registro y cada columna es un campo
5.1.5. Añadir/modificar/borrar campos de una tabla sí que la cambia
5.1.6. Añadir registros no cambia su estructura
5.2. **Conceptos**
5.2.1. Dato
5.2.1.1. Es el contenido de los campos de una tabla
5.2.2. Tipo de datos
5.2.2.1. Indica la naturaleza del dato y las operaciones que se pueden hacer con dicho dato
5.2.3. Valor nulo
5.2.3.1. Es cuando un campo está vacío
5.2.4. Campo clave
5.2.4.1. Campo que identifica a cada registro
5.2.5. Consulta
5.2.5.1. Petción a la BDD para obtener información de una o varias tablas
5.3. **Ventajas**
5.3.1. Indenpendencia de datos
5.3.2. Almacenamiento optimo de la información
5.3.3. Facilidad de consulta
5.3.4. Eliminación de redundancias e inconsistencias
5.3.5. Concurrencia
5.3.6. Seguridad
5.4. **Modelos**
5.4.1. Jerárquico
5.4.1.1. Más antiguo
5.4.1.2. No se consigue la independencia de datos
5.4.1.3. Necesitas conocer como esta almacenada la información
5.4.2. Red
5.4.2.1. Se almacena como un grafo
5.4.2.2. No se consigue la independencia de datos
5.4.3. Relacional
5.4.3.1. Se representan en forma de tablas con relaciones entre ellas
5.4.3.2. Es el más utilizado a día de hoy
5.4.4. Objeto Relacional
5.4.5. No relacionales
5.4.5.1. Grandes volumenes de datos no Estructurados (NOSQL)