Construyendo Platziblog en Firestore
Clase 55 de 67 • Curso de Fundamentos de Bases de Datos 2019
Contenido del curso
- 3

Qué son entidades y atributos
10:38 - 4

Historia de las bases de datos relacionales
03:19 - 5

Entidades de Platzi Blog
08:05 - 6

Relaciones
10:25 - 7

Múltiples muchos
02:25 - 8

Diagrama ER
05:12 - 9

Diagrama Físico: tipos de datos y constraints
13:50 - 10

Diagrama Físico: normalización
10:16 - 11
Formas normales en Bases de Datos relacionales
02:54 - 12

Diagrama Físico: normalizando Platziblog
14:46
- 19

Historia de SQL
03:53 - 20

DDL create
13:53 - 21
Playground: CREATE TABLE
00:00 - 22

CREATE VIEW y DDL ALTER
10:17 - 23

DDL drop
05:17 - 24
Playground: VIEW, ALTER y DROP en SQL
00:00 - 25

DML
17:03 - 26
Playground: CRUD con SQL
00:00 - 27

¿Qué tan standard es SQL?
10:26 - 28

Creando Platziblog: tablas independientes
11:34 - 29

Creando Platziblog: tablas dependientes
11:24 - 30

Creando Platziblog: tablas transitivas
09:19
- 31

¿Por qué las consultas son tan importantes?
02:34 - 32

Estructura básica de un Query
06:23 - 33

SELECT
11:16 - 34
Playground: SELECT en SQL
00:00 - 35

FROM y SQL JOINs
07:11 - 36

Utilizando la sentencia FROM
14:46 - 37
Playground: FROM y LEFT JOIN en SQL
00:00 - 38

WHERE
14:00 - 39

Utilizando la sentencia WHERE nulo y no nulo
10:16 - 40
Playground: Filtrando Datos con WHERE
00:00 - 41

GROUP BY
11:56 - 42

ORDER BY y HAVING
13:02 - 43
Playground: Agrupamiento y Ordenamiento de Datos
00:00 - 44

El interminable agujero de conejo (Nested queries)
12:39 - 45

¿Cómo convertir una pregunta en un query SQL?
06:14 - 46

Preguntándole a la base de datos
10:08 - 47

Consultando PlatziBlog
12:35 - 48
Playground: Prueba Final con PlatziBlog
00:00
¿Cómo crear colecciones en Firestore?
En esta clase, exploramos cómo transformar estructuras de bases de datos relacionales de SQL en Firestore, un sistema de base de datos no relacional. La transición requiere entender cómo estructurar y manejar los datos con colecciones de nivel superior (top-level collections), documentos, y referencias. A continuación, detallamos los pasos para recrear una base de datos en Firestore aprovechando sus capacidades.
¿Cómo definir colecciones de nivel superior?
Las colecciones de nivel superior son fundamentales en Firestore, ya que funcionan como contenedores que alojan documentos. En el ejemplo del curso, se definieron varias colecciones importantes:
-
Categorías:
- Crea una colección llamada
Categorías. - Añade documentos individuales, cada uno representando una categoría con un campo simple para el nombre, por ejemplo:
Deportes,Ciencia,Espectáculos.
Categorías ├── Documento 1: {nombre: "Deportes"} ├── Documento 2: {nombre: "Ciencia"} └── Documento 3: {nombre: "Espectáculos"} - Crea una colección llamada
-
Usuarios:
- Define la colección
Usuariosdonde cada documento representa un usuario con campos comoLogin,Password,Nickname, yEmail.
Usuarios └── Documento 1: { Login: "Israel", Password: "contraseña_segura", Nickname: "Israel", Email: "Israel@PlatziBlog.com" } - Define la colección
-
Blog Posts:
- Crea la colección
Postspara almacenar las publicaciones del blog con campos comoTítulo,Fecha de Publicación,Contenido, yStatus.
Posts ├── Documento 1: { Título: "Nuevo Teléfono Móvil", Fecha de Publicación: "2030-04-05", Contenido: "Lorem Ipsum...", Status: true } ├── Documento 2: { Título: "Evento de Tecnología", Fecha de Publicación: "2025-05-04", Contenido: "Prueba de Texto...", Status: true } - Crea la colección
¿Cómo relacionar documentos en Firestore?
Para relacionar documentos en Firestore, utilizamos referencias. Esto permite vincular, por ejemplo, un Post con un Usuario y una Categoría.
-
Relación Usuario-Post:
- Agrega un campo
Autoren tus documentos dePostsy utiliza el tipo de datoreferencepara enlazar al documento correspondiente del usuario.
Posts ├── Documento 1: {..., Autor: referencia_a_usuario_1} - Agrega un campo
-
Relación Categoría-Post:
- Similarmente, para las categorías, crea un campo
CategoríaenPostsque apunte a la categoría relacionada.
Posts ├── Documento 1: {..., Categoría: referencia_a_categoría_1} - Similarmente, para las categorías, crea un campo
¿Cómo crear subcolecciones?
Las subcolecciones permiten organizar datos relacionados dentro de un mismo documento. En el ejemplo, se mostró cómo agregar etiquetas a cada publicación:
-
Subcolecciones de Etiquetas:
- Dentro de cada
Post, crea subcolecciones comoEtiquetasque almacenen documentos con el campoNombre Etiqueta.
Posts ├── Documento 1: { ..., Etiquetas: { Documento 1: {Nombre Etiqueta: "Teléfonos Móviles"}, Documento 2: {Nombre Etiqueta: "Eventos"} } } - Dentro de cada
¿Qué pasos debo seguir para practicar?
La práctica es esencial para dominar Firestore. Intenta replicar esta estructura con tu propio proyecto:
-
Transformar entidades de SQL a Firestore: Considere cómo sus tablas y sus relaciones pueden convertirse en documentos y referencias.
-
Practicar las relaciones y la organización de subcolecciones: Familiarízate con las ventajas que ofrece la NoSQL al manejar datos anidados y relaciones no tradicionales.
-
Explorar otras bases de datos NoSQL: Extiende tu conocimiento a bases de datos similares como MongoDB, que también emplean documentos.
Esta práctica no solo refuerza tu comprensión de Firestore, sino que también te prepara para trabajar con diferentes tipos de bases de datos, cada vez más comunes en el desarrollo profesional. ¡Explora, experimenta y comparte tus resultados con otros para seguir aprendiendo!