Aller au contenu

Gestion des projets

La recherche de projets s’effectue avec la zone de filtre située en bas à gauche de la hiérarchie. Le filtre recherche des correspondances dans les noms et les libellés des projets, puis affiche les résultats dans la hiérarchie au-dessus.

Pour créer un projet :

  1. Ouvrez Analyze
  2. Sélectionnez « Projets » dans la barre de menus supérieure
  3. Cliquez sur le bouton « Nouveau projet »
  4. Renseignez le formulaire, y compris la section « Contrôle d’accès »
  5. Cliquez sur « Créer »

Le projet est alors prêt : vous pouvez mettre à jour les autorisations d’accès, ajouter des propriétaires et créer des workflows.

Dans l’accueil du projet, à côté de Environnement de connexion, choisissez un Compte de documents par défaut pour le projet, ou Aucun pour l’effacer.

Dans le projet, chaque sélecteur de fichier affiche Project Default en premier, à la place du compte actuellement défini pour le projet. Cette entrée disparaît de la liste lorsque vous quittez le projet, lorsque le projet n’a plus de compte par défaut, lorsque ce compte a été supprimé ou lorsque vous n’y avez plus accès.

Une nouvelle étape de fichier présélectionne Project Default lorsque le projet en possède un. Les étapes existantes ne sont jamais réécrites : chacune conserve le compte avec lequel elle a été enregistrée tant que vous ne le modifiez pas vous-même, car un compte de documents est un choix propre à chaque étape, contrairement à l’environnement de connexion.

Une étape laissée sur Project Default utilise le compte par défaut du projet au moment de son exécution. Modifier le compte par défaut pendant une exécution n’affecte donc que les nœuds qui n’ont pas encore démarré, comme pour un changement d’environnement de connexion. Si une étape s’exécute sur Project Default alors que le projet n’a aucun compte par défaut, l’exécution échoue en nommant le projet, au lieu de se rabattre sur un autre compte.

Chaque objet d’un projet (étape, UDF, workflow, dimension, présentation enregistrée, éditeur de documents ou de données, et paramètres du projet lui-même) est couvert par des sauvegardes de l’historique des versions. Une sauvegarde n’est pas réalisée à chaque enregistrement : lorsqu’un objet est resté 30 secondes sans nouvel enregistrement, une sauvegarde de son état stabilisé est effectuée. Une série de modifications (plusieurs enregistrements rapprochés) produit donc une seule version contenant le résultat final, et non une version par enregistrement. L’enregistrement n’est jamais ralenti par l’attente d’une sauvegarde : le compte à rebours comme la sauvegarde elle-même s’exécutent en arrière-plan. Si vous avez besoin d’une version immédiatement, utilisez Back up now pour capturer l’état actuel sur-le-champ et attendre la fin de l’opération. Cette option est disponible dans l’interface, dans l’API et sous la forme de l’action backup des actions MCP *_versions. L’historique des versions est disponible dans toutes les offres, y compris Free.

Les versions passées permettent une récupération à un instant donné : vous pouvez restaurer un objet à une version antérieure. La restauration est refusée dans un projet verrouillé, comme toute autre modification.

Une version est restaurée en place. La restauration d’une version de projet, de dimension, de fonction définie par l’utilisateur, d’étape, de workflow ou d’éditeur de données remplace cet élément même, et désigner un autre élément comme cible est refusé, par exemple « A project version is restored in place. Leave the target out, or set it to this project. » La restauration est une modification de l’élément ; elle exige donc le même rôle que sa modification. Sur un projet qui restreint les lignes, la restauration du projet ou d’une dimension lue par une colonne restreinte exige un Architecte du projet. Pour récupérer d’anciennes données de table sous la forme d’une table distincte, restaurez un instantané de table vers une nouvelle table.

En complément de ce suivi automatique, les projets et leurs éléments permettent également de créer des versions. Créer une version est facile, et vous pouvez aussi fusionner les modifications d’une version vers une autre. C’est un moyen simple de conserver des instantanés ou de créer une version de développement, puis de fusionner ces modifications dans la version hors développement le moment venu. Consultez Collaborer : versions, comparaison et partage pour voir le versionnage, la comparaison et la fusion en pratique.

Les données de table ont leur propre historique, constitué des instantanés pris par le Lakehouse à chaque écriture, décrit dans Instantanés de table.

Restauration et conservation via l’assistant IA ou MCP

Section intitulée « Restauration et conservation via l’assistant IA ou MCP »

Via l’assistant IA ou MCP, dimension_versions restaure, conserve et libère une version de dimension grâce à son version_id, et restore_project ramène chaque dimension du projet à sa dernière sauvegarde. Chaque liste *_versions (étapes, UDF, workflows, dimensions, projets) affiche le version_id de chaque version et indique si elle est conservée. Une restore effectuée via n’importe quel outil *_versions, ou via l’API REST, restaure l’élément en place : omettez la cible, ou définissez-la sur l’élément lui-même. project_upsert peut déverrouiller un projet verrouillé et respecte if_match, de sorte qu’il échoue plutôt que d’écraser une modification effectuée depuis votre dernière lecture du projet.

La sécurité des projets a été simplifiée en trois types d’accès :

  • Tous les membres de l’espace de travail
  • Membres spécifiques uniquement
  • Groupes de sécurité spécifiques uniquement

Définir la sécurité d’un projet est simple :

  1. Ouvrez Analyze
  2. Sélectionnez « Projets »
  3. Cliquez sur l’icône de modification du projet que vous souhaitez restreindre
  4. Choisissez la restriction souhaitée sous « Contrôle d’accès »
  5. Cliquez sur « Mettre à jour »

Seul un Architecte du projet ou un administrateur du tenant peut modifier qui a accès à un projet : son type d’accès, les membres et les groupes de sécurité associés, ainsi que ses partages de données. Toute autre personne voit ces panneaux en lecture seule, avec la remarque « Only project Architects can change access. »

L’accès « Tous les membres de l’espace de travail » est l’option la plus simple : il donne accès à tous les membres de l’espace de travail et ne nécessite aucune affectation supplémentaire de membres.

Le paramètre d’accès « Membres spécifiques uniquement » exige d’affecter chaque membre au projet. Pour affecter des membres à un projet :

  1. Ouvrez Analyze
  2. Sélectionnez « Projets » dans la barre de menus supérieure
  3. Cliquez sur l’icône des membres
  4. Accordez l’accès aux membres en cochant la case en regard de leur nom dans la colonne « Accès »
  5. Cliquez sur « Mettre à jour »

Pour les clouds comptant un grand nombre de membres, cette approche peut demander plus d’efforts que souhaité ; c’est là que les groupes de sécurité deviennent utiles.

L’option « Groupes de sécurité spécifiques uniquement » permet d’accorder à des groupes de sécurité précis l’autorisation d’accéder au compte. Comme les restrictions d’accès reposent sur l’appartenance à un ou plusieurs groupes de sécurité, l’administration de l’accès au compte est beaucoup plus simple pour les groupes importants. C’est particulièrement utile en combinaison avec l’association automatique de groupes par authentification unique. En définissant les affectations de groupes des membres via l’authentification unique, ces groupes peuvent aussi activer et désactiver implicitement l’accès aux projets.

Pour modifier les groupes affectés :

  1. Ouvrez Analyze
  2. Sélectionnez « Projets » dans la barre de menus supérieure
  3. Cliquez sur l’icône des groupes de sécurité
  4. Accordez l’accès aux groupes de sécurité en cochant la case en regard de leur nom dans la colonne « Accès »
  5. Cliquez sur « Mettre à jour »

Un partage de données permet à un projet d’accéder aux tables d’un autre projet, par exemple pour que les étapes Import Project Table et Export Project Table puissent déplacer des données entre eux. Un partage est accordé par le projet dont les données sont partagées, à un autre projet :

  1. Ouvrez le projet dont vous souhaitez partager les données et accédez à son onglet Accueil.
  2. Sous Gestion du partage de données, cliquez sur Nouveau partage de données.
  3. Sous Sélectionner un projet, choisissez le projet autorisé à utiliser les données de ce projet.
  4. Sous Opérations autorisées, cochez Lecture, Écriture ou les deux, puis cliquez sur Ajouter un partage de données.

Supprimer le partage de données supprime un partage. Seul un Architecte du projet ou un administrateur du tenant peut ajouter ou supprimer les partages de données d’un projet.

Un partage est accordé à un projet ; il ne concerne donc que les membres de ce projet et ses workflows :

  • La lecture via un partage exige un rôle dans le projet auquel il a été accordé. Une personne sans rôle dans ce projet n’obtient rien du partage.
  • L’écriture via un partage (création d’une table, d’un dossier ou d’une dimension dans le projet qui partage) exige un partage en Écriture et le rôle Gestionnaire ou Architecte dans votre propre projet, c’est-à-dire le rôle qui permettrait d’y effectuer la même modification. Toute autre personne reçoit le message « Writing to this project through a data share needs a write share from it to your project, and the Manager or Architect role in your project. »

Les workflows s’exécutent avec l’identité propre à leur projet ; les étapes Import Project Table et Export Project Table fonctionnent donc via un partage quelle que soit la personne qui lance l’exécution.

Définition de différents rôles de visualisation

Section intitulée « Définition de différents rôles de visualisation »

Un projet nécessite souvent plusieurs transformations et tables pour réaliser des étapes intermédiaires, alors que le résultat final peut se limiter à quelques tables. Les membres n’ont pas toujours besoin de voir tous les éléments du projet, parfois seulement le produit final. PlaidCloud vous permet de définir différents rôles de visualisation pour désencombrer facilement l’affichage et contrôler la visibilité de chaque membre.

Il existe trois rôles de visualisation intégrés : Architecte, Gestionnaire et Explorateur

Le rôle Architecte est le plus simple, car il offre une visibilité et un contrôle complets sur les projets, les workflows, les tables, les variables, les éditeurs de données, les hiérarchies et les fonctions définies par l’utilisateur.

Les rôles Gestionnaire et Explorateur n’ont aucun privilège d’accès spécifique, mais ils peuvent être définis de façon personnalisée. En d’autres termes, vous pouvez choisir quels éléments sont visibles pour chaque groupe.

Vous pouvez faire de tout le monde un Architecte si vous estimez nécessaire de voir l’ensemble du projet ; sinon, vous pouvez désigner des membres comme membres de projet Gestionnaire et/ou Explorateur et contrôler ainsi la visibilité.

Pour définir un rôle différent :

  1. Ouvrez Analyze
  2. Sélectionnez « Projets »
  3. Cliquez sur l’icône des membres
  4. Sélectionnez le membre dont vous souhaitez modifier le rôle
  5. Double-cliquez sur son rôle actuel dans la colonne « Rôle »
  6. Sélectionnez le rôle souhaité
  7. Cliquez sur « Mettre à jour »

Lors de l’exécution d’un projet ou d’un workflow, il peut être utile de définir des variables pour les tâches récurrentes afin de réduire l’encombrement et de gagner du temps. Ces variables fonctionnent comme une variable algébrique ordinaire : vous définissez ce qu’elle représente et l’opération qui doit la suivre. PlaidCloud vous permet de définir ces variables au niveau du projet, ce qui affecte tous les workflows de ce projet, ou au niveau du workflow, ce qui n’affecte que ce workflow.

Pour définir une variable au niveau du projet :

  1. Ouvrez Analyze
  2. Sélectionnez « Projets »
  3. Cliquez sur l’icône Gérer les variables du projet

Depuis la table des variables, vous pouvez consulter les variables et afficher ou modifier leurs valeurs actuelles. Vous pouvez aussi ajouter de nouvelles variables ou supprimer des variables existantes en cliquant sur le bouton « Nouvelle variable de projet ».

Copier le projet copie un projet, en entier ou seulement les parties que vous choisissez, vers un tout nouveau projet ou vers un projet existant.

Pour copier un projet :

  1. Ouvrez Analyze
  2. Sélectionnez « Projets »
  3. Sélectionnez le projet que vous souhaitez copier
  4. Cliquez sur le bouton Actions et choisissez Copier le projet
  5. Choisissez la cible, sélectionnez ce qui doit être copié et la quantité de données, puis cliquez sur Copier le projet
  6. Vérifiez le récapitulatif Vérifier avant de copier et cliquez sur Démarrer la copie

L’arborescence de sélection répertorie le contenu du projet par type : workflows, étapes, tables, dimensions, éditeurs de données, fonctions définies par l’utilisateur. Laissez tout coché pour copier l’ensemble du projet, ou cochez uniquement les parties souhaitées.

Vous n’avez pas à déterminer de quoi dépendent ces parties. Tout ce que vous cochez emporte ses dépendances : les tables qu’une étape lit et écrit, les dimensions qu’elle charge ou sur lesquelles elle alloue, les fonctions définies par l’utilisateur qu’elle appelle, ainsi que tout sous-workflow ou macro qu’elle invoque. Les capteurs d’un workflow accompagnent le workflow.

Les capteurs copiés arrivent désactivés. Rien ne se déclenche sur la copie tant que vous n’avez pas activé chaque capteur dans le projet de destination. Une importation qui écrase les éléments en double n’ajoute pas de second capteur lorsque le workflow de destination en possède déjà un.

Donnez au nouveau projet un nom et un ID. L’ID devient le nom de son schéma et ne peut plus être modifié par la suite.

Les planifications arrivent en pause. Lorsque vous copiez un projet entier vers un nouveau projet, les événements planifiés de chaque workflow arrivent en pause, afin que la copie ne commence pas à les exécuter d’elle-même. Une fois la copie terminée, un message liste les événements qui étaient actifs dans l’original. Pour en exécuter un sur la copie, sélectionnez-le dans Outils > Planificateur d’événements et cliquez sur Activer la sélection ; consultez Mise en pause d’un événement.

Choisissez la cible dans la liste des projets. La copie s’ajoute à ce projet au lieu de le remplacer.

Vous devez pouvoir modifier la cible. Une copie vers un projet dans lequel vous n’avez aucun rôle est refusée, tout comme une copie vers un projet verrouillé pour empêcher les modifications ; la vérification a lieu avant toute lecture ou écriture, de sorte qu’une copie refusée laisse la cible intacte. Un projet ne peut pas non plus être copié vers lui-même.

Copier un projet qui restreint les lignes exige un Architecte du projet. La copie est un nouveau projet sans restriction d’accès aux lignes, et elle vous le signale : « This copy is not row-restricted. » Configurez l’accès aux lignes sur la copie avant de la partager. Copier vers un projet existant qui restreint les lignes exige de même l’un de ses Architectes ou un administrateur du tenant.

La cible conserve ses propres paramètres. Son nom, son ID, son environnement de connexion aux données, ses valeurs de stockage par défaut, son compte de documents, son type d’accès, ses listes d’accès et ses autorisations d’accès aux lignes restent tels quels. Seul le contenu que vous avez sélectionné est importé.

Une étape définie sur Project Default transporte ce paramètre, et non un compte : une fois copiée, elle utilise le compte par défaut du projet cible, et non celui qu’elle avait dans la source.

Lorsqu’un élément entrant est le même élément qu’un élément déjà présent dans la cible, vous choisissez ce qui se passe :

  • Écraser les éléments en double avec les données entrantes : la version entrante remplace celle de la cible.
  • Créer une copie des éléments en double : la cible conserve ce qu’elle a, et l’élément entrant est ajouté à côté avec copy ajouté à son nom, suivi d’un compteur si ce nom est lui aussi déjà pris.

Les variables de projet et de workflow font exception à Créer une copie : une variable est identifiée par son nom ; il est donc impossible d’en ajouter une seconde copie sans la renommer en un nom auquel rien ne fait référence. Lorsque la cible définit déjà une variable que la copie transporte aussi, la valeur propre à la cible est conservée et la copie vous indique quelles variables elle a laissées intactes. Écraser traite les variables comme tout le reste et les remplace.

Cette correspondance se fait par identité, et non par nom : un élément issu à l’origine du même projet est reconnu comme le même élément, tandis que deux éléments qui portent simplement le même nom sont traités comme des éléments différents et seront tous deux présents ensuite.

Mode Ce qui est copié
Structure uniquement Les tables, les étapes et le reste de la sélection, sans aucune ligne.
Données complètes Toutes les lignes de chaque table, sur le même lakehouse et entre lakehouses.
Échantillon Jusqu’au nombre de lignes que vous saisissez pour chaque table, uniquement pour un nouveau projet. Ce nombre peut aller de 1 à 1 000 000.

Une table échantillonnée contient au plus ce nombre de lignes, ou toutes ses lignes si elle en compte moins.

Avant toute copie, Vérifier avant de copier récapitule l’opération : le projet source, la destination, le mode de données, le nombre de tables et de vues, la taille, une durée estimée, le lakehouse source et cible, ainsi que les éventuels avertissements sous À noter. Cliquez sur Démarrer la copie pour commencer, ou sur Annuler pour revenir en arrière et modifier la sélection.

Une copie réalisée avec des données est privée pour la personne qui l’a effectuée. Partagez-la depuis le nouveau projet lorsque vous êtes prêt. Une copie d’un projet doté de la sécurité au niveau des lignes reste privée pour la même raison.

Copier des données vers un projet existant exige un accès en écriture à ce projet.

À la fin de la copie, une fenêtre Copier les résultats liste le résultat de chaque table par nom, avec la raison de l’échec le cas échéant. Cliquez sur Réessayer les tables en échec pour copier à nouveau uniquement ces tables ; le contenu d’une table réessayée est remplacé. Vous êtes averti, par message et par e-mail, lorsqu’une copie se termine ou échoue, et vous pouvez rouvrir les résultats depuis le message, ou plus tard en sélectionnant la copie dans l’onglet Projets et en choisissant Voir le résultat de l’importation ou de la copie dans le menu Actions.

Les résultats restent attachés à la copie jusqu’à ce que quelqu’un les ignore. Une fois la copie terminée, cliquez sur Ignorer le résultat pour les supprimer pour toutes les personnes qui peuvent ouvrir le projet. Rien ne change dans le projet, mais ses tables en échec ne peuvent plus être réessayées depuis la fenêtre. Ignorer un résultat exige un accès en modification au projet, et celui-ci ne doit pas être verrouillé.

Les étapes de workflow d’un projet font référence à des tables et à d’autres objets de ce projet. Mettre à jour les références réécrit ces références pour qu’elles pointent vers la copie plutôt que vers l’original, ce qui est presque toujours souhaitable et explique que l’option soit activée par défaut. La désactiver laisse les étapes copiées pointer vers le projet dont elles proviennent.

Lorsqu’un projet ou un workflow est dynamique, tenir à jour une documentation détaillée devient difficile. Pour résoudre ce problème, PlaidCloud permet de générer un rapport au niveau du projet qui documente en détail les workflows, les étapes de workflow, les transformations définies par l’utilisateur, les variables et les tables. Ce rapport est généré à la demande et reflète l’état actuel du projet.

Pour télécharger le rapport :

  1. Ouvrez Analyze
  2. Sélectionnez « Projets »
  3. Cliquez sur l’icône de rapport