Resumen

Trabajar con bases de datos documentales en la nube es una habilidad esencial para cualquier profesional que busque construir aplicaciones modernas y escalables. Cloud Firestore, el servicio de Google Cloud, ofrece una forma ágil e intuitiva de almacenar y consultar información sin necesidad de definir esquemas rígidos. A continuación se explica paso a paso cómo crear una base de datos, generar datos de prueba y cargarlos mediante scripts automatizados.

¿Cómo se crea una base de datos en Cloud Firestore desde la consola de GCP?

El punto de partida es la consola de Google Cloud Platform. Desde el menú lateral (el ícono de la "hamburguesita" en la esquina superior izquierda) se busca la opción Firestore [0:12]. Esta herramienta permite crear una base de datos documental de forma directa.

Al iniciar, se debe elegir el modo de operación. Cloud Firestore ofrece dos modos y, una vez seleccionado, no es posible cambiarlo para esa base de datos en ese proyecto [0:33]. En el ejemplo práctico se elige el modo nativo [0:52].

Después se selecciona la ubicación de la base de datos. Las opciones incluyen alcance multirregión o regional, dependiendo de los requerimientos de disponibilidad y latencia. En este caso se elige la región de Virginia del Norte [1:02]. Tras hacer clic en "Crear base de datos", el proceso toma unos segundos.

¿Qué son los scripts de generación y carga de datos?

Mientras la base de datos se aprovisiona, se presentan dos scripts desarrollados en JavaScript para la plataforma Node.js [2:18]:

  • Create Test Data: genera un archivo CSV con datos ficticios (identificador, nombre, email y teléfono) [1:27].
  • Import Test Data: lee ese archivo CSV, se conecta con Firestore y carga la información en una colección llamada Customers [1:42].

Al ejecutar el primer script indicando que se desean cinco documentos, se produce un archivo llamado customers_5.csv [2:33]. Este archivo contiene registros separados por comas con campos como ID, nombre, email y teléfono, todos con información ficticia generada automáticamente.

¿Cómo se importan los datos a la colección de Firestore?

Con el archivo CSV listo, se ejecuta el segundo script pasándole el nombre del archivo (customers_5.csv) como parámetro [2:55]. El programa se conecta a la base de datos de Firestore y realiza la carga. Al refrescar la consola de GCP, aparece la colección Customers con los cinco documentos cargados [3:14].

Cada documento incluye campos como:

  • Email: por ejemplo, carly13@luis.name.
  • ID: identificador numérico como 25583.
  • Nombre: datos ficticios como "Carly Shinner".
  • Teléfono: números generados aleatoriamente [3:24].

¿Cómo se filtran y administran documentos en la consola?

La interfaz gráfica de Firestore permite filtrar documentos por cualquier campo. Por ejemplo, al seleccionar el campo email y aplicar el filtro, los registros se ordenan alfabéticamente por ese valor [3:52]. Así, el primer resultado pasa a ser bertha@tierra.com con ID 83874, perteneciente a Bertha Noland [4:08].

También es posible eliminar campos individuales de un documento directamente desde la consola. Al hacerlo, Firestore advierte que la eliminación es definitiva [4:20]. Esto conecta con una característica fundamental de las bases de datos NoSQL: los esquemas son flexibles. Un documento puede tener ciertos campos mientras otro documento de la misma colección puede tener campos diferentes, y ambos conviven sin problema [4:33].

Además de la carga automatizada, la consola permite crear colecciones y documentos de forma manual. Con un clic en "Agregar", se asigna un ID a la colección, se definen los campos del primer documento y se guarda de inmediato [2:02].

¿Cuál es el siguiente paso después de crear la base de datos?

Con la base de datos lista, la colección de clientes poblada y la capacidad de filtrar y administrar documentos, el paso natural es construir una aplicación que se conecte a esta base de datos. La recomendación es crear una aplicación propia que interactúe con una colección, ya sea de clientes o cualquier otra que se adapte al proyecto en desarrollo [4:50].

Si te interesa profundizar, experimenta creando tus propios scripts de carga y prueba diferentes configuraciones de colecciones y documentos para familiarizarte con el modelo documental de Firestore.