La integración de datos es la práctica por la cual se tiene el primer contacto con los datos de cualquier proyecto Big Data. Es en este punto donde entran en juego los procesos de extracción, transformación y carga, frecuentemente abreviado como ETL (del inglés Extract, Transform and Load). Si habéis estado atentos al blog ya sabréis que FME Desktop se enmarca dentro de estas siglas y que, además, es el ETL que mayor capacidad tiene para extraer, transformar y cargar datos geográficos.
El crecimiento continuo y exponencial de datos por parte de empresas supera cualquier capacidad de las bases de datos relacionales convencionales. Normalmente, los usuarios de GIS, conocemos bastante este tipo de bases de datos, en la que entraría el clásico shapefile, la geodatabase o PostGIS. Pero el mundo está en constantes cambios y tiende a no ser capaz de gestionar, administrar, capturar y analizar tal enorme volumen de datos con este tipo de herramientas.
Es aquí, cuando se habla de datos masivos, es cuando entra en juego el término Big Data. Las bases de datos no relacionales ocupan (y ocuparán más aún) un lugar esencial para la gestión de datos y, los datos geográficos no escapan a esta tendencia.
Si bien, el sistema de base de datos NoSQL más conocido es Mongodb, un sistema orientado a Documentos y de código libre. Que se guarden en documentos quiere decir que, en vez de tablas, como normalmente estamos acostumbrados a verlas, los datos se almacenan en XML, JSON, o Binary JSON. Este último formato es el que utiliza MongoDB en concreto.
La pregunta sería: ¿Puede FME Desktop conectarse a una base de datos Mongodb, leer y cargar datos? Pues, la verdad es que no hay formato que se le resista a FME Desktop. Es sorprendente. Vamos a ver un ejemplo de carga de datos desde un shapefile a Atlas, el servicio en la nube de mongodb.
La manera es muy sencilla. Basta con establecer una conexión a la base de datos copiando la ruta Connection String que proporciona Atlas introduciendo nuestro usuario y contraseña.
De esta manera ya se puede cargar una entrada o una salida que provenga de nuestro Cluster en la nube. Se puede ver en la imagen siguiente un espacio de trabajo de FME Desktop sencillo donde, por orden de izquierda a derecha, se puede ver: entrada del archivo shapefile con polígonos, un transformador que sustituye los polígonos por su centroide (sin tocar el esquema de datos), transformador que calcula identificadores para los objetos de mongodb y, por último, la salida a mongodb, con la conexión establecida. Así pues, se cargarán 41 puntos en mongodb.
Se puede comprobar que se han introducido perfectamente en la base de datos, mediante Robo 3T, la GUI de mongodb. Para entendernos, sería como el pgAdmin para PostgreSQL/PostGIS. Como se ve, la geometría de los puntos viene en un array, en la que se proporcionan dos coordenadas por punto y efectivamente hay 41 documentos.
Desde Atlas, se podría configurar una gráfica para la visualización de los puntos introducidos con datos relacionales con las elecciones.
Como veis, FME simplifica muchísimo el tratamiento de datos espaciales en MongoDB. Hace mucho más fácil el poder operar con ellos y almacenarlos de nuevo fácilmente. Es sin duda una de las herramientas más potentes para el GIS actualmente.
Esperamos que con esta entrada se haya suscitado un poco más el interés por aprender a manejar este software. Si queréis aprender más sobre la herramienta, no os perdáis nuestro Curso de FME que dará comienzo próximamente.
Autor: Carles Martí.
¿Quieres comentarnos algo? Adelante!