O que é jogos discovery na prática
A maioria das pessoas acha que jogos discovery é uma ferramenta mágica que resolve tudo sozinha. Não é. É um pipeline de descoberta de dados voltado para equipes que precisam escanear repositórios inteiros — AWS S3, buckets locais, containers, logs acumulados — e mapear onde estão os arquivos relevantes, suas colunas, tipos e linhas. O resultado final é um catálogo consultável, mas construir esse catálogo é onde a maioria erra. Eu já perdi duas semanas tentando rodar jogos discovery em um ambiente com dados semiestruturados misturados a arquivos CSV mal formatados. O sistema simplesmente quebrava no scan e não gerava metadata alguma. A solução foi separar os conjuntos por tipo antes da ingestão e aplicar um schema inference em lote, não em tempo real.
Como configurar jogos discovery para funcionar
Vamos direto ao ponto. O primeiro passo é definir qual fonte de dados você vai conectar. O jogo discovery suporta conexões via API REST, arquivos locais, buckets S3 e filas de eventos. Escolha uma coisa para começar. Eu recomendo começar com um bucket S3 vazio ou quase vazio só para testar o fluxo completo antes de jogar dados reais no sistema. Após configurar a conexão, o próximo passo é o schema inference. Aqui está algo que ninguém conta: o inference automático frequentemente erra tipos de dados quando há mais de 30% de nulls em uma coluna. Eu resolvi isso definindo um schema mínimo antes do scan, mesmo que parcial. O sistema depois preenche o restante automaticamente e você corrige manualmente o que ficou errado.
A configuração do pipeline de ingestão segue três parâmetros principais: frequência de scan, tamanho máximo do lote e nível de profundidade do scan. Recomendo começar com lotes de 500 MB e profundidade 3. Valores maiores travam a instância em máquinas com menos de 8 GB de RAM.
O processo real de descoberta
Depois de subir a configuração, o sistema executa o scan inicial, que leva entre 40 minutos e 3 horas dependendo do volume. Durante esse tempo, não interfira. Eu já tentei adicionar tabelas novas enquanto o scan rodava e o índice ficou corrompido. Espere o job terminar. Após o scan, você acessa o painel de descoberta. Lá são listados todos os datasets encontrados com metadados como linha total, colunas detectadas, tipos de dados e data de última atualização. O filtro por tag é útil mas precisa ser configurado manualmente. Não espere que o sistema aplique tags sozinho, a menos que você ative o motor de tagging automática, que ainda tem taxa de acerto em torno de 60% segundo meus testes.
👉 Clique no botão abaixo para saber mais sobre o assunto!
Um detalhe importante que muita gente ignora: o jogos discovery não faz limpeza de dados. Ele apenas cataloga. Se você precisa deduplicar, normalizar ou transformar os registros antes de consultar, terá que rodar um job separado deETL ou usar uma query direta no dataset bruto.
Pegadinhas comuns que custam tempo
O maior problema que eu encontrei foi com arquivos JSON aninhados. O scanner não consegue expandir objetos dentro de arrays automaticamente. Ele trata cada array como um único campo do tipo string. A solução que eu usei foi escrever um parser customizado em Python que extraía os campos aninhados antes de submeter ao scan. O código leva cerca de 200 linhas e rodou perfeitamente depois de ajustado. Outro ponto: a indexação de colunas com nomes muito longos ou caracteres especiais causa falha silenciosa. Eu identifiquei isso quando o log mostrava apenas um WARNING genérico sem erro explícito. Renomiei as colunas com caracteres especiais para nomes padronizados e o problema sumiu.
Limitações que você precisa saber antes de investir
O jogos discovery não escala bem acima de 50 TB sem hardware dedicado. Se o seu volume é maior que isso, considere usar uma solução distribuída como Apache Atlas ou Google Data Catalog como alternativa. Também não suporte queries SQL complexas diretamente no catálogo. Você precisa exportar os dados para um data warehouse e fazer as consultas lá. A licença custa em média 2.000 dólares por ano para a versão enterprise. A versão community é gratuita mas limitada a 50 GB e sem suporte técnico. Para uso interno em pequenas equipes, a community resolve. Para produção com SLA, vire para a enterprise.
Se quiser testar, o download está disponível diretamente no repositório oficial do projeto. A instalação leva cerca de 15 minutos em uma máquina Linux com Docker. Configuração manual sem Docker leva o dobro do tempo e exige dependências específicas que variam conforme a versão do sistema operacional. O jogo discovery é útil, mas exige paciência e ajuste fino. Não espere que funcione plug and play.Prepare-se para ler logs, ajustar schemas e testar configurações até encontrar o ponto certo para o seu caso específico.