Plataforma de datos · código abierto · visualización de datos

Marquez: cómo hacer que el origen de los datos se pueda seguir a simple vista

Marquez project screenshot

Contexto

En una plataforma de datos nada está aislado. Una tabla la produce un job que lee otras tres tablas, y estas alimentan un panel por el que alguien se quejará el lunes por la mañana. Cuando esas dependencias existen solo como identificadores en una lista, responder a «de dónde sale esta cifra» se convierte en una tarde preguntando a los compañeros.

El reto

Dibujar un grafo denso de dependencias de modo que siga siendo legible: con tanto a la vista como haga falta para ver la forma del sistema, con tanto detalle bajo demanda como haga falta para responder a la pregunta real, y sin ningún estado en el que el usuario se pierda en sus propios datos.

Alcance

Qué hice

  1. 01Colaboré en el frontend de la aplicación web de código abierto Marquez.
  2. 02Trabajé en las interfaces para explorar metadatos.
  3. 03Implementé la representación visual de las dependencias entre datos.
  4. 04Usé React y D3.js para una interfaz interactiva y muy centrada en los datos.

Decisiones clave

Decisiones clave

  1. 01

    El grafo es la forma principal de leer, no un adorno

    Las dependencias se dibujan como un grafo porque la pregunta casi siempre es relacional: no «qué es este conjunto de datos», sino «qué hay aguas arriba y qué se caerá si lo cambio».

  2. 02

    D3.js donde una biblioteca de gráficos se quedaría corta

    Los grafos de origen de datos exigen control sobre la distribución, el comportamiento de los nodos y cuánto se dibuja a la vez. D3 da ese control a costa de más trabajo manual, y es el compromiso correcto para una interfaz especializada en la que la gente pasa el día entero.

  3. 03

    React uniendo el resto de la aplicación

    La estructura de componentes unió la visualización con los paneles de metadatos y los flujos que la rodean, de modo que el grafo es una vista dentro de la aplicación y no una isla en medio.

Resultados

Resultados

  1. 01

    Una interfaz en la que los ingenieros exploran metadatos y siguen las dependencias en lugar de reconstruirlas a mano.

  2. 02

    Un grafo técnico de datos convertido en algo que se puede explorar, no en una lista de identificadores.

  3. 03

    Un trabajo verificable públicamente, porque Marquez es de código abierto y el código está en GitHub.

Stack

  • React
  • JavaScript
  • D3.js
  • Open Source

Servicios aplicados

¿Tiene un proyecto parecido? Cuénteme qué quiere construir y le responderé, normalmente, en 2 horas.