Todos os produtos
Search
Central de documentação

Object Storage Service:Data cache

Última atualização: Sep 22, 2026

O cache de dados do ossfs é adequado para cenários com leitura frequente de um pequeno volume de dados. Para reduzir efetivamente a latência, ative o cache de dados do ossfs, o que melhora a eficiência das operações com objetos. Este tópico descreve como configurar e usar o cache de dados do ossfs de forma eficaz. Para começar, configure as opções abaixo.

Importante

Ao usar dados em cache, preste atenção à consistência e à atualidade dos dados. Portanto, não ative o cache de dados do ossfs em cenários com alta exigência de desempenho em tempo real dos dados.

Contexto

Por padrão, ao acessar objetos com o ossfs, a ferramenta cria um arquivo temporário chamado tmpfile no diretório /tmp para atuar como cache de disco, de forma invisível ao usuário. O sistema exclui esse arquivo temporário automaticamente após o fechamento de todos os handles de arquivo abertos. Contudo, em cenários de negócios com acesso frequente aos mesmos objetos, esse mecanismo exige baixar os objetos do OSS a cada operação de abertura, leitura e fechamento. Isso consome uma grande quantidade de throughput do OSS.

Para aliviar a pressão sobre o throughput do armazenamento remoto causada pela leitura frequente de dados quentes, ative o cache de dados do ossfs, o que reduz a latência de leitura e diminui o número de acessos ao armazenamento remoto.

Cenários

O cache de dados do ossfs é adequado para cenários com leitura frequente de um pequeno volume de dados. Certifique-se de que a capacidade do disco local é suficiente para armazenar os dados quentes.

Comparação entre modos

A tabela a seguir detalha as diferenças entre o modo padrão do ossfs (sem cache de dados) e o modo com cache de dados. No modo padrão, use a opção -ouse_cache=path para mover o arquivo temporário do diretório -oensure_diskfree=1024 para o diretório do disco de dados. Isso evita o consumo da capacidade do disco do sistema.

Modo

Operação de leitura

Operação de gravação

Desempenho

Modo padrão do ossfs (sem cache de dados)

A cada leitura, o sistema baixa os dados do bucket para um arquivo temporário e os lê a partir dele. O sistema exclui o arquivo temporário ao fechar todos os handles de arquivo.

O sistema gera um arquivo temporário e o exclui apenas após o fechamento de todos os handles de arquivo. Gravar muitos arquivos nesse arquivo temporário consome grande capacidade de disco.

Se a capacidade do disco local for insuficiente, o sistema faz o upload antecipado das partes do arquivo temporário e limpa o cache. Nesse caso, a velocidade de gravação fica limitada à velocidade de upload do OSS.

O desempenho deste modo varia de acordo com o desempenho do disco e a latência do OSS.

Cache de dados do ossfs

Na primeira leitura de objetos do bucket, o sistema cria um arquivo no caminho do cache e armazena os objetos nele. Você pode ler os objetos repetidamente a partir desse arquivo.

O sistema grava os dados primeiro no cache local. Quando um arquivo é atualizado ou fechado, o sistema faz o upload dele para o bucket. Se a capacidade do cache local for insuficiente, o ossfs faz o upload antecipado das partes do arquivo e limpa o cache. Nesse caso, a velocidade de gravação fica limitada à velocidade de upload do OSS.

Se houver cache local, o desempenho varia de acordo com o desempenho do disco. Se não houver cache local, o desempenho será igual ao do modo padrão. Nesse caso, o desempenho varia de acordo com o desempenho do disco e a latência do OSS.

Opções de configuração

A tabela a seguir descreve os parâmetros de configuração do cache de dados do ossfs.

Parâmetro

Descrição

Valor padrão

use_cache

Ativa o cache de dados do ossfs e especifica o caminho do cache de dados. Por padrão, o cache de dados do ossfs está desativado.

Por exemplo, ao especificar -odel_cache, o cache de dados do ossfs é ativado e o caminho do cache de dados é definido como path. Por isso, especifique o caminho de acordo com os requisitos do seu negócio. Exemplo: /tmp/your_foldername.

Nenhum

ensure_diskfree

A quantidade de capacidade de disco reservada para evitar que o disco fique totalmente cheio e afete a gravação de dados por outras aplicações. Por padrão, nenhuma capacidade é reservada. Unidade: MB.

Para isso, defina a capacidade de disco reservada do ossfs como 1024 MB e especifique o parâmetro use_cache.

Nenhum

del_cache

Especifica se o cache local será excluído. Por padrão, o sistema não o exclui. Se necessário, exclua o cache local manualmente.

Caso você especifique -omax_dirty_data=2000, o ossfs os exclui. Caso deseje, exclua os arquivos em cache no diretório especificado pela opção ensure_diskfree.

Nenhum

max_dirty_data

Especifica o limiar de tamanho para o upload de um arquivo. Se o tamanho do arquivo exceder esse valor, o sistema faz o upload mesmo que o arquivo não esteja fechado. Unidade: MB.

Para isso, defina que um arquivo maior que 2.000 MB será enviado mesmo se não estiver fechado e especifique o valor ensure_diskfree.

5120

Mecanismo de gerenciamento de cache de dados

  • No modo de cache de dados do ossfs, o sistema não exclui o arquivo em cache no disco quando o arquivo é fechado. Isso permite usar o arquivo em cache diretamente em leituras futuras.

  • Se a capacidade do cache for insuficiente, o sistema exclui os dados em cache.

    Durante as operações de leitura e gravação, o sistema verifica o uso da capacidade do disco. Caso a capacidade seja insuficiente, o sistema aciona a operação de recuperação de dados. O sistema executa a recuperação de dados usando um único arquivo em cache como unidade mínima.

Recomendações

  • Se você acessa objetos quentes com frequência, ative o cache de dados do ossfs e configure o caminho do cache. Assim, você pode obter os objetos diretamente do cache local durante leituras repetidas. Isso reduz a latência de acesso, acelera o carregamento de objetos acessados com frequência e diminui o número de requisições ao oss.

  • Se o disco que armazena o cache também for usado por outras aplicações, especifique a opção ensure_diskfree ao usar o disco. Isso reserva uma quantidade específica de capacidade de disco para garantir a operação normal do sistema.

  • Não ative o cache de dados do ossfs em cenários que exigem consistência de dados entre múltiplos clientes. Isso se aplica a casos em que vários clientes leem e gravam dados simultaneamente, ou quando um cliente grava enquanto outros leem.

  • Se o cache de dados do ossfs estiver ativado, o cache deverá existir em cenários em que um cliente grava dados no ossfs. Para evitar o desperdício de capacidade de disco, use ossutil.

  • Em cenários em que objetos grandes são lidos de uma única vez, o desempenho do cache é limitado. Portanto, ative o direct read mode para reduzir o uso da capacidade do disco.

  • O desempenho do cache de dados do ossfs varia de acordo com o desempenho do disco que armazena os dados em cache. Para melhor desempenho, selecione discos de alto desempenho, como discos ESSD AutoPL com burst de desempenho ativado, discos efêmeros elásticos ou discos locais. Para mais informações, consulte ESSD AutoPL disks.