WSO2 Identity Server em relação a LGPD – Lei Geral de Proteção de Dados
12 de dezembro de 2019Cinco passos para implementar o DevOps
8 de janeiro de 2020Atualmente, a visualização clara e efetiva de informações é imprescindível para qualquer negócio. Por exemplo, uma empresa de comércio eletrônico recebe milhares de pedidos por dia. Para estudar o desempenho semanal, um gráfico que mostre o número de pedidos por dia resultará em uma interpretação mais rápida do que uma planilha com os detalhes do pedido.
Portanto, a representação visual de dados é uma técnica poderosa e ajuda as empresas a analisar tendências e obter informações valiosas, o que os auxilia na tomada de decisões.
As ferramentas de visualização de dados de código aberto, como Metabase, Redash, Apache Superset e Imply, estão ganhando popularidade no mercado, pois a curva de aprendizado não é íngreme, inclusive para usuários sem conhecimento técnico.
Neste breve artigo vamos analisar o que cada uma delas nos proporciona identificando seus pontos fortes e fracos.
Ferramentas
Vamos começar com uma rápida descrição de cada uma delas.
Metabase
Metabase é uma solução open source de BI (Business Intelligence) simples e fácil, que possibilita ao usuário realizar perguntas e aprender mais sobre os seus dados de forma interativa.
Redash
O Redash é uma ferramenta de BI que ajuda você a entender, conectar, consultar, visualizar e compartilhar seus dados como desejar.
Apache Superset
O Apache Superset é uma solução de BI moderna. Através de sua interface web é possível filtrar e agrupar dados de diferentes fontes, definir métricas e gráficos, e construir dashboards com elevado valor para o usuário.
Imply
Desenvolvida em torno do Apache Druid, o Imply é uma solução de análise de dados em tempo real completa e de alto desempenho, sendo possível transmitir ou carregar dados em lote no Apache Druid para consultas analíticas ad-hoc rápidas.
Fontes de Dados
Abaixo listamos os principais back-end de dados suportados pela Metabase, Redash, Superset e Imply:
Data Sources |
Metabase |
Redash |
Superset |
Imply |
Amazon Redshift |
✓ |
✓ |
✓ |
|
Amazon Athena |
|
✓ |
✓ |
|
Apache Drill |
|
✓ |
✓ |
|
Google Analytics |
✓ |
✓ |
|
|
Google BigQuery |
✓ |
✓ |
✓ |
|
Cassandra |
|
✓ |
|
✓ |
MongoDB |
✓ |
✓ |
|
|
PostgreSQL |
✓ |
✓ |
✓ |
✓ |
MySQL |
✓ |
✓ |
✓ |
✓ |
Google Analytics |
✓ |
✓ |
|
|
Snowflake |
✓ |
✓ |
|
|
Druid |
✓ |
✓ |
✓ |
✓ |
H2 |
✓ |
|
|
|
Hive |
|
✓ |
✓ |
|
Impala |
|
✓ |
✓ |
|
Spark SQL |
✓ |
|
✓ |
|
SQlite |
✓ |
✓ |
✓ |
|
Microsoft SQL Server |
✓ |
✓ |
✓ |
|
CreateDB |
✓ |
|
|
|
Oracle |
✓ |
✓ |
✓ |
|
Vertica |
✓ |
✓ |
✓ |
|
Teradata |
|
|
✓ |
|
Presto |
✓ |
✓ |
|
|
Note a liderança do Redash nesse quesito.
Customização
A customização das ferramentas de BI aqui citadas não é uma tarefa difícil. Com o conhecimento da linguagem de programação utilizada em seu desenvolvimento e algumas canecas de café é possível analisar o seu código fonte e realizar os ajustes desejados.
Em relação as linguagens, o Metabase é desenvolvido em Clojure. Redash e Superset são baseados em Python, e o Imply segue a linha de desenvolvimento em Java.
Atualizações
Um ponto importante na escolha da ferramenta de BI é análise da periodicidade de lançamento de novas versões, correções de bugs e futuras implementações (roadmaps).
Metabase: Mantém todo o seu código disponível no Github, onde foi possível analisar commits recentes e identificar que seu desenvolvimento está em pleno vapor. Atualmente, possui uma comunidade com 190 commiters (contribuidores), em seu repositório estão registrados 2.008 issues (problemas) e 96 pull requests (requisições de implementações ou correções). No momento da escrita desse artigo a versão disponibilizada do Metabase era a 0.35.5.1. Analisando suas últimas releases https://github.com/metabase/metabase/releases, ao menos uma nova release é lançada por mês, o que é bom, pensando nas melhorias e correções disponibilizadas frequentemente, porém, até o momento não temos uma versão estável.
Redash: Mantém todo o seu código disponível no Github, onde é possível analisar commits recentes. Atualmente, possui uma comunidade com 272 commiters, 305 issues e 111 pull requests. No momento da escrita desse artigo a versão atual era a 8.0.0. Analisando suas últimas releases https://github.com/getredash/redash/releases é possível identificar saltos de meses entre uma release e outra, mas já apresenta uma versão bem major estável.
Superset: Também mantém todo o seu código disponível no Github. Atualmente possui uma comunidade com 420 commiters, 183 issues e 60 pull requests. Neste momento a versão disponibilizada é a 0.34.0 e analisando suas últimas releases https://github.com/getredash/redash/releases é possível identificar saltos de meses entre uma release e outra.
Imply: O Imply possui uma conta no Github com diversos repositórios públicos, como por exemplo o do Druid, porém o Pivot, produto responsável pela interface web utilizada para manipular os dados coletados do Druid, não está disponível.
Suporte a autenticação
Conforme tabela abaixo, o Apache Superset possui as opções mais ricas em termos de autenticação.
Embora Metabase e Redash apresentem suporte para o Google OAuth e SSO (Single Sign Only), com o Superset é possível integrar com seus back-ends de autenticação interna ou LDAP.
Vale ressaltar que apenas Redash não possibilita autenticação no tradicional LDAP.
Ferramenta |
Google OAuth |
LDAP |
OpenID |
Database |
SAML |
Metabase |
✓ |
✓ |
|
|
|
Redash |
✓ |
|
|
|
✓ |
Superset |
✓ |
✓ |
✓ |
✓ |
|
Imply |
|
✓ |
✓ |
|
|
Controle de acesso e permissões
Ao usar Metabase, Redash, Superset e Imply em nível organizacional, é importante compreender e definir controles de acesso, como restrição à dados e painéis de acordo com os requisitos envolvidos.
O Metabase e o Redash seguem uma abordagem baseada em grupo para fornecer controle de acesso e definir permissões. Pode-se ser membro de vários grupos. O nível de acesso aos bancos de dados e SQL é determinado pela associação ao grupo.
Por exemplo, quando você faz parte de um grupo, você tem acesso a todos os bancos de dados do grupo. Suas permissões são tabuladas de acordo com o nível de acesso definido na seção de permissões do painel de administração.
O Superset e o Imply seguem uma linha diferente para controle de acesso, sendo possível atrelar papéis a permissões.
Considerações
Metabase: Para você que busca algo simples, mais barato e fácil de usar, a ferramenta mais indicada é o Metabase, pois ele pode ser instalado na sua própria máquina ou em seu próprio servidor. Também oferece suporte para ser implantado via Heroku.
Redash: Para quem procura uma ferramenta que fornece conectividade para diversas bases de dados, o Redash é o ideal, são mais de 25 fontes de dados suportadas. Ele também conta com um sistema de envios de alertas, em que você pode configurar e ser notificado sobre determinados eventos nos seus dados. O Redash possui duas versões: Community e Enterprise, sendo que na versão Community você terá que gastar com um bom servidor para suportar a ferramenta. Então cabe avaliar qual versão seria mais interessante para a sua necessidade.
Superset: O Superset foi criado inicialmente pelo AirBnB e depois doado para Apache. Possui um rico conjunto de visualizações para analisar seus dados, bem como uma maneira flexível de estender os recursos (basta ter conhecimentos em Python que você mesmo poder incluir novas funcionalidades), além de possuir 47 formas diferentes de tipos de visualizações (gráficos). O lado negativo é que ele apresenta ser mais complexo quando se trata de instalação e utilização comparado a outras ferramentas.
Imply: O Imply é uma poderosa plataforma de análise de eventos criada para apresentar melhor os dados sobre o Apache Druid, com uma interface simples e fácil de utilizar. É uma ótima opção para usuários iniciantes e com uma excelente documentação on-line.
Referências: