Orchestrator
2022.10
False
Image de fond de la bannière
Guide de l'utilisateur d'Orchestrator
Dernière mise à jour 19 avr. 2024

Déplacement des données de compartiment entre les fournisseurs de stockage

Dans certains cas, il peut être nécessaire de transférer des données de stockage d’un fournisseur à un autre.

Migration des données de compartiment de FileSystem vers la base de données Orchestrator

La procédure suivante couvre les scénarios où FileSystem est votre fournisseur de stockage actuel et où vous souhaitez passer à Orchestrator, à condition que son type de stockage configuré soit FileSystem. Par souci de commodité, nous nous référerons à FileSystem comme source et à Orchestrator comme destination.

  1. Mettez en pause tous les processus qui utilisent le compartiment source.
  2. Créez un nouveau compartiment de type Orchestrator dans le même dossier que le compartiment source.
  3. Identifiez le chemin de base pour les compartiments Orchestrator. Ouvrez le fichier Orchestrator UiPath.Orchestrator.dll.config et localisez les clés Storage.Type et Storage.Location. Si Storage.Type est FileSystem, alors le chemin de base reprend ce qui suit le préfixe RootPath.
  4. Identifiez le chemin relatif du compartiment de destination en exécutant la requête SQL suivante :
    declare @tenancyName nvarchar(64) = N'{tenant name}'
    declare @folderFullyQualifiedName nvarchar(1000) = N'{folder full path}'
    declare @destinationBucketName nvarchar(128) = N'{destination bucket name}'
    select '\)\)Orchestrator-' + LOWER(t.[Key]) + '\)\)BlobFilePersistence\)\)' +
        LOWER((select cast(b.[Identifier] as nvarchar(128))
            from dbo.Buckets b
            inner join dbo.OrganizationUnits ou
                on ou.Id = b.OrganizationUnitId
            where ou.TenantId = t.Id and ou.IsDeleted = 0 and ou.[FullyQualifiedName] = @folderFullyQualifiedName
                and b.TenantId = t.Id and b.IsDeleted = 0 and b.[Name] = @destinationBucketName))
    from dbo.Tenants t
    where t.TenancyName = @tenancyName and t.IsDeleted = 0declare @tenancyName nvarchar(64) = N'{tenant name}'
    declare @folderFullyQualifiedName nvarchar(1000) = N'{folder full path}'
    declare @destinationBucketName nvarchar(128) = N'{destination bucket name}'
    select '\)\)Orchestrator-' + LOWER(t.[Key]) + '\)\)BlobFilePersistence\)\)' +
        LOWER((select cast(b.[Identifier] as nvarchar(128))
            from dbo.Buckets b
            inner join dbo.OrganizationUnits ou
                on ou.Id = b.OrganizationUnitId
            where ou.TenantId = t.Id and ou.IsDeleted = 0 and ou.[FullyQualifiedName] = @folderFullyQualifiedName
                and b.TenantId = t.Id and b.IsDeleted = 0 and b.[Name] = @destinationBucketName))
    from dbo.Tenants t
    where t.TenancyName = @tenancyName and t.IsDeleted = 0
  5. Copiez tous les fichiers et dossiers de l’emplacement du compartiment source dans l’emplacement du compartiment de destination.
    • Pour copier les fichiers et les dossiers, vous devez vous rendre sur la page Compartiments de stockage (Storage Buckets), localiser le compartiment source, sélectionner Modifier (Edit),puis cliquer sur Emplacement des fichiers (Files location).
    • L’emplacement du compartiment de destination possède le format suivant : {chemin de base} + {chemin relatif} (voir respectivement Étape 3. et Étape 4.).

      Remarque : si le dernier segment du chemin relatif (qui devrait être un dossier) n'existe pas, créez-le avant de copier les fichiers. Une fois l'opération de copie terminée, vérifiez que les fichiers sont visibles dans Orchestrator sous le nouveau compartiment.
  6. Notez le nom du compartiment source et supprimez le compartiment.
  7. Renommez le compartiment de destination en exécutant la requête SQL suivante :
    declare @tenantName nvarchar(64) = N'{tenant name}'
    declare @folderFullyQualifiedName nvarchar(1000) = N'{folder full path}'
    declare @destinationBucketName nvarchar(128) = N'{destination bucket name}'
    declare @originalBucketName nvarchar(128) = N'{source bucket name}'
    update b
    set b.[Name] = @originalBucketName
    from dbo.Buckets b
    inner join dbo.Tenants t
        on b.TenantId = t.Id
    inner join dbo.OrganizationUnits ou
        on b.OrganizationUnitId = ou.Id
    where b.TenantId = t.Id and b.IsDeleted = 0 and b.[Name] = @destinationBucketName
        and ou.TenantId = t.Id and ou.IsDeleted = 0 and ou.FullyQualifiedName = @folderFullyQualifiedNamedeclare @tenantName nvarchar(64) = N'{tenant name}'
    declare @folderFullyQualifiedName nvarchar(1000) = N'{folder full path}'
    declare @destinationBucketName nvarchar(128) = N'{destination bucket name}'
    declare @originalBucketName nvarchar(128) = N'{source bucket name}'
    update b
    set b.[Name] = @originalBucketName
    from dbo.Buckets b
    inner join dbo.Tenants t
        on b.TenantId = t.Id
    inner join dbo.OrganizationUnits ou
        on b.OrganizationUnitId = ou.Id
    where b.TenantId = t.Id and b.IsDeleted = 0 and b.[Name] = @destinationBucketName
        and ou.TenantId = t.Id and ou.IsDeleted = 0 and ou.FullyQualifiedName = @folderFullyQualifiedName
  8. Redémarrez les processus mis en pause à l’étape 1.
    Remarque : FileSystem vous permet d'avoir deux compartiments utilisant le même chemin racine. Cela n'est pas possible si Orchestrator est votre fournisseur de stockage. Dans ce scénario, vous devez recompiler vos workflows pour utiliser un seul compartiment ou plusieurs chemins de dossiers dans leurs activités.

Cette page vous a-t-elle été utile ?

Obtenez l'aide dont vous avez besoin
Formation RPA - Cours d'automatisation
Forum de la communauté UiPath
Logo Uipath blanc
Confiance et sécurité
© 2005-2024 UiPath. All rights reserved.