For AI agents: the complete documentation index is available at https://docs.ovhcloud.com/fr/llms.txt, the full documentation bundle is available at https://docs.ovhcloud.com/fr/llms-full.txt, and this page is available as Markdown at https://docs.ovhcloud.com/fr/guides/public-cloud/data-platform/tutorials-project-checklist.md.

Checklist et bonnes pratiques du projet

Voir en Markdown

Vous avez décidé de vous lancer et vous venez de créer votre projet ! En tant que premiers utilisateurs de notre platform, nous

Objectif

Vous avez décidé de vous lancer et vous venez de créer votre projet ! Bravo !

Et maintenant ? Par où commencer ?

En tant que premiers utilisateurs de notre platform, nous avons accumulé plusieurs années d'expérience dans la conduite de projets de données. Nous avons rassemblé une liste de bonnes pratiques, apprises au fil des années grâce à notre pratique des services, que nous sommes ravis de partager avec vous.

Les projets sur Data Platform vous permettent de rassembler une équipe et de travailler ensemble sur le même projet de données. Vous pouvez commencer par un simple chargement de fichiers et basculer sans effort vers un traitement de données quasi temps réel, en conservant votre méthodologie et en scalant facilement à mesure que votre projet grandit.
Alors démarrez, itérez, et faites grandir votre projet étape par étape : votre projet répondra à vos besoins croissants.

Un projet type traverse souvent les jalons principaux suivants :

Checklist

Warning

Nous vous recommandons de suivre notre guide de démarrage pour bien comprendre les composants clés du projet et les concepts de la Data Platform.

Avant de vous lancer, voici quelques vérifications de base sur le périmètre et le calendrier de votre cas d'usage :

  • Sources de données
    • De quelles données avez-vous besoin ?
    • Les données sont-elles disponibles ? Comment ? L'historique des données est-il disponible ?
    • Dimensionnement du stockage : quel volume de données et de calcul ce projet nécessitera-t-il ?
    • À quelle fréquence doit-il être rafraîchi ?
  • Décrivez votre propre livre de données :
    • La « data story » : d'où viennent-elles ? Comment ont-elles été produites ? Quel est l'historique de votre flux de données ?
    • Champs de données : que signifient-ils ? à quoi servent-ils ?
    • Règles métier détaillées (sur les données)
    • KPI : comment les calculer ? que signifient-ils ?
  • Que doit-on produire ?
    • Storyboard UX
    • API pour usage externe
    • Export de fichiers
  • Détection et atténuation des risques
    • Qu'est-ce qui pourrait mal se passer ? Qu'y a-t-il de complexe dans votre projet ?
    • Identifier/anticiper les goulets d'étranglement ou obstacles possibles
  • Identifier et tirer parti d'itérations courtes
  • Visualiser et vérifier les données le plus tôt possible
  • Publiez tôt, publiez souvent !

Gestion des utilisateurs

Les projets facilitent le travail en équipe sur un même projet. Il existe deux niveaux de gestion d'équipe :

  • Les membres de votre organisation Data Platform sont vos coéquipiers. Ils ont créé un compte Data Platform
  • Les utilisateurs de votre projet sont soit des coéquipiers travaillant sur ce projet, soit des utilisateurs finaux de votre API et de vos apps
    • Les membres d'une organisation sont automatiquement ajoutés comme utilisateurs dans tous les projets de cette organisation. Les permissions doivent être accordées manuellement aux non-administrateurs.

Après avoir ajouté votre équipe à votre organisation, consultez comment leur donner des droits d'accès dans l'Identity Access Manager de chaque projet selon leurs compétences et permissions.

Les droits d'accès de vos utilisateurs finaux sont également gérés dans l'Identity Access Manager.

Gérer les ressources

Les projets ont été conçus dès l'origine pour évoluer facilement à mesure que les besoins de votre projet de données changent. Vous pouvez scaler horizontalement et verticalement indépendamment n'importe quel composant de votre choix en quelques clics, par exemple vos apps.

Chaque composant de votre projet consommera des ressources lorsqu'il est activement en cours d'exécution (via un job ou un déploiement).

Info

Même à l'arrêt, votre projet utilise par défaut quelques DPU. Vous pouvez gérer ce montant dans le Control Center.

En savoir plus sur la consommation de ressources

Collecter des données

Jetez un œil aux connecteurs disponibles et rappelez-vous qu'il est toujours possible d'écrire une action personnalisée pour faire tout ce qui n'est pas déjà possible via l'interface.

Si vous devez gérer des fichiers dans votre projet, nous recommandons d'utiliser les buckets du Lakehouse Manager :

  • organisez les buckets soit par sujet (référentiels par exemple), par type de traitement ou par fournisseurs selon vos besoins
  • au sein d'un bucket, vous pouvez utiliser des dossiers pour mieux organiser vos fichiers
  • lors de la définition d'une source, le connecteur Data Platform Buckets vous permet de sélectionner un bucket puis de sélectionner des fichiers comme sources
  • si vous avez plusieurs fichiers dans le même bucket/dossier :
  • consultez comment envoyer des fichiers vers les buckets avec des outils compatibles S31 pour l'intégrer à votre process interne

Analyser les données et définir des règles de blueprint

Une fois vos sources configurées, prenez le temps de les analyser et de configurer des règles de nettoyage de base appelées règles de blueprint. Cela peut aider à corriger des problèmes courants comme :

  • le formatage de dates
  • le formatage de nombres
  • le nettoyage de chaînes de caractères
  • ignorer les lignes incomplètes
  • ... et bien plus encore

À long terme, cette étape vous fera gagner beaucoup de temps !

Organiser les données

La page Tables est l'endroit où vous préparez le schéma de votre base de données.

Tables

  • Nous recommandons d'utiliser un préfixe selon le type de données :
    • ref_ : pour les référentiels et données stables, sans information temporelle
    • raw_ : données importées telles quelles avec des changements minimaux. Cela peut être utilisé pour retracer les problèmes de données
    • prm_ : tables primaires, c'est-à-dire des données de qualité améliorée issues de raw_
    • fct_ : consolidation des facts provenant de plusieurs prim_ et ref_ dans une scale commune
    • agr_ : agrégation de données selon une scale différente (par exemple datetime vers date ou date vers year)
      • elles sont généralement conçues pour optimiser les requêtes
      • construisez une table agr_ par granularité de scale en ajoutant tous les attributs nécessaires
      • puis ajoutez des noms d'attributs qui indiquent la granularité (agr_station_yearmonth, agr_movie_date)
    • tmp_ : tables temporaires utilisées pour le traitement (marquez-les comme non requêtables)
    • mlm_ : pour les tables utilisées dans un modèle de machine learning
  • Donnez des noms clairs qui décrivent ce que représente une ligne de données
  • Définissez des index pour accélérer les opérations sur les données

Attributs

Utilisez l'onglet Attributs pour examiner tous les attributs, dans quelles tables ils sont utilisés, quelles Actions DPE les utilisent, etc.

Voici quelques bonnes pratiques concernant les attributs (c'est-à-dire les noms de champs dans les tables) :

  • type d'attribut : choisissez entre dimension ou measure
    • dimension : information qualitative qui peut être utilisée pour scaler, filtrer, etc. mais pas sommée.
    • measure : information numérique qui peut, la plupart du temps, être sommée, comptée, moyennée, etc.
  • nommage des attributs :
    • utilisez un préfixe pour les distinguer (ex. client_, fb_, site_)
    • nommez les attributs measure de façon à indiquer une fenêtre temporelle :
      • _nb_ : nombre pour ce jour
      • _total_ : valeur pour ce jour
      • _diff_ : différence par rapport au jour précédent
      • ...
    • indiquez clairement ce dont il s'agit (c'est-à-dire _amount_, _ticket_, _fans_)
    • indiquez l'unité de mesure si elle n'est pas évidente (c'est-à-dire _g, _kg, _wh, _kwh, _eur, _usd)
Warning

Il est très important d'utiliser le même nom et le même type d'attribut dans toutes les tables pour désigner la même information. Ainsi, lors de l'exécution d'une query dans l'Analytics Manager, celui-ci vérifie dynamiquement l'objet le plus adapté pour les champs requis.

Explorer

Utilisez l'Explorer pour vérifier rapidement le contenu des tables.

Traiter les données

Le Data Processing Engine (DPE) est utilisé pour construire des actions qui sont le cœur de votre flux de données physique. Elles peuvent s'exécuter seules ou être organisées en groupes appelés workflows.

Actions

Assurez-vous d'examiner en détail les types d'actions fournis.

Si vous devez aller plus loin, commencez à écrire une Custom Action en utilisant notre SDK pour interagir avec le reste de votre projet en tirant parti de Python ou PySpark.

Info

Utilisez les notebooks pour prototyper rapidement une Custom Action, puis exportez-la vers le Data Processing Engine

  • Pour les Aggregate Actions :
    • scale : doit avoir la même granularité que la clé primaire de la table de destination
    • vérifiez bien vos règles de jointure de tables : c'est la principale source d'erreurs
  • Réglez le niveau de log de manière appropriée selon le cycle de vie (c'est-à-dire debug si nécessaire, info sinon)
  • Utilisez Auto flush all pour vider tous les caches et visualiser les mises à jour apportées par l'action sur les datasets

Utiliser Repositories et Versions

À mesure que votre projet grandit, n'oubliez pas que vous pouvez organiser les actions dans des repositories utilisant des versions selon vos besoins.

Info

Les actions sont listées par ordre alphabétique : vous pouvez ajouter des préfixes tels que des nombres pour mieux les organiser.

Utiliser la segmentation

Pour tirer pleinement parti de la puissance du DPE de la Data Platform, utilisez la Segmentation pour paralléliser les tâches de calcul au niveau d'une action.

Utiliser un périmètre

Pour limiter une action ou un workflow à un sous-ensemble de vos données, par exemple les 30 derniers jours, utilisez l'option Perimeter.

Écrire des queries

Utilisez des dossiers et des repositories pour organiser les queries sauvegardées dans l'Analytics Manager.

Par exemple :

  • Data Quality : queries pour vérifier la qualité des données
  • Data Analysis : queries pour visualiser les caractéristiques de base
  • App-xxx : préparer des queries à utiliser dans votre application
    • Cela vous permet de mettre à jour le schéma de la base de données et les queries sans avoir à déployer une nouvelle version de l'app
    • Donnez des noms clairs et descriptifs à vos queries

Query Engine

Construire des applications

Prenez le temps de comprendre les Application Services et les paramètres possibles.

Conseils utiles

  • Concevez un storyboard avant de démarrer votre projet
  • Assurez-vous que vos dynamic parameters sont présents dans toutes les tables que vous devez requêter
  • Utilisez le label de l'objet dans les Tables pour la traduction automatique
  • Tirez parti des Formatters et des Translations
  • Tirez parti des Style templates pour rationaliser le développement de vos Apps

Un cycle de développement d'application typique est le suivant :

  1. Concevez un storyboard
  • vérifiez que les données sont disponibles
  • identifiez les dynamic parameters
  • identifiez les charts et custom components nécessaires
  1. Analytics Manager : préparez et vérifiez les queries nécessaires
  2. Implémentez une première version dans l'UI
  • configurez les dynamic parameters
  • configurez les dashboards et menus
  • configurez les charts disponibles selon les besoins
  • configurez les dictionaries, formatters et translations
  1. Améliorez cette version
  1. Testez et itérez à nouveau
  2. Donnez accès à davantage d'utilisateurs

Personnaliser davantage votre application

L'application repose sur le framework ReactJS. Nous vous recommandons vivement de suivre notre guide sur la personnalisation avancée des apps.

Repositories Git

Il est généralement recommandé de synchroniser votre application avec un repository Git et de déployer deux applications :

  • my-develop : synchronisée avec votre branche develop
  • my-master : synchronisée avec votre branche master

Noms de domaine personnalisés

Par défaut, votre application est disponible à :

https://my-project.eu.dataplatform.ovh.net/my-develop-app/

Vous pouvez facilement le modifier dans les paramètres de l'App pour qu'elle soit à :

https://my-beautiful-app.eu.dataplatform.ovh.net/

Si vous avez besoin d'une personnalisation supplémentaire, vous pouvez enregistrer votre propre domaine et fournir vos propres certificats SSL :

https://my-beautiful-app.example.com/

Donner accès à votre application

Par défaut, chaque Application créée dans Application Services possède sa contrepartie dans l'Identity Access Manager.

  • Application Services
    • il gère l'instance qui sera déployée et exécutée
    • il est lié à une Application de l'Identity Application Manager
    • il utilisera la configuration de cette IAM App concernant les Auth Providers, Users, etc.
  • Identity Access Manager, vous pouvez définir :
    • Logo
    • Titre de l'application
    • Fournisseur d'authentification autorisé

Ajoutez tous les utilisateurs finaux qui auront accès à votre application (en utilisant des fournisseurs d'authentification si votre entreprise dispose d'un fournisseur SSO), et utilisez les rôles et groupes pour gérer le contrôle d'accès aux données.

Front API

La Front API par défaut vérifie l'authentification, traite les requêtes de l'App en ajoutant des dynamic parameters et en implémentant des ACL.

Voici quelques scénarios où une API personnalisée est nécessaire.

  • Implémenter des transformers
  • Implémenter une "evolution" personnalisée
  • Implémenter des ACL complexes

Monitor

Le Control Center donne accès à :

Sauvegarde du projet

Configuration du projet

En savoir plus sur comment sauvegarder et restaurer la configuration de votre projet.

Export des données

En utilisant une action personnalisée du Data Processing Engine, vous pouvez exporter toutes vos données vers un bucket du Lakehouse Manager.

Aller plus loin

Si vous avez besoin d'une formation ou d'une assistance technique pour la mise en oeuvre de nos solutions, contactez votre commercial ou cliquez sur ce lien pour obtenir un devis et demander une analyse personnalisée de votre projet à nos experts de l’équipe Professional Services.

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.

1 : S3 est une marque déposée appartenant à Amazon Technologies, Inc. Les services de OVHcloud ne sont pas sponsorisés, approuvés, ou affiliés de quelque manière que ce soit.

Cette page vous a-t-elle aidé ?