0% encontró este documento útil (0 votos)
35 vistas5 páginas

Introducción a Firebase Firestore NoSQL

Firebase Firestore es una base de datos NoSQL de documentos, escalable y flexible, que permite la sincronización en tiempo real y no requiere mantenimiento por parte del usuario. Utiliza un modelo de documento-colección y ofrece un API de consultas para realizar operaciones sobre los datos. Sus ventajas incluyen escalabilidad y bajo mantenimiento, mientras que sus desventajas son limitaciones en consultas complejas y costos que pueden aumentar con el uso.

Cargado por

Manuel Ovando
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
35 vistas5 páginas

Introducción a Firebase Firestore NoSQL

Firebase Firestore es una base de datos NoSQL de documentos, escalable y flexible, que permite la sincronización en tiempo real y no requiere mantenimiento por parte del usuario. Utiliza un modelo de documento-colección y ofrece un API de consultas para realizar operaciones sobre los datos. Sus ventajas incluyen escalabilidad y bajo mantenimiento, mientras que sus desventajas son limitaciones en consultas complejas y costos que pueden aumentar con el uso.

Cargado por

Manuel Ovando
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

U3 – ACTIVIDAD AUTOAPRENDIZAJE

Nro. 2

Investigación e implementación de gestores de base de datos que utilizan NoSQL.

- Integrantes:
o Manuel Augusto Ovando Crespo
o Dante Ariel Vargas Garcia
- Materia:
o Bases de datos 3
1. Descripción general del gestor NoSQL elegido

Firebase Firestore es una base de datos NoSQL de documentos, escalable y


flexible, desarrollada por Google. Firestore es parte del conjunto de herramientas
de Firebase, una plataforma para desarrollar aplicaciones móviles y web.
Firestore está diseñada para facilitar el almacenamiento y la sincronización en
tiempo real de datos entre aplicaciones cliente y servidores, siendo ideal para
aplicaciones móviles y web que requieren operaciones rápidas, escalabilidad y
manejo de grandes volúmenes de datos. Firestore es completamente
administrado, lo que significa que no requiere que el usuario se ocupe de la
infraestructura o mantenimiento de la base de datos.

Firestore ofrece características como:

- Sincronización en tiempo real: Los datos se actualizan en tiempo real


en todos los dispositivos conectados.
- Escalabilidad: Puede manejar una gran cantidad de datos y peticiones
de manera eficiente.
- Flexible: Permite la estructuración de datos en colecciones y
documentos, lo que lo hace muy adecuado para aplicaciones que no
requieren una estructura rígida de esquemas.

2. Modelo de datos que utiliza

Firestore utiliza un modelo de documento-colección en su arquitectura. A


diferencia de los sistemas de bases de datos relacionales, Firestore no utiliza
tablas ni filas, sino que los datos se organizan en:

- Colecciones: Un conjunto de documentos.


- Documentos: Un conjunto de pares clave-valor. Los documentos son las
unidades de almacenamiento en Firestore y pueden contener otros
documentos o colecciones anidadas.

Los documentos pueden tener cualquier tipo de dato, incluidos cadenas,


números, mapas, arrays, e incluso referencias a otros documentos. Además,
Firestore permite que los documentos sean jerárquicos, lo que significa que
puedes anidar colecciones dentro de otros documentos.

3. Lenguaje de consulta (Si lo tiene)

Firestore no utiliza un lenguaje de consulta tradicional como SQL, pero ofrece


su propio sistema de consultas. Se utiliza un API de consultas en el que puedes
aplicar filtros, ordenamientos y límites a las colecciones de documentos.
Algunas de las operaciones comunes incluyen:
- get(): Obtener datos de un documento o colección.
- where(): Filtrar los documentos basados en un campo específico.
- orderBy(): Ordenar los documentos por un campo.
- limit(): Limitar el número de documentos devueltos.

4. Ventajas y desventajas frente a los sistemas relacionales

Ventajas de Firestore frente a sistemas relacionales:

1. Escalabilidad: Firestore está diseñado para manejar aplicaciones que


crecen rápidamente y puede escalar horizontalmente, a diferencia de las
bases de datos SQL que pueden tener dificultades con grandes cantidades
de datos o alta concurrencia.
2. Modelo flexible: No requiere un esquema fijo, lo que permite agregar o
modificar campos sin afectar la estructura general de la base de datos, lo
que facilita el desarrollo iterativo.
3. Sincronización en tiempo real: Firestore ofrece actualización
instantánea de los datos en todos los dispositivos conectados a la base de
datos, algo que los sistemas relacionales no ofrecen de manera nativa.
4. Bajo mantenimiento: Al ser un servicio completamente administrado
por Google, Firestore se encarga de la infraestructura, las copias de
seguridad, las actualizaciones y el monitoreo, lo que reduce la carga
administrativa.
5. Desarrollo ágil: Firestore está diseñado para ser fácil de integrar con las
aplicaciones móviles y web modernas, proporcionando SDKs y
herramientas que aceleran el proceso de desarrollo.

Desventajas de Firestore frente a sistemas relacionales:

1. Limitaciones de consultas: Aunque Firestore es muy potente, las


consultas más complejas como las uniones (JOINs) no son tan fáciles de
implementar como en bases de datos SQL. Firestore no soporta
operaciones de joins de manera directa, lo que puede ser un
inconveniente para aplicaciones que dependen de relaciones complejas
entre tablas.
2. Consistencia eventual: Firestore es eventualmente consistente, lo que
significa que, en algunas circunstancias, puede haber una latencia
temporal en la actualización de los datos en los clientes conectados.
3. Costo: Aunque Firestore es un servicio gestionado, los costos pueden
aumentar significativamente dependiendo del volumen de
almacenamiento, las lecturas y escrituras realizadas, y la cantidad de
datos transferidos.

5. Casos de usos reales

Varias empresas y aplicaciones utilizan Firestore debido a sus características


como la escalabilidad y la sincronización en tiempo real. Algunos ejemplos
incluyen:

1. The New York Times: Utiliza Firestore para gestionar la información de


los usuarios y la sincronización en tiempo real de la experiencia de
usuario en su aplicación móvil.
2. Ally Bank: Utiliza Firestore como parte de su infraestructura de backend
para gestionar la información financiera de los usuarios y sus
transacciones en tiempo real.
3. Duolingo: La popular aplicación de aprendizaje de idiomas emplea
Firestore para almacenar datos de usuarios y su progreso en tiempo real.
4. Spotify: Utiliza Firestore para gestionar ciertas operaciones en tiempo
real de sus aplicaciones móviles.

6. Cuadro comparativo con otros gestores NoSQL

7. Requisitos e instrucciones de instalación

Requisitos:

1. Cuenta de Firebase: Necesitas tener una cuenta de Google y crear un


proyecto en Firebase desde la consola de Firebase ([Link]).
2. SDK de Firebase: Necesitas instalar el SDK de Firebase para tu
plataforma (Android, iOS, Web).
3. Conexión a Internet: Firestore es un servicio en la nube, por lo que se
requiere acceso a Internet para poder interactuar con él.

Instrucciones de instalación:

Para web:

1. En primer lugar, agrega Firebase a tu aplicación web siguiendo estos


pasos:
o Crea un proyecto en la consola de Firebase.
o Copia el fragmento de configuración de Firebase y agrégalo a tu
código HTML.
2. Instala el SDK de Firebase mediante npm (si usas [Link]):

o Inicializa Firebase en tu código:

También podría gustarte