Construire un dashboard des ventes d'une boutique en ligne dans Superset
Découvrez comment construire un dashboard Superset des ventes d'une boutique en ligne : chiffres clés, chiffre d'affaires, produits et fidélité des clients
Objectif
Ce guide vous montre comment transformer les lignes de commande nettoyées d'une boutique en ligne en dashboard Superset : chiffres clés, chiffre d'affaires dans le temps, produits les plus vendus, ventes par pays et fidélité des clients.
C'est la deuxième partie de « Préparer les commandes d'une boutique en ligne pour un dashboard des ventes ». Superset interroge le Lakehouse via Trino : tout le SQL de cette page est donc en dialecte Trino.
Prérequis
Pour suivre ce guide, vous devez :
- Disposer de la table
online_retail_ii_cleandans le datasetdefault_datasetde votre projet, produite par l'action Custom de nettoyage de l'étape 5 du guide « Préparer les commandes d'une boutique en ligne pour un dashboard des ventes ». - Disposer d'une application Apache Superset connectée à votre projet. Si vous ne l'avez pas encore déployée, suivez le guide « Déployer Apache Superset sur la Data Platform OVHcloud ».
- Disposer du dataset Superset
online_retail_ii_clean, créé à l'étape 6 du guide « Préparer les commandes d'une boutique en ligne pour un dashboard des ventes ».
Ce que vous allez construire
À la fin de cette partie, votre dashboard ressemble à ceci :
Chaque graphique suit le même parcours dans Superset : Charts > + Chart, choisissez le dataset et le type de graphique, renseignez les paramètres, cliquez sur Create chart, puis sur Save avec le nom anglais du graphique, indiqué entre parenthèses dans son titre : c'est ce nom qui s'affiche sur le dashboard. Laissez Add to dashboard vide : vous créez le dashboard et y ajoutez les graphiques à l'étape 8.
Remarque : les montants sont en livres sterling. Pour chaque montant, dans l'onglet Customize, réglez Currency format sur GBP avec la position Prefix, pour que les valeurs s'affichent £18.9M et non 18.9M £.
En pratique
Étape 1 : créer les datasets clients dans SQL Lab
Les graphiques clients ont besoin d'une ligne par client ou par retour d'un client, ce qu'un graphique ne peut pas calculer à partir des lignes de commande. Vous préparez ces lignes une seule fois, avec deux requêtes enregistrées comme datasets virtuels.
Créer le dataset virtuel customer_summary
- Ouvrez SQL > SQL Lab.
- Sélectionnez votre base de données et le schéma
default_dataset. - Collez la requête ci-dessous et cliquez sur Run.
- Dans la barre d'outils de la requête, cliquez sur l'icône Save or Overwrite Dataset et enregistrez le dataset sous le nom
customer_summary.
Le résultat compte une ligne par client identifié : 5 852 lignes.
Créer le dataset virtuel purchase_intervals
Répétez ces étapes avec la requête ci-dessous et enregistrez le dataset sous le nom purchase_intervals.
Le résultat compte une ligne par retour d'un client : 27 026 lignes.
Remarque : dans SQL Lab, sélectionnez d'abord le schéma. Sans lui, Trino renvoie Schema must be specified when session schema is not set. Vous pouvez aussi préfixer la table, comme dans les requêtes ci-dessus : default_dataset.online_retail_ii_clean.
Étape 2 : ajouter des colonnes calculées à online_retail_ii_clean
Ouvrez Datasets, modifiez online_retail_ii_clean, puis allez dans l'onglet Calculated columns. Pour chaque colonne ci-dessous, cliquez sur Add item, puis renseignez son nom et son expression SQL. Commencez par revenue, la plus simple. Cliquez sur Save une fois les deux colonnes ajoutées.
Ajouter revenue
revenue est le montant de chaque ligne de commande. Une annulation a une quantité négative, donc un montant négatif : une simple somme donne le chiffre d'affaires net. Tous les montants du dashboard reposent sur cette colonne.
Ajouter country_code
country_code convertit le nom du pays en code ISO 3166-1 alpha-3, pour la carte du monde :
Étape 3 : construire les chiffres clés
Les quatre tuiles utilisent le dataset online_retail_ii_clean et le type de graphique Big Number.
Chiffre d'affaires net (Net revenue)
Valeur attendue : £18.9M.
Commandes (Orders)
Valeur attendue : 39.5k.
Panier moyen (Average order value)
Valeur attendue : £497.08.
N'utilisez pas AVG(revenue) pour le panier moyen. Cette métrique renvoie le montant moyen d'une ligne de commande, environ 18,53 £, et non celui d'une commande.
Clients (Customers)
Valeur attendue : 5.88k.
Étape 4 : construire l'onglet Time
Chiffre d'affaires net par mois (Net revenue by month)
Saisonnalité par année (Seasonality by year)
Vous obtenez une aire par année. Le numéro du mois en tête de chaque libellé classe les mois dans l'ordre, de janvier à décembre.
Étape 5 : construire l'onglet Products
Les deux graphiques utilisent le dataset online_retail_ii_clean et le type de graphique Table. L'action de nettoyage attribue une seule description à chaque code produit : un produit n'apparaît donc jamais deux fois.
Top 10 des produits par chiffre d'affaires (Top 10 products by revenue)
Dans l'onglet Customize, sous Conditional formatting, ajoutez une règle :
Top 10 des produits par unités vendues (Top 10 products by units sold)
Appliquez la même mise en forme conditionnelle que pour le tableau précédent, sur la colonne quantity. Placés côte à côte, les deux tableaux montrent que les produits vendus en plus grand volume ne sont pas ceux qui rapportent le plus.
Étape 6 : construire l'onglet Geography
Royaume-Uni face au reste du monde (United Kingdom vs rest of world)
Top 10 des pays hors Royaume-Uni (Top 10 countries outside the United Kingdom)
Chiffre d'affaires par pays (Revenue by country)
Étape 7 : construire l'onglet Customers
Ces graphiques couvrent les clients identifiés et les factures de vente, de décembre 2009 à décembre 2011. La récence se mesure à partir du 9 décembre 2011, le dernier jour des données. Un client revient quand il achète un autre jour : plusieurs factures le même jour comptent pour un seul achat.
Taux de clients récurrents (Repeat customer rate)
Valeur attendue : 71.4%.
Nombre médian d'achats par client (Median purchases per customer)
Valeur attendue : 3.
Nombre médian de jours entre deux achats (Median days between purchases)
Valeur attendue : 32.
Clients par nombre d'achats (Customers by number of purchases)
Si les barres sont espacées irrégulièrement, activez Force categorical sur l'axe X.
Clients par récence (Customers by recency)
Les quatre barres totalisent 5 852 clients. Le numéro en tête de chaque segment les classe dans l'ordre, des clients actifs aux clients perdus.
Jours entre deux achats (Days between purchases)
Le filtre écarte les rares retours après plus d'un an, qui étireraient l'axe et tasseraient toutes les autres barres à gauche.
Étape 8 : créer et assembler le dashboard
- Ouvrez Dashboards et cliquez sur + Dashboard. Le nouveau dashboard s'ouvre en mode édition.
- Cliquez sur son titre et renommez-le
Online store sales. - Ajoutez un en-tête
Key figures, faites glisser les 4 tuiles des chiffres clés depuis le panneau de droite et placez-les sur une même ligne. - Ajoutez un en-tête
Trends and breakdowns, puis un composant d'onglets avec 4 onglets :Customers,Time,ProductsetGeography. - Faites glisser chacun des autres graphiques depuis le panneau de droite dans son onglet. Dans l'onglet Customers, placez les 3 tuiles sur une même ligne, les 2 graphiques en barres côte à côte et l'histogramme sur toute la largeur.
- Cliquez sur Save.
Ce que vous avez construit
Vous disposez d'un dashboard qui répond aux questions du responsable d'une boutique en ligne : combien la boutique vend et à combien de clients, comment les ventes évoluent au fil de l'année, quels produits et quels pays comptent, et à quelle fréquence les clients reviennent.
À partir de là, vous pouvez ajouter des filtres de dashboard sur country ou sur une période, ou appliquer le même pipeline à vos propres données de commandes. Pour un autre dashboard Superset construit sur la Data Platform, consultez le cas d'usage FOCUS et Apache Superset.
Aller plus loin
Pour une formation ou une assistance technique sur la mise en œuvre de nos solutions, contactez votre commercial ou consultez la page Professional Services pour obtenir un devis et faire analyser votre projet par nos experts.
Posez vos questions, faites-nous part de vos commentaires et interagissez directement avec l’équipe qui développe la Data Platform sur le canal Discord dédié.
Si vous avez besoin d'une assistance concernant vos services OVHcloud, créez une demande depuis notre centre d'aide.
Rejoignez notre communauté d'utilisateurs.