Ingerindo mais de 1 bilhão de pontos por dia

data engineering
data science
Autor

Vinícius Félix

Data de Publicação

12 de setembro de 2026

Mais de 1 bilhão de pontos por dia. A estrutura do dado era simples: data e hora, um identificador do dispositivo e uma coordenada. O trabalho para transformar aquilo em informação útil era bem menos simples.

Conduzi de ponta a ponta um projeto que lidava com dados de mais de 100 milhões de celulares. Minha atuação atravessou arquitetura, engenharia e ciência de dados, com a execução realizada pela equipe.

Recebíamos cerca de 30 a 50 gigabytes (GB) por dia, em lotes que chegavam a cada hora. Precisávamos organizar e processar esse volume, controlar o custo e, depois, construir algo útil a partir dos registros de localização.

Receber era a parte fácil

A ingestão, a entrada dos dados no nosso ambiente, colocava um problema de armazenamento e processamento. Precisávamos de formatos compactos, que ocupassem pouco espaço, e otimizados para leitura, para que trabalhar com os dados não exigisse um custo desproporcional.

O pré-processamento também era importante. Antes de desenvolver os indicadores, havia trabalho de preparação dos dados, especialmente sobre sua dimensão espacial: a localização de cada ponto.

A Uber foi uma referência nessa etapa. A eficácia com que o aplicativo processava os pontos ao solicitar um motorista nos levou a estudar sua abordagem geral de processamento e adaptá-la à nossa necessidade. Meu papel era conduzir essas decisões e manter a conexão entre a estrutura de engenharia e o que a ciência de dados precisaria construir depois.

Resolvemos o desafio do volume com uma estrutura de baixo custo. Mas ter os pontos armazenados e prontos para processamento ainda deixava uma pergunta: o que conseguiríamos entender a partir deles?

Um bilhão de pontos não significava a mesma informação sobre cada celular

O identificador não me dizia quem era o dono do aparelho. Ele permitia acompanhar registros associados a um dispositivo, mas oferecia apenas uma parte de seu comportamento.

A frequência desses registros variava muito. Alguns celulares geravam um registro a cada dez dias. Outros chegavam a 400 registros por dia. Tratar esses dois casos da mesma forma desconsideraria uma diferença central do dado.

Essa irregularidade mudou a forma como precisávamos trabalhar:

  • O volume total não descrevia a cobertura de cada dispositivo. Era necessário examinar os registros disponíveis para definir o que podia entrar em cada análise.
  • O período de observação precisava variar. Alguns dispositivos ofereciam informação útil em poucos dias; outros exigiam períodos mais longos.
  • Disponibilidade não bastava para uso. Critérios de elegibilidade, as condições para aceitar um registro na análise, faziam parte dos métodos.

Trabalhamos com diferentes janelas temporais, os intervalos de tempo considerados na análise, para ampliar a cobertura dos dispositivos. A irregularidade dos dados precisava ser tratada junto da construção dos indicadores.

O Geobehavior

Com critérios definidos, construímos o Geobehavior: indicadores para caracterizar padrões associados aos dispositivos a partir de seus registros de localização.

Conseguíamos inferir locais associados à moradia, ao trabalho e à frequência de visitas. Ao combinar esses padrões com os dados do entorno, passávamos dos pontos isolados para uma caracterização do dispositivo.

O identificador continuava sem me informar o nome de seu dono. O que tínhamos era uma leitura de parte do comportamento observado, construída a partir dos registros disponíveis e dos critérios adotados.

Essa distinção era importante para entender o resultado. Um perfil dependia da informação que aquele dispositivo havia produzido. A quantidade de dados recebida pelo sistema não tornava igualmente completa a observação de todos os aparelhos.

Aprendizados, lições, erros e principais impactos

Conduzi o projeto desde a estrutura para receber e processar os dados até a construção dos indicadores. A equipe resolveu primeiro o desafio do alto volume com baixo custo, tratou a irregularidade dos registros e desenvolveu o Geobehavior.

Dessa experiência, destaco:

  • A arquitetura precisava preparar o uso analítico. Formatos compactos, leitura eficiente e pré-processamento espacial faziam parte da preparação dos dados para os indicadores.
  • Usar o volume agregado como medida de informação seria uma armadilha. A diferença entre registros esparsos e frequentes exigia critérios de elegibilidade e períodos de observação distintos.
  • As janelas temporais faziam parte do método. Adaptar os intervalos analisados era o caminho adotado para ampliar a cobertura diante de registros irregulares.
  • O resultado foi transformar pontos em indicadores de comportamento. O Geobehavior combinou padrões de localização com dados do entorno, criando uma caracterização que ia além do registro cru.

Minha contribuição foi conduzir essa sequência de ponta a ponta, articulando as decisões de arquitetura, engenharia e ciência de dados para que o volume recebido pudesse se tornar informação utilizável.