O Data Domain Operating System não oferece suporte à redistribuição proativa de dados no armazenamento após a expansão da capacidade do Data Domain File System

Summary: Este artigo explica que não há suporte integrado no Data Domain Operating System (DDOS) para redistribuição de dados no armazenamento depois de expandir o Data Domain File System (DDFS) em um Data Domain Restorer (DDR) ...

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Instructions

Como acontece com muitos storage arrays, a capacidade da maioria dos modelos de Data Domain Restorer (DDR) pode ser aumentada adicionando gavetas de compartimento de armazenamento externo (ES30, DS60) ao sistema e, em seguida, expandindo o Data Domain File System (DDFS) nessas gavetas de compartimento. Quando isso é realizado:
  • As gavetas dos novos compartimentos estão fisicamente conectadas (com cabo ligado)
  • O Data Domain Operating System (DDOS) examina novamente o armazenamento para identificar a existência de novas gavetas de compartimento
  • Essas novas gavetas de compartimento são adicionadas a um nível de armazenamento dentro do DDR (o nível ativo ou uma unidade de arquivo específica)
  • Esse nível pode ser expandido on-line sem a necessidade de uma interrupção para o DDFS
  • Todos os novos dados gravados nesse nível de armazenamento são gravados em gavetas existentes e novas
  • Os dados das gavetas existentes, no entanto, não são rebalanceados nas novas gavetas de compartimento
Para explicar melhor:
  • No DDOS, a unidade de armazenamento de dados é um "contêiner" de 4,5 Mb
  • À medida que são criados, os contêineres de 4,5 Mb são gravados em todas as gavetas dos compartimentos na unidade de arquivo do nível em um sistema de rodízio
  • Quando gavetas de compartimento adicionais são adicionadas a uma unidade de arquivo de nível, o DDFS começa a gravar novos contêineres de 4,5 Mb nesses compartimentos, além dos compartimentos existentes (os novos compartimentos são incluídos quando o contêiner de rodízio é gravado)
  • No entanto, o DDOS não faz nenhuma tentativa específica (nem oferece nenhuma funcionalidade específica) de migrar contêineres existentes no nível de compartimentos de gavetas existentes para novos
Isso significa que a adição de compartimentos de gaveta pode deixar os dados "desequilibrados" no armazenamento conectado. Por exemplo:
  • Inicialmente, um DDR tem um único compartimento em seu nível ativo, que está 90% cheio
  • Um novo compartimento é adicionado ao nível ativo e o DDFS é expandido para esse compartimento
  • As gravações dos contêineres de 4,5 Mb recém-criados agora são rodízios nos compartimentos novos e existentes
  • Isso deixa o compartimento existente sem espaço livre, enquanto o compartimento recém-adicionado está quase vazio
Nesse cenário, muitos storage arrays permitem que um administrador redistribua os dados entre compartimentos conectados, migre proativamente alguns dados de compartimentos existentes para compartimentos recém-adicionados para garantir que a capacidade utilizada de todos os compartimentos seja aproximadamente igual). No entanto, note que o DDOS NÃO oferece essa funcionalidade e, devido ao design do DDFS, ela não é necessária, pois o redistribuição de dados ocorre naturalmente ao longo do tempo.

A redistribuição de dados é realizada por duas operações:
  • Limpeza da coleta de lixo
  • Reparo de localidade
Cada uma dessas operações e como elas causam a redistribuição automática dos dados são discutidas em mais detalhes abaixo.

Limpeza da coleta de lixo

A limpeza da coleta de lixo (GC) é uma atividade agendada que é executada regularmente em um DDR (por padrão, uma vez por semana no nível ativo e, supondo que a recuperação de espaço esteja habilitada, quando necessário em relação às unidades de arquivo). Quando ela é executada:
  • Identifica quais dados físicos dentro da unidade de arquivo de nível estão "ativos" (usados por um ou mais arquivos no file system ou em objetos, como snapshots) ou "inativos" (não referenciados por nenhum objeto, portanto, supérfluo para o sistema)
  • Determina os contêineres de 4,5 Mb que armazenam a maioria dos dados "inativos" dentro da unidade de arquivo de nível
  • Lê esses contêineres de 4,5 Mb e extrai todos os dados "em tempo real" que eles contêm, isso é então "copiado" para contêineres de 4,5 Mb recém-criados que são gravados em todas as gavetas na unidade de arquivo de nível
  • Exclui os contêineres antigos de 4,5 Mb, removendo assim os dados inativos que eles contêm e liberando espaço subjacente no disco para reutilização
Quando a GC é executada em um sistema com qualquer forma de desequilíbrio de dados, espera-se que a maioria dos dados antigos (e, portanto, a maioria dos dados inativos) sejam mantidos em compartimentos de gaveta mais antigos dentro da unidade de arquivo de nível. Como resultado, a maioria dos contêineres que são lidos, copiados e excluídos está em compartimentos de gaveta mais antigos. Os contêineres recém-criados, no entanto, são gravados em um formato de rodízio entre todas as gavetas na nível. Como resultado, a maior parte do espaço liberado pela GC está em gavetas mais antigas, enquanto o espaço recém-consumido está em todas as gavetas.

Como um exemplo simples:
  • O nível ativo de um DDR contém duas gavetas, a primeira a contém 10.000 contêineres de 4,5 Mb, enquanto a segunda contém 100 contêineres de 4,5 Mb (para cada contêiner na segunda gaveta, há 100 contêineres na primeira gaveta)
  • A GC é executada e copia dados de 5.000 contêineres na primeira gaveta
  • Os dados ativos nesses 5.000 contêineres fazem com que 1.000 novos contêineres de 4,5 Mb sejam criados
  • Esses 1.000 novos contêineres de 4,5 Mb são gravados em ambas as prateleiras
  • Após a conclusão do GC, a primeira gaveta comporta 5.500 contêineres de 4,5 Mb, enquanto a segunda gaveta comporta 600 contêineres (para cada contêiner na segunda gaveta, há aproximadamente nove contêineres na primeira gaveta)
  • Em uma única execução de GC, o desequilíbrio de contêineres entre a primeira e a segunda gavetas foi reduzido por um fator de 10. Espera-se que isso seja reduzido ainda mais durante as execuções subsequentes da GC, o que significa que os dados serão redistribuídos entre as gavetas naturalmente ao longo do tempo
Reparo de localidade:

Quando um arquivo é gravado em um DDR, ocorrem as seguintes operações de alto nível:
  • O arquivo é dividido em fragmentos lógicos (chamados segmentos) de 4–12 Kb de tamanho
  • Cada segmento é verificado para ver se ele já existe no disco dentro do nível em que o arquivo está sendo gravado
  • Se o segmento já existir, ele será um dado duplicado e o segmento dentro do arquivo recém-gravado será substituído por um ponteiro para os dados existentes no disco
  • Se o segmento não existir, trata-se de dados exclusivos e, portanto, serão compactados em um novo contêiner de 4,5 Mb e gravados no disco
Todos os arquivos têm o conceito de "localidade", ou seja, o quanto os segmentos de dados referenciados por esse arquivo são sequenciais no disco no DDR. Obviamente, é provável que os arquivos que apresentam altas taxas de desduplicação (contêm uma grande quantidade de dados duplicados) terão uma localidade pior do que um arquivo único, pois, quando ingeridos, seus dados são substituídos por ponteiros para dados existentes que podem estar espalhados por contêineres/discos dentro da unidade de arquivo de nível correspondente.

Alcançar um bom desempenho de leitura de dados em um DDR requer que o arquivo tenha boa "localidade" (seus dados são relativamente sequenciais no disco) para que os algoritmos de leitura antecipada do DDFS possam funcionar de forma ideal. Note também que o DDFS pressupõe que o arquivo com maior probabilidade de ser lido (para restauração ou replicação) é a cópia mais recente de um determinado backup. Como resultado, para certos tipos de dados (como sintéticos virtuais), um processo chamado "reparo de localidade" é executado para "otimizar" a localidade dos dados de arquivos recém-gravados. Quando executado, o reparo de localidade:
  • Examina os dados referenciados pelo arquivo procurando seções em que os dados não são sequenciais no disco (exibe uma localidade ruim)
  • Lê esses dados não sequenciais do disco e grava-os novamente de modo sequencial (como dados duplicados) em contêineres de 4,5 Mb recém-criados
Em seguida, espera-se que a cópia antiga (não sequencial) dos dados duplicados seja identificada como "inativa" durante a próxima execução da GC e removida do sistema. Como resultado:
  • Em sistemas em que há um desequilíbrio de dados, espera-se que a maioria dos dados não sequenciais antigos existam em gavetas de compartimentos antigas mais cheias
  • Quando esses dados são regravados de modo sequencial como dados duplicados, eles são colocados em novos contêineres de 4,5 Mb que são alternados em todos os compartimentos no nível correspondente
  • Como resultado, a maioria dos "inativos" (dados antigos duplicados) criados pelo reparo de localidade existe em gavetas antigas mais cheias
  • Quando a GC é executada, a maioria dos dados "inativos" é encontrada em gavetas antigas mais cheias e removida (liberando espaço nessas gavetas), conforme descrito acima
Conclusão

Como resultado, por meio do uso normal da funcionalidade de reparo de localidade e limpeza (GC), um DDR pode redistribuir dados de forma transparente entre as gavetas ao longo do tempo. Isso acontece sem entrada adicional dos administradores e significa que não há necessidade da funcionalidade dedicada de operações de redistribuição de dados, como às vezes visto em outros storage arrays. Para aumentar a velocidade com que a redistribuição ocorre, é necessário, portanto:
  • Aumentar a taxa de "churns" de dados no DDR
  • Aumentar o volume de dados que são reparados localmente no DDR
Para discutir mais detalhadamente qualquer uma dessas opções, entre em contato com o provedor de suporte contratado citando os detalhes deste artigo.

Affected Products

Data Domain
Article Properties
Article Number: 000019150
Article Type: How To
Last Modified: 29 Jul 2025
Version:  4
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.