Skip to content

Instantly share code, notes, and snippets.

@gpupo
Last active April 5, 2025 11:02
Show Gist options
  • Save gpupo/ae3655cbe5019d1c30d40d1f3500d1e4 to your computer and use it in GitHub Desktop.
Save gpupo/ae3655cbe5019d1c30d40d1f3500d1e4 to your computer and use it in GitHub Desktop.
Quadros Comparativos entre Plataformas de Orquestração; Ferramentas de BI e Modelagem Analítica; Ferramentas de Geração Automática de APIs e Backend-as-a-Service

Quadro Comparativo de Ferramentas de Geração Automática de APIs e Backend-as-a-Service

Característica PostGraphile Hasura Supabase WunderGraph
Linguagem principal TypeScript + Node.js Haskell TypeScript + Go TypeScript + Go
Tipo de API gerada GraphQL GraphQL REST e GraphQL GraphQL, REST, OpenAPI
Geração de API a partir de... PostgreSQL PostgreSQL PostgreSQL Vários (PostgreSQL, REST, GraphQL, etc.)
Realtime (WebSockets, Subscriptions) Sim, via plugins Sim, nativo com suporte a triggers Sim, nativo (Postgres + Realtime server) Sim, com suporte a GraphQL live queries
Autenticação embutida Não (precisa ser adicionada) Não (precisa integração externa) Sim, pronta para uso (JWT + RBAC) Sim, com integração a Identity Providers
Mecanismo de autorização Roles, policies em SQL Permissões detalhadas por role/campo Row-level security (RLS) com policies Configurável via YAML + middlewares
Extensibilidade com código custom Alta (via plugins e middleware) Moderada (webhooks e actions custom) Alta (Edge functions, serverless) Alta (wrappers, middlewares, composables)
Admin UI Limitada (plugins ou pgAdmin) Sim, rica e interativa Sim, painel completo Sim (via WunderGraph Studio)
Deploy local/self-hosted Sim Sim Sim Sim
Melhor para... Desenvolvedores que preferem controle total Apps reativas com GraphQL potente Backend completo pronto para uso Integração de múltiplas fontes em APIs
Link oficial postgraphile.org hasura.io supabase.com wundergraph.com

Quadro Comparativo de Ferramentas de BI e Modelagem Analítica

Característica Superset Redash Meltano Lightdash Cube.js Evidence
Linguagem principal Python + React Python + AngularJS Python TypeScript TypeScript TypeScript + SQL
Orquestração Não aplicável Não aplicável Sim (via plugins e pipelines de dados) Limitada (execução manual ou CI/CD) Sim (via API e pré-agregações) Limitada (orientado a builds)
Definição de tarefas Dashboards com drag-and-drop e SQL Consultas SQL salvas e widgets Pipelines ETL com plugins configuráveis Métricas e dashboards com dbt APIs de dados e pré-agregações Relatórios via arquivos Markdown + SQL
Execução distribuída Suporte via Celery ou Kubernetes Limitado (banco + frontend) Sim (pode orquestrar via Airflow etc.) Limitado Sim, escalável via Redis e K8s Não
Interface Web Sim, rica e moderna Simples e funcional CLI + Web (em alguns plugins) Sim, moderna, estilo Looker Sim, frontend customizável via API Sim, focada em devs (Markdown + preview)
Persistência PostgreSQL/MySQL (metadados) PostgreSQL Arquivos + DBs dbt (YAML + SQL) Redis + banco relacional (backend) Git + DB (modo build)
Observabilidade e OpenTelemetry Parcial via plugins Limitada Sim (usa OpenTelemetry e logs estruturados) Limitada Suporte nativo via tracing/logs Logs via CLI e Git, sem OT nativo
Melhor para... Dashboards empresariais com controle RBAC Dashboards rápidos e simples Pipelines e ELT centrado em devs Métricas centralizadas com dbt APIs analíticas para apps customizados Data storytelling orientado a devs
Link oficial superset.apache.org redash.io meltano.com lightdash.com cube.dev evidence.dev

Quadro Comparativo entre Plataformas de Orquestração

Característica Apache Airflow Mage Luigi Prefect Dagster
Linguagem principal Python Python, SQL, R Python Python Python
Orquestração Lote Lote e streaming Lote Lote e híbrida (API/CLI/UI) Lote e orientada a ativos (assets)
Definição de tarefas DAGs com Python Blocos tipo notebook Scripts com dependências explícitas Funções Python com decorators Declarativa com Ops e Assets
Execução distribuída Celery, Kubernetes, CeleryExecutor Celery (opcional), local Não nativa, requer soluções externas Agentes locais, Prefect Cloud ou Server Sim, via gRPC, multiprocess, K8s
Interface Web Sim, Web UI rica Sim, interativa (tipo notebook) Simples (básica) Sim, moderna e responsiva (Orion UI) Sim, rica, com foco em ativos
Persistência PostgreSQL/MySQL SQLite ou PostgreSQL Opcional (SQLite/PostgreSQL) PostgreSQL (Orion DB) PostgreSQL (opcional)
Observabilidade e OpenTelemetry Logs, métricas via plugins; suporte OT Logs no UI, integração básica Básica, sem suporte nativo a OT Suporte nativo ao OpenTelemetry Suporte parcial via plugins ou custom
Melhor para... Workflows complexos e produção robusta Times ágeis com foco em prototipação Processos simples ou pipelines legados Workflows modernos e visibilidade total Pipelines orientados a ativos e dados
Link oficial airflow.apache.org mage.ai github.com/spotify/luigi prefect.io dagster.io

Casos de Uso - Stack Integrado (Orquestração x BI x Backend)

Orquestração BI / Visualização Backend/API Caso de Uso Link / Referência
Dagster Cube.js Hasura Camada semântica com Cube.js, Dagster para ETL e Hasura expondo dados via GraphQL Rittman Analytics
Apache Airflow Superset PostGraphile Orquestração de ETL com Airflow, Superset para dashboards e PostGraphile para gerar APIs GraphQL de dados Airbnb Engineering (uso similar)
Prefect Lightdash Supabase Stack moderna com Prefect para dados, Lightdash para análise e Supabase como backend e repositório de dados Comum em projetos no GitHub (ex: modern data stack com dbt + Supabase + Lightdash + Prefect)
Mage Meltano Hasura Mage orquestra ingestão, Meltano gerencia ELT com dbt, e Hasura fornece camada GraphQL Meltano + Hasura
Dagster Evidence Supabase Dados processados com Dagster, expostos em Evidence como site dinâmico, com Supabase como backend Stack emergente usada em MVPs e startups
Luigi Redash PostGraphile Pipelines com Luigi, Redash para consultas SQL e visualizações rápidas, APIs customizadas com PostGraphile Padrão em ambientes com PostgreSQL e orquestração leve
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment