Orchestrator
2023.4
falso
Imagem de fundo do banner
Guia do usuário do Orchestrator
Última atualização 19 de abril de 2024

Mover dados de bucket entre provedores de armazenamento

Em alguns casos, pode ser necessário transferir dados do bucket de armazenamento de um provedor para outro.

Migrar dados do bucket do FileSystem para o armazenamento do Orchestrator

O seguinte procedimento abrange cenários em que você atualmente usa o FileSystem como provedor de armazenamento e deseja mudar para o Orchestrator, desde que seu tipo de armazenamento configurado seja o FileSystem. Por conveniência, vamos nos referir ao FileSystem como origem e ao Orchestrator como destino.

  1. Pause todos os processos que usam o bucket de origem.
  2. Crie um novo bucket do tipo Orchestrator na mesma pasta que o bucket de origem.
  3. Identifique o caminho de base para os buckets do Orchestrator. Abra o arquivo UiPath.Orchestrator.dll.config do Orchestrator e localize as chaves Storage.Type e Storage.Location. Se Storage.Type for FileSystem, o caminho de base é o que segue o prefixo RootPath.
  4. Identifique o caminho relativo do bucket de destino ao executar a seguinte consulta do SQL:
    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. Copie todos os arquivos e pastas do local do bucket de origem para o local do bucket de destino.
    • Para copiar os arquivos e as pastas, você precisa acessar a página Buckets de armazenamento, localizar o bucket de origem, selecionar Editar e clicar em Local dos Arquivos.
    • O local do bucket de destino tem o seguinte formato: {base path} + {relative path} (consulte Etapa 3. e Etapa 4., respectivamente).

      Observação: se o último segmento do caminho relativo (que deve ser uma pasta) não existir, crie-o antes de copiar os arquivos. Após a conclusão da operação de cópia, verifique se os arquivos estão visíveis no Orchestrator sob o novo bucket.
  6. Anote o nome do bucket de origem e exclua o bucket.
  7. Renomeie o bucket de destino ao executar a seguinte consulta SQL:
    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. Retome os processos pausados na Etapa 1.
    Observação: FileSystem permite que você tenha dois buckets usando o mesmo caminho raiz. Isso não é possível se o Orchestrator for seu provedor de armazenamento. Nesse cenário, você precisa recompilar seus fluxos de trabalho para usar um único bucket ou vários caminhos de pasta em suas atividades.
  • Migrar dados do bucket do FileSystem para o armazenamento do Orchestrator

Was this page helpful?

Obtenha a ajuda que você precisa
Aprendendo RPA - Cursos de automação
Fórum da comunidade da Uipath
Logotipo branco da Uipath
Confiança e segurança
© 2005-2024 UiPath. All rights reserved.