Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Superset - Criando dashboards com Python - Rômu...

Superset - Criando dashboards com Python - Rômulo Rodrigues

Avatar for PyData BH

PyData BH

March 21, 2018
Tweet

More Decks by PyData BH

Other Decks in Programming

Transcript

  1. Palestrante Rômulo Rodrigues Cientista de Dados Formado em Eng. de

    Controle e Automação Pós-graduando em Ciência de Dados e Big Data Ramo de atuação: Ciência de dados aplicada ao mercado financeiro. Github: romulomadu
  2. Introdução Rápida • Ferramenta open-source para criação de dashboards. •

    Criada pelos desenvolvedores do Airbnb inicialmente como Paronamix. • Posteriormente, mudou o nome para Caravel. • Em 2016 Airbnb transferiu o projeto para a Apache Software Foundation. • Sob a Apache o projeto foi então renomeado para Superset. ◦
  3. Características • Programado em Python: Backend em Flask, também usa

    Pandas. • Front-end: React/JS • É cloud mative: escalável e pode trabalhar com containers. • É bastante flexível: criar superset_config.py ◦ Web servers suportados: Gunicorn, Nginx, Apache ◦ Metadata DB engine: MySql, Postgres, MariaDB, … ◦ Message Queue: Redis, RabbitMQ, SQS, … ◦ Results backend: S3, Redis, Memcached, … ◦ Caching layer: Memcached, Redis, ...
  4. Características • Tem integração com a maiorias do bancos relacionais

    via SQLAlchemy • Tem integração com Druid (ideal para OLAP) • Permite integrar com flask-apps (blueprints) • Vem com SQL Lab • Possibilita vários níveis de autenticação configuráveis. • Instalação: ◦ https://superset.incubator.apache.org/installation.html ◦ Recomendável instalar em um ambiente.
  5. Conclusão Benefícios • Open-source. • Suporta múltiplas fontes de dados.

    • Possui várias visualizações com filtros interativos. • Pode criar visualizações sem a necessidade de saber SQL. • Visualizações são realmente belas. • Os issues no GitHub são rapidamente respondidos.
  6. Desvantagens: • Você pode cruzar com algum bug (nesse caso

    esteja pronto para reportar como issue no GitHub). • Customizações mais avançadas exigem um conhecimento do código fonte. Conclusão