Vista geral da FlexCache

Esta página fornece uma vista geral da funcionalidade FlexCache.

Acerca da FlexCache

O NetApp FlexCache acelera o acesso aos dados, reduz a latência da WAN e diminui os custos de largura de banda da WAN para cargas de trabalho com leitura intensiva, especialmente quando os clientes acedem repetidamente aos mesmos dados. Quando cria um volume FlexCache, este funciona como uma cache remota de um volume existente (de origem). Esta cache armazena apenas dados ativos acedidos frequentemente do volume de origem.

Quando um volume FlexCache recebe um pedido de leitura de dados populares que contém, responde mais rapidamente do que o volume de origem porque os dados têm uma distância mais curta a percorrer até ao cliente. Se um volume da FlexCache receber um pedido de leitura de dados frios acedidos com pouca frequência, este obtém os dados necessários do volume de origem, armazena-os e, em seguida, processa o pedido do cliente. Os pedidos de leitura subsequentes desses dados são, em seguida, publicados diretamente a partir do volume da FlexCache. Após o primeiro pedido, os dados já não precisam de transitar pela rede nem de ser fornecidos a partir de um sistema com muita carga.

Embora as aplicações possam escrever num volume FlexCache, estas escritas são enviadas para o volume de origem para manter a coerência da cache.

A integração do FlexCache com os volumes NetApp do Google Cloud permite-lhe aprovisionar volumes de cache na sua rede Google para melhorar o desempenho dos ambientes de nuvem híbrida. Esta funcionalidade suporta a transição de cargas de trabalho para a nuvem híbrida através da colocação em cache de dados de um centro de dados nas instalações para a nuvem.

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

A FlexCache tem as seguintes capacidades:

Comportamento de escrita

Quando os dados são gravados num volume FlexCache, a operação de gravação é transmitida para o volume de origem. A cache confirma a gravação assim que a origem a confirma. A escrita num ficheiro invalida a respetiva cópia em cache, e a cache volta a obtê-la no acesso seguinte.

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

O ONTAP fornece um campo ao nível do volume denominado -atime-update para gerir as atualizações da hora de acesso em ficheiros e diretórios que são lidos através de READ, READLINK e READDIR.

As atualizações da hora de acesso nos volumes de origem ou de cache podem acionar invalidações de ficheiros que reduzem a eficácia da cache e causam um desempenho lento e uma latência elevada para o acesso a ficheiros. Para evitar esta situação, desative as atualizações da hora de acesso no volume de origem através do comando volume modify -atime-update do ONTAP.

Os volumes FlexCache nos volumes NetApp herdam a definição -atime-update da origem, o que pode aumentar as invalidações da cache. Por conseguinte, recomendamos que desative as atualizações da hora de acesso no volume de origem.

Bloqueio de ficheiros global

O bloqueio de ficheiros global aplica bloqueios de leitura recusada e de intervalo de bytes exclusivos em ficheiros em todas as caches e no volume de origem. Se estes bloqueios tiverem de ser rigorosamente aplicados no seu fluxo de trabalho para manter a consistência dos dados ou evitar conflitos de acesso, ative o bloqueio de ficheiros global.

Considerações

Ative o bloqueio de ficheiros global apenas se tiver uma conetividade fiável entre a cache e a origem. As ligações instáveis podem atrasar ou suspender as modificações, ou resultar em tempos limite se os volumes FlexCache estiverem offline.

  • Impacto no desempenho: a ativação do bloqueio de ficheiros global aumenta a latência porque cada leitura da cache aciona um pedido à origem para validação do bloqueio, aumentando o tempo de ida e volta (RTT).

  • Impacto na disponibilidade: se um volume de cache ficar offline, as leituras dos respetivos ficheiros são bloqueadas em todos os outros volumes de cache, e as modificações ao volume de origem são suspensas até que todos os volumes do FlexCache voltem a ficar online.

Uma vez que o bloqueio de ficheiros global pode afetar o desempenho e a fiabilidade do sistema, mantenha-o desativado, a menos que o seu fluxo de trabalho o exija explicitamente.

Notificações de alterações do CIFS

O protocolo SMB fornece um mecanismo para notificar os clientes SMB de alterações feitas a um volume por outros clientes. Isto permite que as aplicações, como o Explorador de ficheiros do Windows, atualizem as respetivas vistas sem sondar o volume. Esta funcionalidade opcional é útil para caches em que os utilizadores interativos acedem a ficheiros em volumes SMB através do Explorador do Windows. Caso contrário, deve ser desativada para reduzir a carga de notificações.

Pré-preenchimento da cache

Embora os volumes da NetApp não ofereçam suporte de API para pré-preencher a cache, pode pré-aquecê-la do lado do cliente. Este processo envolve a leitura dos ficheiros para garantir que os respetivos dados são carregados na cache.

Os separadores seguintes mostram os comandos para pré-aquecer a cache para diferentes sistemas operativos do cliente. Normalmente, estes comandos também preparam as fichas do diretório.

Clientes Linux ou UNIX

Para pré-aquecer a cache:

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

Clientes Windows

Para pré-aquecer a cache:

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

Para acelerar o processo de pré-preenchimento, considere usar uma ferramenta de migração de dados, como o XCP.

Para ler os dados e preencher a cache através do XCP:

   xcp -md5 -q SERVER:/PATH
  

O que se segue?

Planeie volumes da FlexCache.