Visão geral do FlexCache

Nesta página, você encontra uma visão geral do recurso FlexCache.

Sobre o FlexCache

O NetApp FlexCache acelera o acesso a dados, reduz a latência da WAN e diminui os custos de largura de banda da WAN para cargas de trabalho com leitura intensa, especialmente quando os clientes acessam repetidamente os mesmos dados. Quando você cria um volume do FlexCache, ele funciona como um cache remoto de um volume (de origem) atual. Esse cache armazena apenas dados ativos acessados com frequência do volume de origem.

Quando um volume do FlexCache recebe uma solicitação de leitura dos dados ativos que contém, ele responde mais rápido do que o volume de origem porque os dados têm uma distância menor para percorrer até o cliente. Se um volume do FlexCache receber uma solicitação de leitura de dados frios acessados com pouca frequência, ele vai recuperar os dados necessários do volume de origem, armazená-los e atender à solicitação do cliente. As solicitações de leitura subsequentes desses dados são veiculadas diretamente do volume do FlexCache. Após a primeira solicitação, os dados não precisam mais viajar pela rede nem ser veiculados por um sistema sobrecarregado.

Embora os aplicativos possam gravar em um volume do FlexCache, essas gravações são enviadas ao volume de origem para manter a coerência do cache.

A integração do FlexCache com o Google Cloud NetApp Volumes permite provisionar volumes de cache na sua rede do Google para melhorar o desempenho em ambientes de nuvem híbrida. Esse recurso oferece suporte à transição de cargas de trabalho para a nuvem híbrida, armazenando em cache os dados de um data center local para a nuvem.

Os volumes no NetApp Volumes não podem servir como volumes de origem.

O FlexCache tem os seguintes recursos:

Comportamento de gravação

Quando os dados são gravados em um volume do FlexCache, a operação de gravação é transmitida para o volume de origem. O cache reconhece a gravação assim que a origem confirma. A gravação em um arquivo invalida a cópia em cache, e o cache a recupera novamente no próximo acesso.

Invalidação de cache devido a atualizações de tempo de acesso

O ONTAP fornece um campo no nível do volume chamado -atime-update para gerenciar atualizações de tempo de acesso em arquivos e diretórios lidos usando READ, READLINK e READDIR.

Atualizações de tempo de acesso em volumes de origem ou de cache podem acionar invalidações de arquivos que reduzem a eficácia do cache e causam lentidão e alta latência no acesso a arquivos. Para evitar isso, desative as atualizações de tempo de acesso no volume de origem usando o comando ONTAP volume modify -atime-update.

Os volumes do FlexCache no NetApp Volumes herdam a configuração -atime-update da origem, o que pode aumentar as invalidações de cache. Portanto, recomendamos que você desative as atualizações de tempo de acesso no volume de origem.

Bloqueio de arquivos global

O bloqueio global de arquivos impõe bloqueios de negação de leitura e exclusivos de intervalo de bytes em arquivos em todos os caches e no volume de origem. Se esses bloqueios precisarem ser aplicados estritamente no seu fluxo de trabalho para manter a consistência dos dados ou evitar conflitos de acesso, ative o bloqueio global de arquivos.

Considerações

Ative o bloqueio global de arquivos apenas se você tiver uma conectividade confiável entre o cache e a origem. Conexões instáveis podem atrasar ou suspender modificações ou resultar em tempos limite se os volumes do FlexCache estiverem off-line.

  • Impacto na performance: ativar o bloqueio global de arquivos aumenta a latência porque toda leitura de cache aciona uma solicitação à origem para validação de bloqueio, aumentando o tempo de retorno (RTT).

  • Impacto na disponibilidade: se um volume de cache ficar off-line, as leituras dos arquivos dele serão bloqueadas em todos os outros volumes de cache, e as modificações no volume de origem serão suspensas até que todos os volumes do FlexCache voltem a ficar on-line.

Como o bloqueio global de arquivos pode afetar o desempenho e a confiabilidade do sistema, mantenha-o desativado, a menos que seu fluxo de trabalho exija explicitamente.

Notificações de mudança do CIFS

O protocolo SMB oferece um mecanismo para notificar os clientes SMB sobre as mudanças feitas em um volume por outros clientes. Isso permite que aplicativos, como o Windows File Explorer, atualizem as visualizações sem pesquisar o volume. Esse recurso opcional é útil para caches em que usuários interativos acessam arquivos em volumes SMB pelo Windows Explorer. Caso contrário, ele precisa ser desativado para reduzir a carga de notificações.

Pré-preenchimento do cache

Embora o NetApp Volumes não ofereça suporte à API para pré-população do cache, é possível fazer o pré-aquecimento do lado do cliente. Esse processo envolve a leitura dos arquivos para garantir que os dados sejam carregados no cache.

As guias a seguir mostram os comandos para pré-aquecer o cache de diferentes sistemas operacionais do cliente. Esses comandos também costumam pré-aquecer as listagens de diretórios.

Clientes Linux ou UNIX

Para pré-aquecer o cache:

find DIR_PATH -type f -print -exec sh -c 'cat "$1" > /dev/null' sh {} \;

Clientes Windows

Para pré-aquecer o cache:

for /f "delims=" %i in ('dir /b /s /a-d DIR_PATH') do @type "%i" >NUL

Para acelerar o processo de pré-população, use uma ferramenta de migração de dados como o XCP.

Para ler os dados e preencher o cache usando o XCP:

   xcp -md5 -q SERVER:/PATH
  

A seguir

Planejar volumes do FlexCache.