Potentes herramientas para la visualización de datos de MongoDB

Con una gran cantidad de herramientas de visualización disponibles, es difícil encontrar la correcta para los datos de MongoDB que tenga una funcionalidad lista para usar.

Hoy, quiero contarles sobre mi experiencia en la exploración de tales herramientas de visualización.

Mi objetivo era analizar un conjunto de datos de una base de datos MongoDB. Quería elaborar un flujo de trabajo para el análisis de datos que combinara análisis de gestión de bases de datos, agregación y visualización de datos.

Estas son las herramientas que elegí:

  • Brújulaes una aplicación GUI para un análisis y visualización en profundidad de los datos de MongoDB y el esquema de colecciones. Proporciona una vista en tiempo real de sus datos. La interfaz intuitiva me ayudó a concentrarme en el significado de los datos.
  • Flexmonster Pivot Table es una herramienta para informes y análisis web avanzados. Si bien Compass es una aplicación independiente, descubrí que Flexmonster está integrado directamente en el proyecto web. Logré integrarlo en mi aplicación Angular 4 y lo usé para el análisis de datos.

La primera parte del proceso de visualización es configurar una conexión a una base de datos MongoDB con Compass. Luego, puede explorar qué funcionalidades ofrece Compass y qué análisis puede realizar con esta herramienta.

La segunda parte está dedicada a un mayor análisis de datos de MongoDB. Cargaremos datos en una tabla dinámica y exploraremos las posibilidades que ofrece.

Como fuente de datos para mi investigación , elegí un conjunto de datos sobre 120 años de historia y resultados olímpicos.

Este conjunto de datos tiene una estructura JSON típica que es diferente del formato requerido por MongoDB. Para importar esto a MongoDB, ejecuté el siguiente comando en la CLI:

mongoimport - db  - collection athletes - type json - file athletes.json  - jsonArray

Comprender los datos con Compass

Al principio, mencionaré algunas características de administración de bases de datos.

Compass puede generar histogramas para representar la frecuencia de los datos. Esto me ayudó a analizar la presencia de documentos, tipos de datos y la distribución de valores para campos específicos dentro de la colección.

En primer lugar, me conecté a la instancia de MongoDB que se ejecuta en localhost usando la aplicación Compass.

En la página principal de la colección “atletas”, verifiqué la información sobre la colección, edité los datos en modo interactivo y probé consultas simples y complejas.

Una herramienta de visualización de esquemasme ayudó a comprender mis datos.

Aquí verifiqué las estadísticas sobre los tipos de datos de los campos: el porcentaje de tipos de datos utilizados para este campo en todos los documentos dentro de la colección.

He identificado que tengo tipos de datos mixtos para algunos campos. En mi ejemplo, tengo un tipo numérico para 'Altura'en el 80% de los documentos, pero aparece un tipo de cadena en el 20% de los casos.

Para mí, eso significó que hay una brecha en mi conjunto de datos. La altura se almacena de forma diferente entre los atletas.

Agregación con brújula

¿Qué características hacen que MongoDB y Compass sean tan populares entre los analistas de datos que a menudo trabajan con datos semiestructurados y no estructurados?

MongoDB es útil para análisis en tiempo real porque admite canalizaciones de agregación. Estos pueden incluir operaciones de clasificación y filtrado, y agrupación de datos.

Mientras que Compass admite la creación de consultas en tiempo real para la agregación.

Para centrarme en partes específicas de los datos, he filtrado los documentos por el campo "Edad".

Para mostrar solo a los atletas menores de 22 años, seleccioné el área necesaria en el histograma para construir una consulta en el campo 'Edad'. Como resultado, se han devuelto los documentos correspondientes.

De la misma manera, lo he filtrado por rango de valores. Luego he ordenado los datos por 'Edad' en orden ascendente:

Pero para construir etapas en la canalización de agregación y agrupar los datos, necesitaba usar mi conocimiento del lenguaje de consulta MongoDB. Fue más fácil de hacer en la tabla dinámica.

Analizar los datos con la tabla dinámica Flexmonster

En mis proyectos web, uso Angular. Entonces, seguí un tutorial de Angular para incrustar la tabla dinámica. Para obtener los datos de mi base de datos, utilicé este tutorial.

Me conecté a MongoDB desde mi aplicación y recuperé los datos sobre los atletas. Los datos se comprimieron y luego se pasaron a la tabla dinámica para su visualización.

Después de cargar los datos de muestra sobre los atletas en la tabla dinámica, quería analizar la edad mínima y máxima entre los atletas. Además, quería definir los mejores equipos de la historia en función de la cantidad total de medallas.

Para comenzar el análisis de datos, seleccioné campos en columnas y filas.

Para trabajar con el campo 'Medalla', lo seleccioné a medidas y obtuve los siguientes resultados:

  1. Filtrado los registros por valor para mostrar los 5 mejores equipos con la mayor cantidad de medallas
  2. Apliqué formato condicional a mi informe para resaltar los equipos que tienen más de 185 medallas.

3. A continuación, seleccioné 'Edad' y analicé la edad máxima entre los atletas:

4. Luego, cambié a los gráficos dinámicos y analicé los datos de una manera más visual para conocer los mejores equipos de la temporada de verano:

Conclusión

Entonces, hoy he compartido mi experiencia al usar Compass y Flexmonster Pivot Table. En mi opinión, ambas herramientas pueden ayudar a crear una historia visual creativa y analizar los datos de una manera inteligente.

Espero que haya encontrado útil leer sobre mi experiencia y ahora esté en el camino correcto hacia un análisis de datos exitoso de MongoDB.

Estaré encantado de escuchar cualquier comentario sobre esta descripción general. Por favor, dé su opinión en los comentarios. ¿Qué herramientas de visualización de datos de MongoDB podría recomendar? ¿Manejan y procesan bien sus datos?