NICOLÁS BOTTARINI
Volver a la ruta

Fundamentos de computación

Bases de datos

220 páginas de lectura

Modelado de datos, SQL, transacciones, índices y bases NoSQL. Casi todas las aplicaciones guardan datos, y entender cómo lo hacen te evita muchos problemas de performance y de consistencia.

Temas

  • Normalización

    Las 3 formas normales, Desnormalización

  • Conceptos básicos y SQL

    Modelo relacional, OLTP vs OLAP, DDL, Constraints, Foreign keys, Cascade, Integridad referencial, SELECT, INSERT, DELETE, UPDATE, Agrupamiento, Subconsultas, Funciones de agregación, Ordenamiento, Joins, Uniones, Vistas, Vistas materializadas, Índices, Privilegios, Object-Relational Impedance Mismatch, Organización física de la base de datos, Tablespaces

  • Manejo de transacciones

    ACID, Log de transacciones, Recuperación, Problemas de concurrencia (lost update, dirty read, inconsistent analysis, unrepeatable read, phantom read), Schedules, Locks optimistas/pesimistas, Locking en dos fases, Deadlocks, Niveles de aislamiento

  • Fundamentos de NoSQL

    ACID vs BASE, Teorema CAP, Consistencia eventual, Bases clave-valor, Bases de familias de columnas, Bases documentales, Bases de grafos

  • Optimización de consultas

    Procesamiento de consultas, Plan de ejecución, Proyección, Selección, Producto cartesiano, Índice clustered/unclustered, Índice denso/disperso, Índice primario/secundario, B+Tree, Índice hash, File Scan, Heap Scan, Nested-Loop Join, Sort-Merge Join, Hash Join, N+1

  • Bases de datos distribuidas

    Teorema CAP, Sharding, Replicación

  • Redis

    Casos de uso, Tipos de datos, Strings, Lists, Sets, Sorted sets, Hashes, Bit arrays, HyperLogLogs, Streams

  • Bases de datos de grafos

    Neo4J, Casos de uso, Cypher

  • Bases de datos documentales

    MongoDB, Agregaciones, Consultas, Vistas, Replica Sets, Sharding

Recursos