11 pontos por xguru 2025-04-30 | Ainda não há comentários. | Compartilhar no WhatsApp
  • Resolve a complexidade e a lentidão do desenvolvimento tradicional de backends de dados, permitindo criar rapidamente backends analíticos com TypeScript ou Python
  • Inclui uma stack padrão (ClickHouse, Redpanda, Temporal) e há planos de expansão futura para várias plataformas de nuvem
  • Simplifica o desenvolvimento local, com testes rápidos e hot reload imediato
  • É adequado para a criação de diversos aplicativos intensivos em dados, podendo ser usado para análise em tempo real, migração de dados, streaming de eventos e mais

Moose

  • Moose é um framework que permite criar backends analíticos usando apenas código TypeScript ou Python
  • Existe para resolver o problema de lentidão e complexidade das ferramentas tradicionais de desenvolvimento de backends de dados
  • Problemas de criar um backend analítico com as ferramentas atuais

    • Problema de ferramentas dispersas
      Muito tempo é gasto integrando inúmeros serviços como Kafka, ClickHouse, Postgres, dbt e Airflow
    • Problema de incompatibilidade de schema
      Modelos de código, schemas de banco de dados, validação de API e formatos de mensagem acabam se desencontrando com o tempo
    • Dificuldades no fluxo de desenvolvimento
      A ausência de testes locais, ciclos longos de deploy e trocas frequentes de contexto reduzem a produtividade do desenvolvimento
    • Processamento apenas com SQL
      Há o incômodo de ter que usar somente SQL em vez de linguagens de programação mais familiares
  • Problemas ao construir tudo manualmente

    • Mesmo para adicionar um campo simples, é preciso fazer manualmente todo o trabalho abaixo
      • Modificar os modelos de código em TypeScript/Python
      • Alterar o schema do banco de dados
      • Atualizar os tópicos do Kafka
      • Atualizar a validação em runtime
      • Atualizar transformações e consultas
    • Leva muito tempo e esforço testar cada mudança com segurança, todas as vezes

Como o Moose resolve isso

  • O que o Moose oferece

    • O próprio código em TypeScript ou Python atua como fonte única de verdade para a lógica da aplicação de dados e a infraestrutura
    • Com base no código, ele garante o seguinte
      • Segurança total de tipos e validação
      • Eliminação de código boilerplate
      • Detecção antecipada de erros durante o desenvolvimento
  • Eliminação da troca de contexto

    • Não é preciso se preocupar com convenções de nomenclatura de tabelas, sincronização entre modelos e campos de tabela, ou se um campo deve ser nullable
  • Desenvolvimento local

    • Execução com um clique
      É possível rodar toda a infraestrutura de dados localmente com um único comando
    • Configuração zero
      Todos os componentes já vêm pré-configurados, sem necessidade de setup adicional
    • Mesma estrutura do ambiente de produção
      Usa a mesma stack tecnológica do ambiente real de deploy
    • Feedback em tempo real
      As mudanças são refletidas imediatamente em toda a stack
  • Fluxo de desenvolvimento típico

    • Ao adicionar ou alterar um modelo, basta salvar para que a infraestrutura local faça hot reload imediatamente
    • Ao adicionar um novo campo, ele é aplicado imediatamente à API, aos streams e ao banco de dados
    • Também é possível testar pipelines localmente, enviando dados de exemplo para a API de ingestão local e verificando o resultado na hora
  • Fluxo de hot reload

    • Depois de modificar um modelo, basta salvar para que as mudanças sejam aplicadas automaticamente
    • Os campos adicionados são aplicados automaticamente à validação da API, ao schema do banco de dados e aos streams
  • Modularidade

    • É possível montar a configuração escolhendo apenas os componentes necessários

Stack padrão do Moose

  • ClickHouse
    Banco de dados OLAP ativado por padrão
  • Redpanda
    Plataforma de streaming de eventos compatível com Kafka (pode ser desativada)
  • Temporal
    Ferramenta de orquestração de workflows (pode ser desativada)
  • Expansões planejadas

    • Snowflake, Databricks, BigQuery
      Suporte planejado para data warehouses em nuvem
    • Kafka, Kinesis, Pulsar
      Suporte planejado para várias plataformas de streaming de eventos compatíveis com Kafka

O que pode ser criado com Moose

  • Análises em tempo real para usuários
    Integração de leaderboards, gráficos e métricas em apps web e mobile
  • BI e data warehouse
    Coleta de várias fontes de dados para construir um banco analítico e gerar relatórios
  • Migração de dados
    Transferência de dados de sistemas legados para um backend de dados moderno
  • Streaming de eventos
    Processamento de eventos em tempo real em plataformas de streaming como Kafka e Redpanda
  • Tarefas de ETL
    Coleta periódica de dados de várias fontes e carga no ambiente analítico

Ainda não há comentários.

Ainda não há comentários.