Superset VS Metabase : quel outil BI low cost ?

31/5/2022
Thomas Blondel
Florian Melki
Superset VS Metabase : quel outil BI low cost ?
Julien Fournier - Tech Lead & Coordinateur d'agence

Salut à toi ! Je te propose de t'imaginer dans la situation suivante : tu as décidé au petit-déjeuner de driver ton projet par la data afin de prendre (enfin !) des décisions éclairées. Félicitations ! Tu as de la data qui déborde de tes bases de données et de tes différentes sources d'acquisition, tu vas stocker tout cela dans un entrepôt de données, et ensuite tu vas définir tes KPIs, construire des tableaux de bord, et fouiller pour comprendre comment tes utilisateurs fonctionnent. En tant que data analyst, je ne peux que t'y encourager : c'est ce que je fais tous les jours et j'adore ça !

Par contre... tandis que tu touillais ton café en regardant un ciel ensoleillé, tu t'es demandé quel outil tu pourrais utiliser pour atteindre tes objectifs. Bien sûr, tu as envisagé les poids lourds du marché, Tableau, PowerBI ou encore Qlik, mais tu as le sentiment que ce serait prendre une usine nucléaire pour alimenter ton vélo électrique. Dit autrement, tu n'as pas forcément les besoins ni les moyens de prendre la rolls royce du marché. Tu préfèrerais un outil dont le coût est modéré, qui dispose néanmoins de capacités solides, tout en étant conscient qu'il ne pourra pas tout faire.

Ça tombe bien, j'ai rencontré cette même problématique. En posant la question sur mes réseaux sociaux, deux outils sont sortis du lot : Metabase et Superset. J'ai donc testé les deux et je vais partager avec toi mes résultats. Sympa non ? En plus, je m'efforcer de ne pas te noyer dans trop de détails techniques afin que mes propos restent digestes. Aller, on se lance.

Superset et Metabase : c'est quoi déjà (en gros) ?

L'un comme l'autre sont des outils d'exploration et visualisation de données. Leur fonctionnement dans les grandes lignes est similaire :

  • tu te connectes à ta ou tes sources de données, ce qui te permet d'avoir accès à toutes tes tables
  • tu requêtes tes tables
  • tu affiches tes données, soit de manière brute à la manière d'un spreadsheet, soit dans des graphiques
  • tu joues avec tes filtres afin de pouvoir explorer plus en finesse tes données et éventuellement mettre en lumière tes insights
  • tu assembles tes visualisations dans des tableaux de bord que tu vas consulter de temps en temps (généralement à cette étape tu te rates un peu parce que faire un tableau de bord, c'est tout un art, mais ce sera pour un autre article, ou sinon contacte-moi, on en parle)

L'élément différenciant est que ces deux outils peuvent être utilisés en version on-premises, c'est-à-dire que tu peux les installer assez facilement chez toi, sur ton ordinateur ou, préférentiellement, sur un serveur qui te coûtera dans les 50€ par mois. Évidemment, par rapport à une version hébergée dans le cloud, tu devras faire l'infogérance toi-même, sécuriser l'accès au serveur, dimensionner toi-même le serveur, mais comme je te l'ai dit plus haut : tu ne vises pas la rolls royce.

Je vais maintenant aborder les éléments qui différencient ces deux produits. Attention, je ne te dirai pas quel produit choisir mais simplement mes préférences.

UI / UX

On commence par le plus immédiat : à quoi ça ressemble, et comment ça se prend en main.

Je trouve que Superset fait davantage "produit tech" là où Metabase semble pensé utilisateur. Pourquoi ?

Une fois loggé sur Superset, l'interface graphique est plutôt austère. Un menu nous permet d'accéder aux fonctionnalités classiques : créer une connexion, un jeu de données, un graphique ou un tableau de bord. La page d'accueil permet également d'accéder à ses derniers graphiques ou ses tableaux de bord favoris. La palette de couleurs est quasi-intégralement du gris avec quelques touches de vert. Les champs sont assez carrés. Classique, peut-être trop. Ça ne cherche pas à réinventer la roue.

De son côté, Metabase joue sur un bleu pastel et des formes arrondies plus agréables à l'oeil. Mais surtout, Metabase parle à son utilisateur, le guide avec de vraies phrases. Il t'enjoint à "parcourir tes données", "apprendre de tes données", te demande "à quelle question tu veux répondre". Et comme dirait l'artiste, c'est peut-être un détail pour vous, mais pour moi ça veut dire beaucoup. Ça veut dire que ça va guider ma pensée : ok, je dois répondre à une question, mais quelle est cette question ? Qu'est-ce que je cherche, en fait ? Et ça, c'est malin.

Pourquoi je te raconte tout cela ? Un produit qui fonctionne, c'est bien ; un produit qui est utilisable et utilisé, c'est mieux. Toujours garder en tête qu'aujourd'hui, c'est toi qui utilises ton outil, mais demain ce seront peut-être tes équipes marketing. Et s'ils n'adhèrent pas au produit, alors ils resteront sur leur spreadsheets habituels. Je dis ça, je dis rien 😉

Interface de Metabase - des couleurs douces et des phrases pour guider
Interface de Superset - on fait dans l'austère

Les sources de données

Focus rapide : l'un comme l'autre, Metabase et Superset propose plusieurs sources de données. Les plus communes s'y retrouvent, qu'elles soient MySQL, Postgresql, Amazon Redshift, MongoDB ou encore BigQuery. C'est cependant incontestable : Superset est plus fourni en connecteurs, là où Metabase se contente de faire dans l'efficace en se restreignant aux bases les plus utilisées. Fais évidemment en fonction de tes besoins, mais garde en tête que "le plus" n'est pas forcément "le mieux".

L'accès aux données

Mon test s'est effectué uniquement sur Postgresql, donc je ne pourrai pas m'exprimer sur les bases dénormalisées type noSql.

Superset te propose deux fonctionnalités : soit charger le contenu entier d'une table, soit effectuer la sélection via une requête SQL qui vous permettra toutes les jointures et subtilités dudit langage. On est dans du classique, mais il convient d'admettre que la possibilité de charger une table sans écrire de SQL est utile pour qui a des besoins simples et / ou n'est pas technique.

De son côté, Metabase te propose également deux fonctionnalités : comme son concurrent, écrire une requête SQL ; ou bien utiliser une interface graphique pour charger des tables, les lier avec les jointures les plus utilisées (left outer, right outer, inner et full outer), filter sur des valeurs de champs (équivalent d'un WHERE), calculer des métriques (équivalent des window functions SUM, MIN, MAX, etc), et agréger (équivalent d'un GROUP BY). Pratique car cela peut rendre accessible à tes équipes des notions qui peuvent se traduire par du code assez technique. En somme, Metabase continue de se démarquer par sa volonté d'accessibilité, que je ne peux qu'apprécier.

Une fois les données chargées, on peut enfin passer à la partie la plus intéressante : visualiser ses données.

Les visualisations de données

Superset met à ta disposition une bonne partie de tout ce qui se fait, des visualisations classiques telles que time-series chart, heatmap, bubble chart, histogram, radar chart, pie chart (si si !) et cartographies, à d'autres plus pointues telles que sankey diagram, chord diagram ou sunburst, voire certaines moins utiles, voire à déconseiller, je pense à cette horrible jauge de voiture proche de l'anti-pattern en dataviz. Une bonne idée cependant : ces visualisations sont regroupées par catégorie (corrélation, distribution, etc) ce qui permet une approche par la fonction, même si on peut reprocher que certaines ne soient pas aussi claires que d'autres (je pense à KPI ou "table"). Pour résumer, la mise à disposition des visualisations est bien, mais perfectible sans pour autant que cela soit grave.

Une fois le type de visualisation choisi, tu choisis ton jeu de données, tes champs deviennent accessibles, et par un jeu de drag & drop tu choisis ce que tu veux afficher. Peu intuitif : tu affiches des dimensions ou des metrics, et tu choisis ton time grain pour ta time column. Cela fonctionne si tu es un habitué de la visualisation, moins si tu es novice. Pour aller plus loin : certaines visualisations sont peu immédiates en terme de paramétrage qu'elles nécessitent de chercher un tuto pour se faire accompagner. Je pense ainsi au sparkline (la petite courbe pour visualiser succinctement l'évolution d'une tendance) que je n'ai jamais réussi à faire fonctionner par moi-même... Un dernier point négatif : je suis tombé sur une fonctionnalité de customisation de tooltip via code javascript qui était visible mais inactive. Fort dommage puisque je voulais l'utiliser. Cela donne une petite sensation de frustration et de "pas fini / en chantier" qui noircit encore un peu le tableau. Juste un tout petit peu.

Par contre une fonctionnalité différenciante est la possibilité d'ajouter des calculs de metrics à un jeu de données existant : en gros, ajouter des window functions ou faire des calculs customs via un petit bout de SQL. Technique mais pratique. Pourquoi pratique ? Parce qu'ainsi tu peux créer un jeu de données simple, le partager, puis le réutiliser pour différents use cases via le calcul de métriques dans différentes visualisations.

On fait son marché parmi les graphiques proposés par Superset

Ok, parlons maintenant de ce que propose Metabase. Le produit joue encore la carte de l'accessibilité. Point trop de visualisations ni de noms compliqués : ici tu choisis d'afficher des lignes ou des nuages de point ou encore des cartes. Ensuite tu sélectionnes quel champ tu mets en abscisse et en ordonnée, quelques options de look & feel, par exemple la possibilité d'adoucir la pente d'une courbe, des couleurs, et on y est. Simple. Basique. D'aucuns diront trop ? Contrairement à Superset, Metabase affiche uniquement ce qui sort de la requête. Tu veux des métriques plus précises ? Il faut alors que tu les calcules dans ta requête, mais ça tombe bien, comme je le disais plus haut, l'éditeur graphique est là pour t'assister. On perd en réutilisabilité ; on gagne en temps de production unitaire.

Pour l'un comme pour l'autre, la finalité est de construire des tableaux de bord, c'est-à-dire mettre les uns à côté des autres des graphiques qui seront autant d'indicateurs pour suivre ton activité. Pour cela, chacun propose une manière de faire similaire qui consiste à simplement ajouter des graphiques créés auparavant à un tableau de bord (nouveau ou préexistant). Il est également possible d'appliquer des filtres sur l'ensemble des graphiques chargés sur le tableau de bord créé. Là encore, l'ergonomie de Metabase fait mouche et me semble plus intuitive pour l'ajout de filtres personnalisés sur des champs choisis de chaque graphique.

Metabase : moins de choix pour davantage d'accessibilité

Et mon avis dans tout ça ?

Par souci de transparence, sois conscient que je n'ai pas pu te décrire dans cet article la liste exhaustive de tout ce que j'ai vu... et que je n'ai pas vu. Mais il me semblait important de t'en parler parce que la question du premier logiciel de visualisation de données est à se poser.

Et mon avis ? Pour résumer en quelques mots, Superset est plus puissant mais fait très "technique", là où Metabase s'impose par son ergonomie choisie. Cependant, pour moi, un produit se doit avant tout d'être utilisable. C'est pourquoi, si tu débutes, je te recommandes Metabase. Il te permettra de mettre le pied à l'étrier à peu de frais. Tu en découvriras rapidement les limites mais ce n'est pas grave : à ce moment, tu passeras à la version supérieure, un Tableau Software ou autre. En revanche, si tu as déjà commencé à investir sur l'un des deux, ne change pas car les différences, selon moi, ne sont pas suffisamment grandes pour passer de l'un à l'autre. Continue, creuse ton sujet, et recherche ensuite l'outil qui te permettra d'aller plus loin.

C'était Florian Melki, je suis Data Analyst chez Dernier Cri, merci de m'avoir lu. Si tu as une question, une remarque, ou si tu cherches une agence pour t'accompagner sur tes sujets data, n'hésite pas à me joindre sur Linkedin ou sur Twitter (@FloDataviz), et on fait connaissance en visio ou un midi sur Nantes !

Cadeau : un court récapitulatif pour aller droit au but 👇

Florian Melki

+ d’articles

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.