Praxsuite
Plan PraxsuiteIntermedio

Praxsuite 302 — Bases de datos con Praxsuite

De qué es una base de datos a una app que la consume de forma segura: modelado con ERD, JSON, archivos y CDN, seguridad, y PraxQL desde el navegador.

46 lecciones1 h 7 min de contenidoHecho para Praxsuite v1.1

Incluido con cualquier plan pago de Praxsuite.

Empezar a aprender

Lo que aprenderás

  • ✓Explicar qué es una base de datos, qué tipos existen y en cuál se ubica el DataEngine de Praxsuite
  • ✓Leer y dibujar un ERD (entidades, atributos, claves, cardinalidad) y pasarlo a tablas Prax
  • ✓Normalizar un modelo y saber cuándo desnormalizar a propósito (espejos, fórmulas, JSON)
  • ✓Decidir dónde vive un archivo: blob con referencia en la fila, URL pública o firmada, y qué hace la CDN
  • ✓Diseñar el acceso a datos de una app: qué llave va en el navegador, filas y columnas por rol, orígenes
  • ✓Construir una app que lea, escriba y suba archivos contra Praxsuite con PraxQL

Temario

Bienvenida

  1. 1Por qué cuesta partir con una base de datos01:43

Teoría: qué es una base de datos

  1. 2Datos, información y base de datos: archivo plano vs motor02:06
  2. 3Tipos de bases: relacional, documento, clave-valor, columnar, grafo, vectorial02:13
  3. 4SQL y NoSQL: modelo, consistencia (ACID vs BASE), cuándo cada uno02:30
  4. 5Dónde se ubica Praxsuite: tablas reales, columnas del sistema y PraxQL02:42
  5. 6Teoría de bases de datosLectura

Modelar: del problema al ERD

  1. 7Entidades, atributos y claves (primaria, foránea, natural vs sustituta)02:28
  2. 8Cardinalidad y notación pata de gallo: leer un ERD02:19
  3. 9Normalización 1FN-3FN con un ejemplo que duele02:25
  4. 10Desnormalizar a propósito: espejos, fórmulas y campos calculados02:05
  5. 11Diseñar el ERD de Ruta Sur Bikes con PraxDesk (la IA propone, el alumno corrige)01:47
  6. 12Del ERD a tablas Prax: crear el esquema01:52
  7. 13Modelado y ERDLectura
  8. 14Práctica 1: modelar un dominio propio y crear sus tablasPráctica
  9. 15Test 1 — Teoría y modelado15 min

JSON y datos semiestructurados

  1. 16JSON en una base de datos: qué es, cuándo sirve y cuándo es una trampa02:09
  2. 17Columna JSON vs tabla relacionada: el caso de las especificaciones de la bici01:48
  3. 18Buscar dentro de una columna JSON con PraxQL01:57

Archivos: blobs, file system y CDN

  1. 19Dónde se guarda un archivo: binario en la tabla vs file system vs blob storage01:34
  2. 20Blobs y objetos: referencia en la fila, metadatos, tamaño, tipo01:33
  3. 21CDN: qué es, caché, URL pública vs firmada, invalidación02:08
  4. 22Archivos en Praxsuite: subir, adjuntar a una fila, público o privado01:45
  5. 23URLs de archivos desde el Gateway (ajuste de la clave)01:26
  6. 24Archivos, blobs y CDNLectura
  7. 25Test 2 — JSON y archivos15 min

Proteger la base de datos

  1. 26Superficie de ataque de una base: quién puede leer qué y por dónde01:43
  2. 27Llave pública vs secreta: qué va en el navegador y qué nunca01:50
  3. 28Mínimo privilegio: tablas, nivel de acceso, filas y columnas por rol01:46
  4. 29Validar en el servidor, no en el cliente: únicos, reglas y automatización al crear fila01:57
  5. 30Consumo y costo: paginar, caché de la clave, no traer de más01:48
  6. 31Auditar: registros de consultas y qué mirar01:45
  7. 32Proteger la base de datosLectura

Caso práctico: una app que consume la base

  1. 33Arquitectura de la app: estático en CDN + Gateway + usuarios finales01:39
  2. 34Proyecto base: estructura, configuración, dónde va cada llave01:29
  3. 35Tu primera herramienta: el ERD en Mermaid desde la introspección03:49
  4. 36Leer: catálogo con filtros, orden y paginación01:31
  5. 37Relaciones: la bici con su categoría y sus fotos en una consulta01:26
  6. 38Escribir: crear una reserva como usuario final01:33
  7. 39Subir una foto de reseña y mostrarla con su URL01:23
  8. 40Errores, estados de carga y reintentos01:40
  9. 41Publicar la app y revisar qué expone (devtools: qué ve un atacante)01:45
  10. 42Práctica 2: agregar una vista "mis reservas" seguraPráctica
  11. 43Test 3 — Seguridad y app15 min

Cierre

  1. 44Buenas prácticas: checklist del desarrollador01:39
  2. 45Proyecto final: tu dominio de punta a punta (ERD → tablas → app)Proyecto
  3. 46Examen final30 min