Apache Superset - Plateforme d’exploration et de visualisation de données
(superset.apache.org)- Apache Superset est une plateforme d’analyse open source qui réunit exploration et visualisation de données, permettant à des utilisateurs de différents niveaux de manipuler les données sous forme de graphiques et de tableaux de bord
- Elle propose à la fois un éditeur de visualisations no-code et un IDE SQL, afin que les utilisateurs métier et les utilisateurs SQL puissent explorer les données à leur manière
- Elle se connecte aux bases de données SQL et peut aussi exploiter des bases de données et moteurs cloud native à l’échelle du pétaoctet
- Elle privilégie une architecture légère et extensible fonctionnant au-dessus de l’infrastructure de données existante, sans nécessiter de couche d’ingestion séparée
- Avec plus de 40 visualisations, une extensibilité par plugins, la mise en cache, les templates Jinja, les filtres de tableau de bord et une couche sémantique, elle prend en charge des workflows d’analyse en libre-service
Plateforme d’exploration et de visualisation de données
- Apache Superset™ est une plateforme open source d’exploration et de visualisation de données
- Elle met en avant une expérience rapide, légère et intuitive, et prend en charge une grande variété de visualisations, du simple graphique linéaire aux graphiques géospatiaux détaillés
- Les utilisateurs peuvent explorer les données via un éditeur de visualisations no-code ou un IDE SQL
- Elle peut se connecter aux bases de données SQL, ainsi qu’aux bases de données modernes cloud native et aux moteurs à l’échelle du pétaoctet
- Elle dispose d’une architecture légère et hautement extensible qui s’appuie sur l’infrastructure de données existante, sans couche d’ingestion supplémentaire
- Elle fournit plus de 40 types de visualisations préinstallées et permet aussi de créer des visualisations personnalisées grâce à une architecture de plugins
Documentation par rôle et communauté
- User Docs : documentation destinée aux analystes et aux utilisateurs métier, couvrant l’exploration des données, la création de graphiques, la création de tableaux de bord et la connexion aux bases de données
- Administrator Guide : documentation destinée aux équipes chargées de l’installation et de l’exploitation de Superset, couvrant l’installation, la configuration, la sécurité et les pilotes de bases de données
- Developer Guide : documentation destinée aux ingénieurs qui contribuent à Superset ou développent des fonctionnalités basées dessus, couvrant les API REST, les extensions et le workflow de contribution
- Community : fournit des ressources communautaires comme Slack, GitHub, les listes de diffusion et les meetups à venir
Fonctionnalités d’analyse en libre-service
- Superset prend en charge, via les tableaux de bord, Chart Builder, SQL Lab et Datasets, un workflow permettant d’explorer les données dans des tableaux de bord interactifs et d’en tirer des insights
-
Création de visualisations et de tableaux de bord
- Fournit plus de 40 visualisations préinstallées
- Prend en charge à la fois le glisser-déposer et les requêtes SQL
- Fournit de la mise en cache des données pour réduire les temps de chargement des graphiques et des tableaux de bord
- Permet de créer des tableaux de bord interactifs avec des templates Jinja et des filtres de tableau de bord
- Permet d’adapter les graphiques et tableaux de bord à l’identité visuelle de la marque grâce à des templates CSS
-
Extensions d’analyse
- Fournit une couche sémantique pour les transformations de données SQL
- Prend en charge des analyses plus approfondies avec cross-filter, drill-to-detail et drill-by
- Permet d’utiliser des virtual datasets pour l’exploration temporaire de données
- Permet d’accéder à de nouvelles fonctionnalités via des feature flags
Organisations utilisatrices
- Superset indique être utilisé par des milliers d’entreprises pour explorer et visualiser leurs données
- Des liens vers Xnet Mobile, UserGuiding, Preset, PlaidCloud, VLMedia et Cirrus Assessment sont affichés comme exemples d’organisations utilisatrices
1 commentaires
Avis de Hacker News
J’ai utilisé Superset avec beaucoup de satisfaction et, après avoir remplacé Tableau, je n’ai aucune envie de revenir en arrière
Il m’a fallu un peu de temps pour comprendre comment l’intégrer dans une app avec le Superset Embedded SDK. Ce SDK permet d’insérer des tableaux de bord Superset dans sa propre app en utilisant l’authentification de l’app, via l’insertion dans l’app hôte d’une iframe contenant une page Superset
https://github.com/apache/superset/tree/master/superset-embe...
Superset s’appuie sur ECharts, une bibliothèque de graphiques de grande qualité et bien maintenue
https://echarts.apache.org/examples/en/#chart-type-linesG
La roadmap communautaire est également publique
https://github.com/apache/superset/projects?query=is%3Aopen
Grand respect à Preset.io et à l’équipe pour leur contribution au projet et pour le maintenir en bon état
https://preset.io/blog/
Le code source de Superset est facile à lire et à comprendre, ce qui permet aussi d’implémenter des techniques avancées de mise en cache pour réduire la charge des graphiques. Aucun outil de BI n’est parfait, mais après l’avoir suivi pendant plusieurs années, j’ai acquis la conviction que ce projet continuera à fonctionner comme prévu, et il me semble qu’un jour certains de ses packages pourront être réutilisés pour diverses visualisations et expérimentations autour des données
Pour la visualisation, j’ai tendance à commencer par ECharts avec un simple wrapper React, puis à déployer Superset sur un sous-domaine pour les power users, afin de voir quelle approche convient le mieux. Si l’apparence reste cohérente, l’expérience utilisateur est plutôt bonne
https://evidence.dev
Ancienne discussion HN : https://news.ycombinator.com/item?id=35645464 (97 commentaires)
J’ai essayé Superset il y a quelques années, et cela a peut-être changé depuis, mais intuitif est vraiment le dernier mot que j’utiliserais pour le décrire
Des choses que j’aurais comprises en quelques minutes dans d’autres outils de BI me prenaient littéralement des heures à trouver dans Superset. Le fait qu’ils aient renommé en cours de route des concepts essentiels, rendant la moitié de la documentation en ligne incohérente, n’a pas aidé. À l’époque, mes collègues qui l’avaient essayé avaient ressenti à peu près la même chose
Les utilisateurs métier l’ont apprécié, moi aussi, et le gérer avec un backend Postgres au lieu de la base h2 interne était également simple
Il permet de lancer une base DuckDB comme data warehouse intégré pour charger les données, et d’importer automatiquement des données depuis Postgres, Stripe, HubSpot, Zendesk, etc. grâce à plus de 500 connecteurs, sans ETL séparé
Dans la couche sémantique, on définit dimensions, mesures et jointures au même endroit, avec aussi des modèles préconstruits pour chaque source prise en charge. Par exemple, le modèle Stripe inclut déjà des mesures comme le MRR et le taux de churn
On crée la table de données voulue avec une approche BI simple, puis on génère des visualisations à partir de cette table. Pour toute question, il est possible de contacter mike@definite.app
La documentation est, pour le dire gentiment, assez maigre
À la place, il était rempli de dizaines d’erreurs d’exécution Python et d’innombrables défauts. Aujourd’hui, Metabase est ce qui se rapproche le plus de la bonne réponse
Les outils de BI complets comme Superset ou Metabase sont excellents pour les cas d’usage auxquels ils sont destinés
Mais si l’usage principal consiste à produire de temps en temps des rapports semi-interactifs pour des utilisateurs finaux non techniques, et que des graphiques et tableaux standards suffisent la plupart du temps, cela peut être excessif. C’est d’autant plus vrai si l’on est à l’aise avec SQL et que l’on a accès aux sources de données brutes
Dans ce genre de cas, SQLPage et Evidence m’ont été très utiles. Ils permettent d’écrire rapidement du SQL et de le transformer en une interface web propre et professionnelle, facile à livrer aux utilisateurs finaux. Evidence est un site généré statiquement, tandis que SQLPage est une application web connectée à une base de données en temps réel
SQLPage : https://sql.ophir.dev/
Evidence : https://evidence.dev
J’aime Superset
Je l’ai mis en production dans deux entreprises depuis 2017, et mon poste actuel est dans une grande entreprise
Pour moi, c’est ce qui se fait de mieux comme système générique de tableaux de bord basés sur des bases de données. Je n’ai pas l’intention de payer pour Tableau ou Power BI
C’est pareil pour Airflow
En utilisant l’instance Superset de Wikipédia, on peut interroger les bases de données internes de Wikipédia
https://superset.wmcloud.org
https://phabricator.wikimedia.org/T169452
Je m’en étais servi à l’époque pour créer des statistiques personnalisées
https://github.com/altilunium/wikiidmon
Quelques articles liés. Je me demande s’il y en a d’autres
Open source Business intelligence platform made with Python - https://news.ycombinator.com/item?id=29368664 - novembre 2021 (49 commentaires)
Apache Superset 1.1 - https://news.ycombinator.com/item?id=27439939 - juin 2021 (28 commentaires)
The Apache Software Foundation Announces Apache Superset as a Top-Level Project - https://news.ycombinator.com/item?id=25905277 - janvier 2021 (1 commentaire)
Apache Superset is an enterprise-ready business intelligence web application - https://news.ycombinator.com/item?id=21133931 - octobre 2019 (7 commentaires)
Superset est puissant, mais je me demande pourquoi ils ne corrigent pas les petits irritants. Par exemple, le pixel du spinner est décalé, on ne peut pas copier la valeur d’une cellule de tableau, ou les nombres dans les tableaux n’utilisent pas de police à chasse fixe. Il y a des centaines de petites frustrations de ce genre dans le produit
Il faut constamment trouver un équilibre entre développer les nouvelles fonctionnalités demandées par les gens et corriger ces problèmes d’apparence qui reviennent sans cesse
Je me demande s’il y a des gens qui ont utilisé à la fois Superset et Metabase. J’ai utilisé Metabase sur quelques projets et c’était plutôt bien. Superset a aussi l’air plus puissant
Je me demande si ça vaut le coup aussi pour de la BI sur de petits jeux de données
Nous avons choisi Metabase parce qu’il proposait les jointures de tables. Quand je l’utilisais, Superset n’avait pas de jointures, et je ne sais pas si cela a été ajouté depuis. Visuellement, Metabase paraît aussi un peu plus soigné
Malgré tout, personnellement, je préfère largement Superset. Pour rendre Metabase utilisable, il fallait désactiver beaucoup de fonctionnalités, et des choses comme le fait d’afficher “the_table” sous la forme “The Table”, ou l’opacité entre les modèles et les « questions », m’agaçaient constamment. Le fait qu’il veuille créer une nouvelle question chaque fois qu’on essaie d’en modifier une était aussi pénible
C’était particulièrement problématique lorsqu’il fallait changer la source de données de nombreuses questions : il n’y avait pas de façon propre de le faire dans Metabase sans qu’il crée une nouvelle question
De plus, avec Metabase, la sérialisation n’est possible que si l’on paie tout en l’hébergeant soi-même. Je ne vois pas exactement ce qu’on paie quand on l’auto-héberge, et c’est assez agaçant
https://www.metabase.com/docs/latest/installation-and-operat...
Cela dit, les jointures de tables sont possibles. Parfois, rien que pour ça, Metabase vaut la peine d’être supporté
Superset est le meilleur si l’on ne considère que la visualisation de données, mais avec un schéma en étoile existant, je l’ai trouvé presque inutile comme outil de BI en libre-service pour des utilisateurs métier. Cette issue sur la manière de gérer les jointures dans Superset, y compris le bazar causé par stalebot, résume bien les difficultés de Superset BI
https://github.com/apache/superset/issues/8645
Metabase est assez excellent, et c’est clairement un bon choix pour une startup qui veut mettre en place rapidement une BI à faible coût. Il reste très centré sur les tables, mais on sent qu’il a été conçu pour la BI plutôt que pour de simples visualisations
Lightdash a de gros défauts, comme YAML, les pivots côté frontend ou l’absence d’agrégations symétriques, mais il est clairement influencé par Looker et il est facile de proposer aux utilisateurs métier des groupes de tables directement exploitables. J’aimais Looker avant son rachat par Google ; nos utilisateurs métier ne connaissaient pas forcément les termes schéma en étoile ou en flocon, mais ils étaient habitués à ces structures, et il était facile de poser Lightdash par-dessus notre data warehouse existant
Dans mon entreprise, nous utilisons beaucoup Metabase. Mais le point où tous ces outils me semblent faibles, c’est la façon dont ils permettent d’organiser des centaines de tableaux de bord et de questions
J’aimerais qu’il y ait quelque chose comme un wiki intégré, pour pouvoir mieux structurer la navigation. Je me demande s’il existe une bonne méthode
Une méthode utile consiste à connecter Metabase à sa propre base de données, puis à écrire des requêtes sur les requêtes
select *from report_cardwhere dataset_query ilike '%' || {{query}} || '%'On peut aussi joindre des métadonnées comme l’auteur ou l’heure de dernière exécution
Nous faisons vraiment des efforts pour garder l’arborescence des Collections propre et cohérente, mais cela reste difficile
Une autre approche pourrait consister à utiliser un LLM pour résumer, taguer et regrouper les requêtes afin de les rendre plus faciles à trouver
Je me demande si Superset est aussi un bon outil quand on fait de l’analyse de données seul
Par exemple, j’ai quelques bases de données sqlite, et je veux simplement développer des requêtes et des graphiques. J’ai regardé Tableau, Power BI et Superset, mais ils m’ont tous semblé assez lourds pour un utilisateur unique, et la configuration locale ne paraissait pas très simple non plus
J’aimerais des recommandations de bons logiciels pour utilisateur unique, ou des façons d’exécuter plus confortablement ce genre d’outils lourds
Je vois plutôt ces produits comme des outils de visualisation de données et de reporting destinés à présenter joliment aux utilisateurs des jeux de données déjà préparés. Ils sont moins adaptés à une analyse sérieuse
Je ne connais pas bien Superset ni Tableau, mais Power BI est déployé dans toute notre organisation, donc je le connais. Les statistiques que l’on peut faire avec Power BI sont assez basiques. Au-delà de résumés comme les décomptes, moyennes, minimums et maximums, ce n’est pas si simple
Pour l’analyse de données, j’utilise SAS ou R. Ces logiciels permettent de faire de la régression multivariée, de la prévision de séries temporelles, de l’analyse en composantes principales, du clustering, et disposent aussi de fonctions de visualisation
Les deux sont un peu old school. Je les utilise depuis le début des années 2000, et l’approche actuelle semble être Python. Les profils data science récemment arrivés dans notre organisation utilisent presque tous Python, en particulier des bibliothèques comme Pandas et Seaborn (https://seaborn.pydata.org/)
Les power users de Power BI dans notre organisation sont surtout côté finance ou RH, et l’utilisent beaucoup pour explorer en détail les chiffres de coûts, ou présenter de manière interactive les KPI et indicateurs clés à la direction
On peut l’utiliser comme application monoposte, et tant qu’on ne l’intègre pas dans une application que l’on construit, c’est bien ainsi qu’il faut l’utiliser