Optimiser le prix des produits de détail

1. Introduction

Dernière mise à jour:15/09/2021

Les données requises pour dégager des insights et optimiser les prix sont disparates par nature (différents systèmes, différentes réalités locales, etc.). Il est donc essentiel de développer une table CDM bien structurée, standardisée et propre. Il inclut des attributs clés pour l'optimisation des prix, comme les transactions, les produits, les prix et les clients. Dans ce document, nous vous expliquons en détail les étapes décrites ci-dessous. Il s'agit d'un guide de démarrage rapide pour l'analyse des prix, que vous pouvez étendre et personnaliser selon vos besoins. Le schéma suivant décrit les étapes abordées dans ce document.

dd8545e0c9156b13.png

  1. Évaluer les sources de données:vous devez d'abord obtenir un inventaire des sources de données qui seront utilisées pour créer le CDM. Au cours de cette étape, Dataprep permet également d'explorer et d'identifier les problèmes à partir des données d'entrée. Par exemple, valeurs manquantes et non concordantes, conventions de dénomination incohérentes, doublons, problèmes d'intégrité des données, anomalies, etc.
  2. Standardiser les données:ensuite, les problèmes précédemment identifiés sont résolus afin de garantir l'exactitude, l'intégrité, la cohérence et l'exhaustivité des données. Ce processus peut impliquer diverses transformations dans Dataprep, telles que la mise en forme de la date, la standardisation des valeurs, la conversion d'unités, le filtrage des champs et des valeurs inutiles, ainsi que la division, la jointure ou la déduplication des données sources.
  3. Unifier en une seule structure:l'étape suivante du pipeline joint chaque source de données en une seule table large dans BigQuery contenant tous les attributs avec un niveau de précision très élevé. Cette structure dénormalisée permet d'effectuer des requêtes analytiques efficaces qui ne nécessitent pas de jointure.
  4. Fournir des analyses et ML/IA:une fois les données nettoyées et formatées pour analyse, les analystes peuvent explorer les données historiques pour comprendre l'impact des changements de tarifs antérieurs. De plus, BigQuery ML permet de créer des modèles prédictifs qui estiment les futures ventes. Les résultats de ces modèles peuvent être incorporés à des tableaux de bord dans Looker pour créer des "scénarios de simulation What-If" où les utilisateurs professionnels peuvent analyser à quoi ressembleront les ventes avec certains changements de prix.

Le schéma suivant présente les composants Google Cloud utilisés pour créer le pipeline d'analyse de l'optimisation des tarifs.

e5d74e43074eedf4.png

Objectifs de l'atelier

Nous allons vous montrer comment concevoir un entrepôt de données d'optimisation des prix, automatiser la préparation des données au fil du temps, utiliser le machine learning pour prédire l'impact des modifications apportées au prix des produits, et développer des rapports pour fournir des insights exploitables à votre équipe.

Points abordés

  • Comment connecter Dataprep à des sources de données pour l'analyse des tarifs, qui peuvent être stockées dans des bases de données relationnelles, des fichiers plats, Google Sheets et d'autres applications compatibles
  • Comment créer un flux Dataprep pour créer une table CDM dans votre entrepôt de données BigQuery
  • Utiliser BigQuery ML pour prédire les futurs revenus
  • Comment créer des rapports dans Looker pour analyser l'historique des prix et les tendances des ventes, et pour comprendre l'impact des futurs changements de prix

Prérequis

2. Créer le CDM dans BigQuery

Dans cette section, vous allez créer le modèle de données commun (CDM, Common Data Model), qui fournit une vue consolidée des informations à analyser et qui suggère des modifications tarifaires.

  1. Ouvrez la console BigQuery.
  2. Sélectionnez le projet que vous souhaitez utiliser pour tester ce modèle de référence.
  3. Utilisez un ensemble de données existant ou créez un ensemble de données BigQuery. Nommez l'ensemble de données Pricing_CDM.
  4. Créez la table:
create table `CDM_Pricing`
(
  Fiscal_Date DATETIME,
  Product_ID STRING,
  Client_ID INT64,
  Customer_Hierarchy STRING,
  Division STRING,
  Market STRING,
  Channel STRING,
  Customer_code INT64,
  Customer_Long_Description STRING,
  Key_Account_Manager INT64,
  Key_Account_Manager_Description STRING,
  Structure STRING,
  Invoiced_quantity_in_Pieces FLOAT64,
  Gross_Sales FLOAT64,
  Trade_Budget_Costs FLOAT64,
  Cash_Discounts_and_other_Sales_Deductions INT64,
  Net_Sales FLOAT64,
  Variable_Production_Costs_STD FLOAT64,
  Fixed_Production_Costs_STD FLOAT64,
  Other_Cost_of_Sales INT64,
  Standard_Gross_Margin FLOAT64,
  Transportation_STD FLOAT64,
  Warehouse_STD FLOAT64,
  Gross_Margin_After_Logistics FLOAT64,
  List_Price_Converged FLOAT64
);

3. Évaluer les sources de données

Dans ce tutoriel, vous allez utiliser des exemples de sources de données stockées dans Google Sheets et BigQuery.

  • Feuille de calcul Google Sheets transactions contenant une ligne pour chaque transaction Il contient des informations telles que la quantité de chaque produit vendu, les ventes brutes totales et les coûts associés.
  • La feuille de calcul Google Sheets Tarifs des produits, qui indique le prix mensuel de chaque produit pour un client donné.
  • Table BigQuery company_descriptions qui contient des informations sur les clients individuels.

Cette table BigQuery company_descriptions peut être créée à l'aide de l'instruction suivante:

create table `Company_Descriptions`
(
 Customer_ID INT64,
 Customer_Long_Description STRING
);
insert into `Company_Descriptions` values (15458, 'ENELTEN');
insert into `Company_Descriptions` values (16080, 'NEW DEVICES CORP.');
insert into `Company_Descriptions` values (19913, 'ENELTENGAS');
insert into `Company_Descriptions` values (30108, 'CARTOON NT');
insert into `Company_Descriptions` values (32492, 'Thomas Ed Automobiles');

4. Créer le flux

Au cours de cette étape, vous allez importer un exemple de flux Dataprep, que vous allez utiliser pour transformer et unifier les exemples d'ensembles de données répertoriés dans la section précédente. Un flux représente un pipeline, c'est-à-dire un objet qui rassemble des ensembles de données et des recettes, afin de les transformer et de les joindre.

  1. Téléchargez le package de flux Pricing Optimization Pattern sur GitHup, mais ne le décompressez pas. Ce fichier contient le flux du schéma de conception d'optimisation des prix utilisé pour transformer les exemples de données.
  2. Dans Dataprep, cliquez sur l'icône Flows dans la barre de navigation de gauche. Ensuite, dans la vue "Flux", sélectionnez Importer dans le menu contextuel. Une fois le flux importé, vous pouvez le sélectionner pour l'afficher et le modifier.

dd5213e4cf1e313f.png

  1. Sur la gauche du flux, la tarification par produit et chacune des trois transactions Google Sheets doivent être connectées en tant qu'ensembles de données. Pour ce faire, effectuez un clic droit sur les objets de l'ensemble de données Google Sheets, puis sélectionnez Remplacer. Cliquez ensuite sur le lien Import Datasets (Importer des ensembles de données). Cliquez sur le bouton un crayon, comme illustré dans le schéma suivant.

7e4af3e82955343f.png

Remplacez la valeur actuelle par le lien pointant vers Google Sheets transactions et prix des produits.

Lorsque les feuilles de calcul Google Sheets contiennent plusieurs onglets, vous pouvez sélectionner celui que vous souhaitez utiliser dans le menu. Cliquez sur Modifier et sélectionnez les onglets que vous souhaitez utiliser comme source de données, puis cliquez sur Enregistrer et sur Importer et Ajouter au flux. Une fois de retour dans la fenêtre modale, cliquez sur Replace (Remplacer). Dans ce flux, chaque feuille est représentée sous la forme de son propre ensemble de données pour illustrer l'unification de sources disparates ultérieurement dans une recette ultérieure.

799bce35e0a60e87.png

  1. Définir des tables de sortie BigQuery:

Au cours de cette étape, vous allez associer l'emplacement de la table de sortie BigQuery CDM_Pricing à charger chaque fois que vous exécutez le job Dataoprep.

Sur la page "Flow View" (Afficher le flux), cliquez sur l'icône "Schema Mapping Output" (Sortie de mappage de schéma). Dans le panneau "Details" (Détails), cliquez sur l'onglet "Destinations" (Destinations). Ensuite, modifiez à la fois la sortie "Destinations manuelles" utilisée pour les tests et la sortie "Destinations planifiées" utilisée lorsque vous souhaitez automatiser l'ensemble de votre flux. Pour ce faire, procédez comme suit:

  1. Modifier la section "Destinations manuelles" Dans le panneau "Détails", sous la section "Destinations manuelles", cliquez sur le bouton "Modifier". Sur la page Paramètres de publication, sous "Actions de publication", si une action de publication existe déjà, modifiez-la. Sinon, cliquez sur le bouton "Ajouter une action". Ensuite, accédez aux ensembles de données BigQuery et sélectionnez l'ensemble de données Pricing_CDM que vous avez créé lors d'une étape précédente, puis sélectionnez la table CDM_Pricing. Vérifiez que l'option Append to this table every run (Ajouter à cette table à chaque exécution) est cochée, puis cliquez sur Add (Ajouter). Cliquez sur Save Settings (Enregistrer les paramètres).
  2. Modifier les destinations planifiées

Dans le panneau "Détails", sous la section "Destinations planifiées", cliquez sur Modifier.

Les paramètres sont hérités des destinations manuelles, et aucune modification n'est nécessaire. Cliquez sur "Enregistrer les paramètres".

5. Standardiser les données

Les unions de flux fournies, mettent en forme et nettoient les données de transaction, puis associent le résultat aux descriptions de l'entreprise et aux données tarifaires agrégées pour la création de rapports. Ici, vous allez découvrir les composants du flux, qui sont illustrés dans l'image ci-dessous.

a033de41c68acc8b.png

6. Explorer la recette de données transactionnelles

Tout d'abord, vous allez découvrir ce qu'il se passe dans la recette des données transactionnelles, qui permet de préparer les données de transaction. Cliquez sur l'objet "Données de transaction" sur la page d'affichage du flux. Dans le panneau "Détails", cliquez sur le bouton "Modifier la recette".

La page "Transformateur" s'ouvre avec la recette présentée dans le panneau "Détails". La recette contient toutes les étapes de transformation appliquées aux données. Vous pouvez naviguer dans la recette en cliquant entre chacune des étapes pour voir l'état des données à cette position particulière de la recette.

Vous pouvez également cliquer sur le menu "Plus" pour chaque étape de la recette, puis sélectionner "Accéder à la sélection" ou "Modifier" pour explorer le fonctionnement de la transformation.

  1. Union Transactions:la première étape de la recette des données transactionnelles union les transactions stockées dans différentes feuilles représentant chaque mois.
  2. Standardiser les descriptions des clients:l'étape suivante de la recette consiste à standardiser les descriptions des clients. Cela signifie que les noms des clients peuvent être similaires avec de légères modifications et que nous voulons les normaliser comme sur le nom. La recette illustre deux approches possibles. Tout d'abord, elle exploite l'algorithme de standardisation, qui peut être configuré avec différentes options de standardisation, telles que "Chaînes similaires". où les valeurs avec des caractères communs sont mises en cluster, ou « prononciation » où les valeurs qui se ressemblent sont regroupées. Vous pouvez également rechercher la description de l'entreprise dans le tableau BigQuery référencé ci-dessus à l'aide de l'ID de l'entreprise.

Vous pouvez naviguer plus loin dans la recette pour découvrir les différentes autres techniques appliquées pour nettoyer et mettre en forme les données: supprimer des lignes, mettre en forme en fonction de modèles, enrichir les données avec des recherches, traiter les valeurs manquantes ou remplacer les caractères indésirables.

7. Explorer la recette des données de tarification des produits

Ensuite, vous pouvez explorer ce qui se passe dans la recette des données de tarification par produit, qui associe les données des transactions préparées aux données de tarification agrégées.

Cliquez sur le MODÈLE DE CONCEPTION D'OPTIMISATION DES TARIFS en haut de la page pour fermer la page "Transformateur" et revenir à la page d'affichage du flux. Ensuite, cliquez sur l'objet "Données de tarification par produit" et sélectionnez "Modifier la recette".

  1. Colonnes de prix mensuels Unpivot:cliquez sur la recette entre les deux et trois étapes pour voir à quoi ressemblent les données avant l'étape Unpivot. Vous remarquerez que les données contiennent la valeur de la transaction dans une colonne distincte pour chaque mois: Jan Fev Mar. Ce format n'est pas pratique pour appliquer le calcul d'agrégation (somme, transaction moyenne) en SQL. Les données ne doivent pas être pivotées de sorte que chaque colonne devienne une ligne dans la table BigQuery. La recette exploite la fonction unpivot pour transformer les trois colonnes en une seule ligne pour chaque mois. Il est ainsi plus facile d'appliquer davantage de calculs de groupes.
  2. Calculer la valeur moyenne des transactions par client, produit et date: nous souhaitons calculer la valeur moyenne des transactions pour chaque client, produit et données. Nous pouvons utiliser la fonction Aggregate et générer un nouveau tableau (option "Group by as a new table"). Dans ce cas, les données sont agrégées au niveau du groupe, et nous perdons les détails de chaque transaction. Nous pouvons également décider de conserver les détails et les valeurs agrégées dans le même ensemble de données (option "Grouper par comme nouvelle(s) colonne(s)"), ce qui s'avère très pratique pour appliquer un ratio (c'est-à-dire le pourcentage de contribution de la catégorie de produits au chiffre d'affaires global). Vous pouvez essayer ce comportement en modifiant l'étape 7 de la recette et en sélectionnant l'option "Grouper par en tant que nouvelle table". ou "Grouper par en tant que nouvelles colonnes" pour voir les différences.
  3. Date de tarification de la jointure:enfin, une jointure permet de combiner plusieurs ensembles de données en un plus grand, en ajoutant des colonnes à l'ensemble de données initial. Lors de cette étape, les données de tarification sont jointes à la sortie de la recette des données transactionnelles basée sur "Pricing Data.Product Code". = Transaction Data.SKU' et "Pricing Data.Price Date". = ‘Données de transaction.Date fiscale'

Pour en savoir plus sur les transformations que vous pouvez appliquer avec Dataprep, consultez l'aide-mémoire sur la préparation de données de Trifacta.

8. Explorer la recette de mappage de schéma

La dernière recette, le mappage de schémas, permet de s'assurer que la table CDM obtenue correspond au schéma de la table de sortie BigQuery existante. Ici, la fonctionnalité Cible rapide permet de reformater la structure de données pour qu'elle corresponde à la table BigQuery. Elle utilise la correspondance partielle pour comparer les deux schémas et appliquer des modifications automatiques.

9. Unifier dans une seule structure

Maintenant que les sources et les destinations ont été configurées, et que les étapes des flux ont été explorées, vous pouvez exécuter le flux pour transformer et charger la table CDM dans BigQuery.

  1. Run Schema Mapping output:sur la page d'affichage du flux, sélectionnez l'objet de sortie "Schema Mapping" (Mappage de schéma), puis cliquez sur "Run" (Exécuter). dans le panneau "Détails". Sélectionnez "Trifacta Photon". Environnement en cours d'exécution et décochez la case "Ignorer les erreurs de recette". Cliquez ensuite sur le bouton Exécuter. Si la table BigQuery spécifiée existe, Dataprep ajoute de nouvelles lignes. Dans le cas contraire, il crée une table.
  2. Affichez l'état du job:Dataprep ouvre automatiquement la page "Exécuter le job" afin que vous puissiez surveiller son exécution. Le chargement de la table BigQuery devrait prendre quelques minutes. Une fois la tâche terminée, la sortie CDM de tarification est chargée dans BigQuery dans un format propre, structuré et normalisé, et prêt à être analysé.

10. Proposer des analyses et ML/AI

Conditions préalables pour l'analyse

Afin d'exécuter des analyses et un modèle prédictif offrant des résultats intéressants, nous avons créé un ensemble de données plus vaste et pertinent pour dégager des insights spécifiques. Vous devez importer ces données dans votre ensemble de données BigQuery avant de poursuivre ce guide.

Cliquez sur le bouton + Créer un tableau et définissez les paramètres suivants:

  • Créez une table à partir de l'importation et sélectionnez le fichier CDM_Pricing_Large_Table.csv
  • Détection automatique des schémas, vérification du schéma et des paramètres de saisie
  • Options avancées, préférence d'écriture, Écraser la table

ff9ec8b9f580b139.png

  • Cliquez sur "Créer une table"

Une fois la table créée et les données importées, les détails de la nouvelle table doivent s'afficher dans la console Google pour BigQuery, comme indiqué ci-dessous. Grâce aux données tarifaires de BigQuery, nous pouvons facilement vous poser des questions plus complètes afin d'analyser vos données tarifaires de façon plus approfondie.

93e4c05972af1999.png

11. Conséquences des changements de tarifs

Par exemple, vous pouvez analyser un changement dans le comportement de commande lorsque vous avez précédemment modifié le prix d'un article.

  1. Tout d'abord, créez un tableau temporaire composé d'une ligne chaque fois que le prix d'un produit change, et contenant des informations sur le prix d'un produit particulier, comme le nombre d'articles commandés à chaque prix et le total des ventes nettes associées à ce prix.
create temp table price_changes as (
select
       product_id,
       list_price_converged,
       total_ordered_pieces,
       total_net_sales,
       first_price_date,
       lag(list_price_converged) over(partition by product_id order by first_price_date asc) as previous_list,
       lag(total_ordered_pieces) over(partition by product_id order by first_price_date asc) as previous_total_ordered_pieces,
       lag(total_net_sales) over(partition by product_id order by first_price_date asc) as previous_total_net_sales,
       lag(first_price_date) over(partition by product_id order by first_price_date asc) as previous_first_price_date
       from (
           select
               product_id,list_price_converged,sum(invoiced_quantity_in_pieces) as total_ordered_pieces, sum(net_sales) as total_net_sales, min(fiscal_date) as first_price_date
           from `{{my_project}}.{{my_dataset}}.CDM_Pricing` AS cdm_pricing
           group by 1,2
           order by 1, 2 asc
       )
);
select * from price_changes where previous_list is not null order by product_id, first_price_date desc

b320ba40f0692826.png

  1. Ensuite, une fois le tableau temporaire en place, vous pouvez calculer la variation moyenne du prix entre les SKU:
select avg((previous_list-list_price_converged)/nullif(previous_list,0))*100 as average_price_change from price_changes;
  1. Enfin, vous pouvez analyser ce qui se passe après qu'un prix a été modifié en examinant le rapport entre chaque changement de prix et le nombre total d'articles commandés:
select
(total_ordered_pieces-previous_total_ordered_pieces)/nullif(previous_total_ordered_pieces,0) 

as

price_changes_percent_ordered_change,
(list_price_converged-previous_list)/nullif(previous_list,0)  

as

price_changes_percent_price_change
from price_changes

12. Créer un modèle de prévision de séries temporelles

Ensuite, grâce aux fonctionnalités de machine learning intégrées de BigQuery, vous pouvez créer un modèle de prévision de séries temporelles ARIMA pour prédire la quantité de chaque article qui sera vendu.

  1. Commencez par créer un modèle ARIMA_PLUS.
create or replace `{{my_project}}.{{my_dataset}}.bqml_arima`
options
 (model_type = 'ARIMA_PLUS',
  time_series_timestamp_col = 'fiscal_date',
  time_series_data_col = 'total_quantity',
  time_series_id_col = 'product_id',
  auto_arima = TRUE,
  data_frequency = 'AUTO_FREQUENCY',
  decompose_time_series = TRUE
 ) as
select
 fiscal_date,
 product_id,
 sum(invoiced_quantity_in_pieces) as total_quantity
from
 `{{my_project}}.{{my_dataset}}.CDM_Pricing` 
group by 1,2;
  1. Vous allez ensuite prédire les ventes futures pour chaque produit à l'aide de la fonction ML.FORECAST:
select
*
from
ML.FORECAST(model testing.bqml_arima,
            struct(30 as horizon, 0.8 as confidence_level));
  1. Grâce à ces prédictions, vous pouvez essayer de comprendre ce qui pourrait se produire si vous augmentez vos prix. Par exemple, si vous augmentez le prix de chaque produit de 15 %, vous pouvez calculer le revenu total estimé pour le mois suivant avec une requête comme celle-ci:
select
sum(forecast_value * list_price) as total_revenue
from ml.forecast(mode testing.bqml_arima,
            struct(30 as horizon, 0.8 as confidence_level)) forecasts
left join (select product_id,
                array_agg(list_price_converged
                       order by fiscal_date desc limit 1)[offset(0)] as list_price
                from `leigha-bq-dev.retail.cdm_pricing` group by 1)  recent_prices
using (product_id);

13. Générer un rapport

Maintenant que vos données de tarification dénormalisées sont centralisées dans BigQuery, et que vous savez comment exécuter des requêtes pertinentes sur ces données, il est temps de créer un rapport permettant aux utilisateurs métier d'explorer ces informations et d'agir en conséquence.

Si vous disposez déjà d'une instance Looker, vous pouvez utiliser le dépôt LookML de ce dépôt GitHub pour commencer à analyser les données tarifaires de ce modèle. Il vous suffit de créer un projet Looker, d'ajouter le LookML, puis de remplacer les noms de connexion et de table dans chacun des fichiers de vue en fonction de votre configuration BigQuery.

Dans ce modèle, vous trouverez la table dérivée ( dans ce fichier de vue) que nous avons montrée précédemment afin d'examiner les changements de prix:

view: price_changes {
    derived_table: {
      sql: select
        product_id,
        list_price_converged,
        total_ordered_pieces,
        total_net_sales,
        first_price_date,
        lag(list_price_converged) over(partition by product_id order by first_price_date asc) as previous_list,
        lag(total_ordered_pieces) over(partition by product_id order by first_price_date asc) as previous_total_ordered_pieces,
        lag(total_net_sales) over(partition by product_id order by first_price_date asc) as previous_total_net_sales,
        lag(first_price_date) over(partition by product_id order by first_price_date asc) as previous_first_price_date
        from (
      select
         product_id,list_price_converged,sum(invoiced_quantity_in_pieces) as total_ordered_pieces, sum(net_sales) as total_net_sales, min(fiscal_date) as first_price_date
      from ${cdm_pricing.SQL_TABLE_NAME}  AS cdm_pricing
      group by 1,2
      order by 1, 2 asc
      )
       ;;
    }
...
}

En plus du modèle BigQuery ML ARIMA présenté précédemment, pour prédire les ventes futures ( dans ce fichier de vue)

view: arima_model {
  derived_table: {
    persist_for: "24 hours"
    sql_create:
      create or replace model ${sql_table_name}
            options
              (model_type = 'arima_plus',
               time_series_timestamp_col = 'fiscal_date',
               time_series_data_col = 'total_quantity',
               time_series_id_col = 'product_id',
               auto_arima = true,
               data_frequency = 'auto_frequency',
               decompose_time_series = true
              ) as
            select
              fiscal_date,
              product_id,
              sum(invoiced_quantity_in_pieces) as total_quantity
            from
              ${cdm_pricing.sql_table_name}
            group by 1,2 ;;
          }
   }
...
}

LookML contient également un exemple de tableau de bord. Vous pouvez accéder à une version de démonstration du tableau de bord ici. La première partie du tableau de bord fournit aux utilisateurs des informations de haut niveau sur les changements dans les ventes, les coûts, les prix et les marges. En tant qu'utilisateur professionnel, vous pouvez créer une alerte pour savoir si vos ventes sont descendues en dessous de X %, car cela peut signifier que vous devriez baisser vos prix.

b531e169b192c111.png

La section suivante, illustrée ci-dessous, permet aux utilisateurs d'examiner les tendances liées aux changements de prix. Vous pouvez alors afficher le détail de produits spécifiques pour voir le prix catalogue exact et les prix qui ont été modifiés. Cela peut être utile pour identifier des produits spécifiques sur lesquels des recherches plus approfondies sont nécessaires.

6a98666697aa7a1.gif

Enfin, en bas du rapport, vous avez les résultats de notre modèle BigQuery ML. À l'aide des filtres en haut du tableau de bord Looker, vous pouvez facilement entrer des paramètres pour simuler différents scénarios semblables à ceux décrits ci-dessus. Par exemple, voir ce qui se passerait si le volume des commandes descendait à 75% de la valeur prévue, et que les prix de tous les produits étaient augmentés de 25%, comme illustré ci-dessous.

d3a9d37c89c39b99.gif

Cette fonctionnalité est alimentée par des paramètres dans LookML, qui sont ensuite incorporés directement dans les calculs de mesure présentés ici. Ce type de rapport vous permet d'identifier la tarification optimale pour tous les produits ou d'analyser des produits spécifiques afin de déterminer où vous devez augmenter ou réduire les prix, et quel sera le résultat au niveau des revenus bruts et nets.

14. Adaptez-vous à vos systèmes de tarification

Bien que ce tutoriel transforme des exemples de sources de données, vous serez confronté à des problèmes de données très similaires pour les éléments de tarification présents sur vos différentes plates-formes. Les éléments de tarification utilisent différents formats d'exportation (souvent xls, sheets, csv, txt, bases de données relationnelles, applications d'entreprise) pour fournir des résultats résumés et détaillés, chacun d'eux pouvant être connecté à Dataprep. Nous vous recommandons de commencer par décrire vos exigences de transformation de la même manière que dans les exemples fournis ci-dessus. Une fois que vous avez clarifié vos spécifications et identifié les types de transformations nécessaires, vous pouvez les concevoir avec Dataprep.

  1. Créez une copie du flux Dataprep (cliquez sur le bouton **... "**plus" à droite du flux et sélectionnez l'option "Dupliquer") que vous allez personnaliser, ou repartez de zéro en utilisant un nouveau flux Dataprep.
  2. Connectez-vous à votre propre ensemble de données de tarification. Dataprep accepte de façon native les formats de fichiers tels que Excel, CSV, Google Sheets et JSON. Vous pouvez également vous connecter à d'autres systèmes à l'aide de connecteurs Dataprep.
  3. Répartissez vos éléments de données dans les différentes catégories de transformation que vous avez identifiées. Pour chaque catégorie, créez une recette. Inspirez-vous du flux fourni dans ce modèle de conception pour transformer les données et écrire vos propres recettes. Si vous êtes bloqué, ne vous inquiétez pas. Demandez de l'aide dans la boîte de dialogue de chat en bas à gauche de l'écran Dataprep.
  4. Connectez votre recette à votre instance BigQuery. Vous n'avez pas à créer les tables manuellement dans BigQuery : Dataprep s'en charge automatiquement. Lorsque vous ajoutez la sortie à votre flux, nous vous suggérons de sélectionner une destination manuelle et de supprimer la table à chaque exécution. Testez chaque recette individuellement jusqu'à ce que vous obteniez les résultats attendus. Une fois vos tests terminés, vous convertirez la sortie en "Append to the table" (Ajouter à la table) à chaque exécution pour éviter de supprimer les données précédentes.
  5. Vous pouvez éventuellement associer le flux pour qu'il s'exécute selon la planification. C'est quelque chose d'utile si votre processus doit fonctionner en continu. Vous pouvez définir un calendrier pour charger la réponse une fois par jour ou toutes les heures en fonction de l'actualisation requise. Si vous décidez d'exécuter le flux selon un calendrier, vous devez ajouter une sortie de destination de planification dans le flux pour chaque recette.

Modifier le modèle de machine learning BigQuery

Ce tutoriel fournit un exemple de modèle ARIMA. Toutefois, lorsque vous développez le modèle, vous pouvez contrôler d'autres paramètres pour vous assurer qu'il s'adapte le mieux à vos données. Vous trouverez plus de détails dans l'exemple dans notre documentation ici. Vous pouvez également utiliser les fonctions BigQuery ML.ARIMA_EVALUATE, ML.ARIMA_COEFFICIENTS et ML.EXPLAIN_FORECAST pour obtenir plus de détails sur votre modèle et prendre des décisions d'optimisation.

Modifier des rapports Looker

Après avoir importé le code LookML dans votre projet comme décrit ci-dessus, vous pouvez apporter des modifications directes pour ajouter des champs supplémentaires, modifier les calculs ou les paramètres saisis par l'utilisateur et modifier les visualisations des tableaux de bord en fonction des besoins de votre entreprise. Pour en savoir plus sur le développement dans LookML, cliquez ici et découvrez comment visualiser les données dans Looker.

15. Félicitations

Vous connaissez maintenant les étapes clés à suivre pour optimiser vos produits retail tarifs !

Et ensuite ?

Explorez d'autres modèles de référence pour les analyses intelligentes

Complément d'informations

  • Lire l'article de blog
  • En savoir plus sur Dataprep
  • Pour en savoir plus sur BigQuery Machine Learning, cliquez ici.
  • Pour en savoir plus sur Looker, cliquez ici.