{"id":4155,"date":"2023-07-14T16:24:22","date_gmt":"2023-07-14T19:24:22","guid":{"rendered":"https:\/\/nocodestartup.io\/?p=4155"},"modified":"2025-05-04T15:14:36","modified_gmt":"2025-05-04T18:14:36","slug":"modelado-de-datos-de-firebase-nosql","status":"publish","type":"post","link":"https:\/\/nocodestartup.io\/es\/modelado-de-datos-de-firebase-nosql\/","title":{"rendered":"Modelado de datos NoSQL y Firebase"},"content":{"rendered":"<h2 class=\"wp-block-heading\" id=\"h-introducao-modelagem-de-dados-nosql\">Introducci\u00f3n: Modelado de datos NoSQL<\/h2>\n\n\n\n<p>El modelado de datos de una base de datos no relacional (NoSQL) es un gran desaf\u00edo para cualquier desarrollador. Porque trabajar con datos de NoSQL puede ser algo complejo y fuera de lo que estamos acostumbrados. Pero ya no hay escapatoria.<\/p>\n\n\n\n<p>Las bases de datos no relacionales como MongoDB o Firebase est\u00e1n creciendo cada vez m\u00e1s, ya que aportan mucho rendimiento y escalabilidad a tu proyecto.<\/p>\n\n\n\n<p>En este art\u00edculo Modelado de datos y NoSQL explicar\u00e9 en detalle sobre los tipos de modelado y las estrategias utilizadas para organizar nuestros datos. Adem\u00e1s, modelaremos un proyecto desde cero en NoSQL dentro de Firebase.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe title=\"Modelado de datos NoSQL | Firebase y FlutterFlow\" width=\"800\" height=\"450\" src=\"https:\/\/www.youtube.com\/embed\/MaadSU46Tec?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-o-que-voce-aprendera\">\u00bfQue aprender\u00e1s?<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Fundamentos del modelado de datos NoSQL en Firebase<\/li>\n\n\n\n<li>Estrategias para modelar sus bases de datos de documentos y colecciones<\/li>\n\n\n\n<li>Modelo Conceptual, L\u00f3gico y F\u00edsico en la pr\u00e1ctica<\/li>\n\n\n\n<li>C\u00f3mo crear una aplicaci\u00f3n a partir de su modelo de base de datos NoSQL<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Fundamentos de NoSQL y Firebase<\/h2>\n\n\n\n<p>En <a href=\"https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/06\/Modelagem-Dados-e-SQL-_-O-Guia-Oficial-para-iniciantes.pdf\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">No SQL<\/a> Trabajemos con documentos y colecciones. Para una mejor comprensi\u00f3n, las colecciones pueden entenderse como tablas tradicionales y los documentos como si fueran las filas (registros) de las tablas.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img fetchpriority=\"high\" decoding=\"async\" width=\"1024\" height=\"460\" src=\"https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/07\/modelagem-dados-nosql-firebase2-1024x460.png\" alt=\"Fundamentos de NoSQL y Firebase\" class=\"wp-image-4159\" srcset=\"https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/07\/modelagem-dados-nosql-firebase2-1024x460.png 1024w, https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/07\/modelagem-dados-nosql-firebase2-768x345.png 768w, https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/07\/modelagem-dados-nosql-firebase2-1536x690.png 1536w, https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/07\/modelagem-dados-nosql-firebase2-18x8.png 18w, https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/07\/modelagem-dados-nosql-firebase2.png 1972w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>La estructura detr\u00e1s de c\u00f3mo se organizan los datos est\u00e1 en formato json. Un formato interesante para la comunicaci\u00f3n entre sistemas.<\/p>\n\n\n\n<p>Las principales bases de datos NoSQL del mercado son MongoDB, CouchDB y Firebase.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-a-estrutura-nosql-tem-como-caracteristicas\">El framework NoSQL tiene las siguientes caracter\u00edsticas:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Tiene un esquema din\u00e1mico.<\/li>\n\n\n\n<li>Permite relaciones pero no es el foco<\/li>\n\n\n\n<li>Malo para consultas complejas<\/li>\n\n\n\n<li>Genial para el rendimiento.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Estrategias para modelar<\/h2>\n\n\n\n<p>En el modelado NoSQL en Firebase o MongoDB, tendremos algunas formas de dise\u00f1ar nuestra estructura de datos NoSQL, las posibilidades son:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Diagrama UML (ER)<\/li>\n\n\n\n<li>Mapa mental<\/li>\n\n\n\n<li>Documento y Colecciones<\/li>\n<\/ul>\n\n\n\n<p>En este caso, seguiremos el formato de documentos y colecciones. La metodolog\u00eda adoptada para el modelado de datos es: <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"499\" src=\"https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/07\/modelagem-dados-nosql-firebase1-1024x499.png\" alt=\"Estrategias para el modelado NoSQL en Firebase o MongoDB\" class=\"wp-image-4158\" srcset=\"https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/07\/modelagem-dados-nosql-firebase1-1024x499.png 1024w, https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/07\/modelagem-dados-nosql-firebase1-768x375.png 768w, https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/07\/modelagem-dados-nosql-firebase1-1536x749.png 1536w, https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/07\/modelagem-dados-nosql-firebase1-18x9.png 18w, https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/07\/modelagem-dados-nosql-firebase1.png 1792w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-para-modelagem-devemos-seguir-os-principios\">Para el modelado, debemos seguir los principios:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Consultas estrat\u00e9gicas y r\u00e1pidas<\/li>\n\n\n\n<li>Grandes colecciones pero peque\u00f1os documentos.<\/li>\n\n\n\n<li>Se permite la duplicaci\u00f3n de datos.<\/li>\n\n\n\n<li>Agregue valor en lugar de usar uniones<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-as-estrategias-para-modelagem-nosql-no-firebase-sao\">Las estrategias para las plantillas NoSQL en Firebase son:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Estrategia 1: datos agregados en el propio documento<\/li>\n\n\n\n<li>Estrategia 2: Usar subcolecciones<\/li>\n\n\n\n<li>Estrategia 3: Crear nuevas colecciones con relaciones<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Relaciones en NoSQL y Firebase<\/h2>\n\n\n\n<p>Para las relaciones 1 a 1, podemos agregar los datos o usar la conexi\u00f3n a trav\u00e9s de relaciones.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"485\" src=\"https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/07\/modelagem-dados-nosql-1024x485.png\" alt=\"Relaciones en NoSQL y Firebase\" class=\"wp-image-4160\" srcset=\"https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/07\/modelagem-dados-nosql-1024x485.png 1024w, https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/07\/modelagem-dados-nosql-768x364.png 768w, https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/07\/modelagem-dados-nosql-1536x727.png 1536w, https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/07\/modelagem-dados-nosql-18x9.png 18w, https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/07\/modelagem-dados-nosql.png 1960w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Para relaciones de 1 a muchos y de muchos a muchos, puede elegir en consecuencia: <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"490\" src=\"https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/07\/modelagem-dados-nosql2-1024x490.png\" alt=\"Firebase es SQL o No SQL\" class=\"wp-image-4161\" srcset=\"https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/07\/modelagem-dados-nosql2-1024x490.png 1024w, https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/07\/modelagem-dados-nosql2-768x367.png 768w, https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/07\/modelagem-dados-nosql2-1536x735.png 1536w, https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/07\/modelagem-dados-nosql2-18x9.png 18w, https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/07\/modelagem-dados-nosql2.png 1860w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Modelado de un proyecto NoSQL en Firebase desde cero <\/h2>\n\n\n\n<p>Para un proyecto NoSQL completo, usamos un ejemplo de una aplicaci\u00f3n de curso.<\/p>\n\n\n\n<p>ya hab\u00edamos hecho <a href=\"https:\/\/nocodestartup.io\/es\/modelado-de-datos-sql-2\/\" target=\"_blank\" rel=\"noreferrer noopener\">Modelado de datos SQL<\/a> en el modelo relacional y ahora lo hicimos en el modelo NoSQL con documentos y colecciones, vean como qued\u00f3:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-style-default\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"518\" src=\"https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/07\/modelagem-dados-nosql3-1024x518.png\" alt=\"Modelado de un proyecto NoSQL en Firebase desde cero\" class=\"wp-image-4162\" srcset=\"https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/07\/modelagem-dados-nosql3-1024x518.png 1024w, https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/07\/modelagem-dados-nosql3-768x389.png 768w, https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/07\/modelagem-dados-nosql3-1536x778.png 1536w, https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/07\/modelagem-dados-nosql3-18x9.png 18w, https:\/\/nocodestartup.io\/wp-content\/uploads\/2023\/07\/modelagem-dados-nosql3.png 1754w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Vea el video para m\u00e1s detalles.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-o-que-voce-aprendeu-por-aqui\">\u00bfQu\u00e9 aprendiste por aqu\u00ed? <\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Formas de dise\u00f1ar su base de datos nosql<\/li>\n\n\n\n<li>Metodolog\u00eda de modelado<\/li>\n\n\n\n<li>Principios de modelado de datos NoSQL<\/li>\n\n\n\n<li>Estrategias NoSQL<\/li>\n\n\n\n<li>Relaciones de documentos y colecciones NoSQL<\/li>\n\n\n\n<li>Base de fuego en la pr\u00e1ctica.<\/li>\n\n\n\n<li>App desde cero con <a href=\"https:\/\/nocodestartup.io\/es\/aleteo\/\" target=\"_blank\" rel=\"noreferrer noopener\">FlutterFlow<\/a><\/li>\n<\/ul>\n\n\n\n<p><\/p>\n\n\n\n<p>S\u00edguenos para m\u00e1s contenido.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>","protected":false},"excerpt":{"rendered":"<p>Introducci\u00f3n: Modelado de datos NoSQL. El modelado de datos en una base de datos no relacional (NoSQL) supone un gran reto para cualquier desarrollador. Trabajar con datos NoSQL puede ser complejo y poco convencional. Pero ya no hay otra opci\u00f3n. Las bases de datos no relacionales como MongoDB o Firebase est\u00e1n creciendo [\u2026]<\/p>","protected":false},"author":3,"featured_media":4166,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[],"post_folder":[],"class_list":["post-4155","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-no-code"],"acf":[],"_links":{"self":[{"href":"https:\/\/nocodestartup.io\/es\/wp-json\/wp\/v2\/posts\/4155","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nocodestartup.io\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nocodestartup.io\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nocodestartup.io\/es\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/nocodestartup.io\/es\/wp-json\/wp\/v2\/comments?post=4155"}],"version-history":[{"count":0,"href":"https:\/\/nocodestartup.io\/es\/wp-json\/wp\/v2\/posts\/4155\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/nocodestartup.io\/es\/wp-json\/wp\/v2\/media\/4166"}],"wp:attachment":[{"href":"https:\/\/nocodestartup.io\/es\/wp-json\/wp\/v2\/media?parent=4155"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nocodestartup.io\/es\/wp-json\/wp\/v2\/categories?post=4155"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nocodestartup.io\/es\/wp-json\/wp\/v2\/tags?post=4155"},{"taxonomy":"post_folder","embeddable":true,"href":"https:\/\/nocodestartup.io\/es\/wp-json\/wp\/v2\/post_folder?post=4155"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}