Escrito por: Rodrigo Medina, Ivette Ayala

En Nubank, cientos de equipos generan miles de activos de datos para atender a más de 130 millones de clientes en varios países. La arquitectura distribuida que hace posible esta escala también trae consigo un desafío analítico: a medida que la plataforma de datos crece, se vuelve cada vez más compleja y fragmentada, lo que dificulta su comprensión y navegación.

DiscoverDf nació de la premisa de que, en un entorno distribuido, entender los activos de datos no puede dejarse al azar. Es necesario abordarlo de manera sistemática, convirtiendo esa complejidad en algo estructurado y accesible. El objetivo es que cualquier analista, en cualquier equipo, pueda pasar del primer contacto con un conjunto de datos a hacer contribuciones significativas en días, no en semanas ni meses.

El costo invisible de la curva de aprendizaje

Cualquier persona que haya llegado a un nuevo equipo como Analista de Negocios conoce esa sensación. Llegas con energía e ideas, pero antes de poder aportar, hay un peaje invisible que pagar: entender los datasets del equipo. Qué tablas importan realmente, qué representa cada filtro, dónde viven los casos especiales. Alcanzar ese nivel de fluidez puede llevar semanas, a veces meses.

Ahora imagina un proyecto transversal con un plazo ajustado. Necesitas trabajar con datasets que pertenecen a otros equipos, que no has tenido tiempo de entender a fondo. El enfoque habitual es pragmático: contar filas, revisar algunas columnas y luego contactar al BA o AE del equipo para completar los vacíos.

Funciona, pero es frágil. Filtros importantes vinculados a tu contexto específico pueden pasarse por alto, las oportunidades de segmentación pueden quedar sin explorar, y las decisiones terminan construidas sobre un modelo mental incompleto de los datos. Esto no sucede por falta de habilidad del analista, sino porque no existe una forma estructurada de explorarlos.

Aquí es donde comienza la hipótesis. El costo de incorporación no es inevitable, porque los datasets no son intrínsecamente difíciles de entender, sino porque nos falta una manera consistente y repetible de aproximarnos a ellos desde el primer contacto.

Y si ese proceso pudiera comprimirse, ¿cómo sería? En lugar de semanas de absorción pasiva de contexto, un analista podría ejecutar una sola función y, en minutos, entender el contenido del dataset, sus límites, distribuciones y estructura. A partir de ahí, las conversaciones con los dueños de los datos cambiarían: el analista pasaría de la dependencia a la contribución, y de pedir explicaciones a proponer ideas fundamentadas.

Descubre las oportunidades

No puedes explorar lo que no sabes que existe

Cuando los analistas se acercan hoy a un dataset nuevo, suelen empezar por lo que ya conocen: exploran campos familiares, preguntan al equipo responsable sobre el resto y construyen gradualmente una comprensión operativa. Una vez que sabes dónde buscar, este proceso es ágil y efectivo. El problema es que asume que ya sabes dónde buscar.

Imagina ahora un dataset con docenas o cientos de columnas que abarca identidades de clientes, horizontes temporales y categorías de comportamiento. El analista perfila lo que le resulta familiar, pide contexto sobre lo que no, y avanza — pero hay más por descubrir.

Dimensiones de segmentación con potencial permanecen ocultas, y patrones que revelan la estructura de los datos están presentes, pero no siempre emergen a la superficie. Estos elementos pueden influir directamente en mejores decisiones, y sin embargo suelen quedar sin explorar.

Esto se vuelve aún más relevante en proyectos que involucran múltiples datasets, a veces pertenecientes a distintos equipos. Cada capa adicional de comprensión suma valor, y cuanto más completo es el panorama, más sólida es la base para todo lo que viene después.

Hay una diferencia importante entre conocer algunas dimensiones y entender verdaderamente un objeto de datos que captura la actividad, los estados y el comportamiento de los clientes. Cuando un analista alcanza ese nivel de comprensión, las conversaciones de alineación cambian. En lugar de pedir contexto, llega listo para contribuir, con una visión clara del panorama completo que representan los datos.

Tres principios para entender cualquier dataset

La idea central detrás de DiscoverDf es que cualquier dataset, independientemente del dominio o de quién sea su dueño, puede entenderse a través de tres principios universales. Cada uno está asociado a un nivel diferente de cardinalidad de columna.

El Qué: qué entidades contiene este dataset y a qué escala

Las columnas con mayor cardinalidad, que a menudo tienen millones o cientos de millones de valores únicos, responden la pregunta más fundamental: ¿qué entidades existen en este dataset y a qué escala?

Suelen ser identificadores: IDs de clientes, IDs de cuentas, IDs de transacciones, IDs de facturas. Al observar el conteo de valores únicos en la parte superior de un perfil ordenado, el analista puede inferir rápidamente la granularidad de los datos, estimar el tamaño de la población y entender cómo se relacionan las entidades entre sí.

El Cuándo: la estructura temporal de los datos

Las columnas con cardinalidad que va de cientos a decenas de miles suelen representar tiempo. Incluso sin depender de los nombres de columna, ese rango es una señal clara de estructura temporal.

A partir de ahí, el analista identifica la columna de fecha principal revisando conteos de nulos, valores mínimos y máximos, y la distribución a lo largo del tiempo. En cuestión de segundos queda claro qué tan atrás llegan los datos, cuán recientes son y si hay brechas que necesitan atención.

El Cómo: las dimensiones disponibles para el análisis

Las columnas con cardinalidad baja, a menudo con cien o menos valores únicos, definen cómo se pueden explorar los datos. Son campos categóricos y de estado: tipos de producto, estados de préstamo, segmentos de clientes, flags y categorías de comportamiento.

Representan los ejes naturales para filtrar, agrupar y analizar. Al mismo tiempo, suelen ser las más ignoradas durante la exploración inicial. DiscoverDf las hace explícitas, mostrando cada dimensión junto con su distribución completa de valores. Lo que de otro modo dependería del conocimiento del dominio se convierte en algo estructurado e inmediatamente accionable.

Donde los principios se encuentran con el código

Estos tres principios son independientes del lenguaje o las herramientas utilizadas. Describen una forma de pensar sobre los datos, no una implementación específica.

DiscoverDf está implementado como una función reutilizable de Scala que corre en Databricks. El analista pasa un DataFrame y recibe un perfil estructurado con dieciséis indicadores analíticos por columna.

El conteo de valores únicos en todas las columnas se convierte en la nueva clave de ordenamiento: cuando el analista organiza las columnas de mayor a menor cardinalidad, el dataset se organiza en las tres capas descritas. El Qué, el Cuándo y el Cómo emergen directamente de los datos.

Cada columna se explora en profundidad. Los campos de marca de tiempo se estandarizan en formatos de fecha, y cada columna se enriquece con un conjunto consistente de señales: distribuciones de nulos y ceros, valores mínimos y máximos, conteos categóricos y de fechas, y resúmenes estadísticos.

Para las dimensiones de baja cardinalidad, la función proporciona distribuciones completas por categoría. Para los campos de fecha, muestra distribuciones temporales y señales de monitoreo. Para las columnas de alta cardinalidad, devuelve valores de muestra representativos.

El resultado es una vista estructurada del dataset que hace visibles de inmediato su forma, sus límites y su potencial analítico.

Ver el panorama completo antes de la primera consulta

Para ilustrar cómo funciona la función, consideremos ejecutar DiscoverDf sobre un dataset con cientos de millones de filas y decenas de columnas.

Una vez que las columnas se ordenan por valores únicos en orden descendente, comienza a emerger una estructura. El primer bloque muestra tres columnas con cientos de millones de valores únicos para IDs de transacciones, seguidas de decenas de millones para IDs de clientes y cuentas. La escala y la granularidad quedan inmediatamente claras, y el Qué queda respondido. Se trata de un dataset transaccional donde cada fila representa un evento individual conectado a una población de clientes más amplia.

El siguiente bloque contiene nueve columnas con entre uno y dos mil valores únicos. Ese rango de cardinalidad es una señal de campos de fecha. El analista identifica la columna que sirve como referencia de fecha principal, luego revisa su nombre, valores mínimo y máximo, y distribución de nulos. El marco temporal queda claro en segundos, abarcando varios años hasta los registros más recientes. El Cuándo queda respondido: el dataset captura años de historial transaccional.

En la parte inferior del perfil, once columnas tienen menos de setenta valores únicos cada una. Son tipos, estados, flags y campos de segmentación, todos presentados con sus distribuciones completas de valores. El Cómo queda respondido: el analista puede ver once dimensiones distintas para filtrar, agrupar y analizar antes de escribir una sola consulta.

El descubrimiento como práctica, no solo como herramienta

Una de las distinciones más importantes que aprendimos a establecer es la diferencia entre descubrimiento y ejecución. DiscoverDf está diseñado para el primer contacto con un dataset, cuando el analista necesita construir un modelo mental completo desde cero. Una vez que ese modelo está en su lugar y el contexto es claro, el trabajo cotidiano migra naturalmente hacia consultas más rápidas y específicas.

El objetivo no es reemplazar el flujo de trabajo del analista, sino comprimir el tiempo que transcurre antes de él. Lo que normalmente toma semanas de absorción pasiva de contexto se convierte en un proceso estructurado y mucho más ágil.

Con el tiempo emergió un segundo caso de uso: la validación. Cuando los equipos crean nuevos datasets o refactorizan pipelines existentes, DiscoverDf proporciona una forma estructurada de verificar si el resultado se ajusta a las expectativas. Ayuda a confirmar que la granularidad es correcta, que la cobertura temporal es completa y que las dimensiones categóricas contienen los valores esperados.

Principios analíticos que trascienden la tecnología

La contribución más duradera de este trabajo es el marco conceptual. El Qué, El Cuándo y El Cómo son principios que cualquier analista puede aplicar en cualquier entorno, independientemente del stack tecnológico. DiscoverDf es una forma de implementarlos hoy en Databricks. El pensamiento detrás tiene vocación de perdurar más allá de cualquier tecnología específica.

El próximo paso ya está tomando forma. A medida que los flujos de trabajo impulsados por IA evolucionan, el proceso de descubrimiento descrito aquí no tiene que seguir siendo manual. Los agentes pueden ejecutar perfilados estructurados, identificar dimensiones clave y generar resúmenes antes de que el analista escriba una sola consulta. El rol humano pasa de la exploración a la interpretación y el juicio, que es donde los analistas generan mayor valor.

La pregunta más amplia, y la que vale la pena perseguir como organización, es qué sucede cuando esto deja de ser una práctica individual y se convierte en un estándar de equipo, integrado en la forma en que incorporamos personas, documentamos y colaboramos entre equipos. Ese es el punto en que una herramienta útil se convierte en una capacidad duradera.

Por qué esto importa más allá de la herramienta

DiscoverDf es más que una herramienta. Refleja una forma de pensar que los equipos de análisis necesitan cultivar. Uno de los mayores desafíos que enfrentan los Squad Leads es ayudar a los analistas a alcanzar su máximo potencial rápidamente.

El costo de incorporación descrito en este artículo también es un costo de confianza. Los analistas que pasan sus primeras semanas operando en modo de dependencia, pidiendo contexto y esperando orientación, tienden a internalizar esa dinámica. Y una vez establecida, se tarda tiempo en desaprenderla.

Cuando esa dinámica desaparece, el efecto es inmediato. Cuando un analista llega a una conversación ya entendiendo el dataset, ya siendo capaz de hacer mejores preguntas o sugerir direcciones, la interacción cambia. Cambia la forma en que los analistas se ven a sí mismos y cómo los equipos perciben su rol.

A escala, esto se multiplica. Cuando todos se ponen al día más rápido y operan con mayor autonomía, el impacto eleva el estándar de lo que Nubank puede lograr con datos. Esto es un multiplicador de la capacidad del equipo.

También hay una dimensión cultural en este trabajo. Un equipo identificó una brecha estructural, construyó una solución y la compartió. Este instinto de resolver para el equipo, y no solo para las necesidades individuales, es parte definitoria de la cultura analítica que se está construyendo en Nubank. DiscoverDf es un ejemplo. Muchos otros vendrán. El cambio importante es que esta mentalidad se está convirtiendo en la norma.

Descubre las oportunidades