

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Desempenho do Amazon FSx for Lustre
<a name="performance"></a>

Este capítulo fornece tópicos de desempenho do Amazon FSx for Lustre, incluindo algumas dicas e recomendações importantes para maximizar o desempenho do seu sistema de arquivos.

**Topics**
+ [Visão geral do](#performance-overview)
+ [Como funcionam FSx os sistemas de arquivos Lustre](#how-lustre-fs-work)
+ [Desempenho de metadados do sistema de arquivos](#dne-metadata-performance)
+ [Throughput para instâncias individuais de clientes](#throughput-clients)
+ [Layout de armazenamento do sistema de arquivos](#storage-layout)
+ [Distribuição de dados no sistema de arquivos](#striping-data)
+ [Monitoramento da performance e do uso](#performance-monitoring)
+ [Características de desempenho das classes de armazenamento SSD e HDD](ssd-storage.md)
+ [Características de desempenho da classe de armazenamento Intelligent-Tiering](intelligent-tiering-file-systems.md)
+ [Dicas de desempenho](performance-tips.md)

## Visão geral do
<a name="performance-overview"></a>

O Amazon FSx for LustreLustre, baseado no popular sistema de arquivos de alto desempenho, oferece desempenho escalável que aumenta linearmente com o tamanho do sistema de arquivos. Lustreos sistemas de arquivos são dimensionados horizontalmente em vários servidores de arquivos e discos. Essa escalabilidade disponibiliza a todos os clientes o acesso direto aos dados armazenados em cada disco para remover muitos dos gargalos presentes nos sistemas de arquivos tradicionais. O Amazon FSx for Lustre se baseia na arquitetura Lustre escalável para oferecer suporte a altos níveis de desempenho em um grande número de clientes.

## Como funcionam FSx os sistemas de arquivos Lustre
<a name="how-lustre-fs-work"></a>

Cada sistema FSx de arquivos do Lustre consiste nos servidores de arquivos com os quais os clientes se comunicam e em um conjunto de discos conectados a cada servidor de arquivos que armazena seus dados. Cada servidor de arquivos emprega um cache em memória rápido para aprimorar a desempenho dos dados acessados ​​com mais frequência. Dependendo da classe de armazenamento, seu servidor de arquivos pode ser provisionado com um cache de leitura do SSD opcional. Quando um cliente acessa dados que estão armazenados na memória ou no cache baseado em SSD, o servidor de arquivos não precisa lê-los usando o disco, o que reduz a latência e aumenta a quantidade total de throughput que você pode gerar. O diagrama a seguir ilustra os caminhos de uma operação de gravação, uma operação de leitura atendida usando o disco e uma operação de leitura atendida usando a memória ou o cache baseado em SSD.

![\[FSx para a arquitetura de desempenho Lustre.\]](http://docs.aws.amazon.com/pt_br/fsx/latest/LustreGuide/images/LustrePerfDiagram.png)


 Quando você realiza a leitura de dados armazenados na memória ou no cache baseado em SSD do servidor de arquivos, a performance do sistema de arquivos é determinada pelo throughput da rede. Quando você grava dados no sistema de arquivos ou quando realiza a leitura de dados que não estão armazenados no cache em memória, a desempenho do sistema de arquivos é determinada pelo menor throughput da rede e do disco. 

Para saber mais sobre o throughput de rede, o throughput de disco e as características de IOPS das classes de armazenamento SSD e HDD, consulte [Características de desempenho das classes de armazenamento SSD e HDD](ssd-storage.md) e [Características de desempenho da classe de armazenamento Intelligent-Tiering](intelligent-tiering-file-systems.md).

## Desempenho de metadados do sistema de arquivos
<a name="dne-metadata-performance"></a>

As operações de E/S por segundo (IOPS) de metadados do sistema de arquivos determinam o número de arquivos e diretórios que você pode criar, listar, ler e excluir por segundo.

Os sistemas de arquivos Persistent 2 permitem que você provisione IOPS de metadados independentemente da capacidade de armazenamento e promova maior visibilidade sobre o número e o tipo de IOPS de metadados que as instâncias de cliente estão gerando em seu sistema de arquivos. Com sistemas de arquivos em SSD, as IOPS de metadados são provisionadas automaticamente com base na capacidade de armazenamento que você provisiona. O modo automático não é compatível em sistemas de arquivos do Intelligent-Tiering.

Com FSx os sistemas de arquivos Lustre Persistent 2, o número de IOPS de metadados que você provisiona e o tipo de operação de metadados determinam a taxa de operações de metadados que seu sistema de arquivos pode suportar. O nível de IOPS de metadados que você provisiona determina o número de IOPS provisionadas para os discos de metadados do seu sistema de arquivos.


| Tipo de operação | Operações que você pode conduzir por segundo para cada IOPS de metadados provisionadas  | 
| --- | --- | 
|  Criar, abrir e fechar arquivos  |  2  | 
|  Excluir arquivo  |  1  | 
|  Criar e renomear diretórios  |  0.1  | 
|  Exclusão de diretório  |  0.2  | 

Para sistemas de arquivos SSD, você pode optar por provisionar IOPS de metadados com o modo automático. No modo Automático, a Amazon provisiona FSx automaticamente IOPS de metadados com base na capacidade de armazenamento do seu sistema de arquivos, de acordo com a tabela abaixo:


| Capacidade de armazenamento do sistema de arquivos | IOPS de metadados incluídos no modo automático | 
| --- | --- | 
|  1.200 GiB  |  1500  | 
|  2.400 GiB  |  3000  | 
|  4.800 a 9.600 GiB  |  6000  | 
|  12 mil a 45.600 GiB  |  12000  | 
|  ≥ 48000 GiB  |  12 mil IOPS por 24 mil GiB  | 

No modo provisionado pelo usuário, você pode optar por especificar o número de IOPS de metadados a serem provisionadas. Os valores válidos são os seguintes:
+ Para sistemas de arquivos SSD, os valores válidos são `1500`, `3000`, `6000`, `12000` e múltiplos de `12000`, até um máximo de `192000`.
+ Para sistemas de arquivos do Intelligent-Tiering, os valores válidos são `6000` e `12000`.

Para obter informações sobre como configurar IOPS de metadados, consulte [Como gerenciar desempenho de metadados](managing-metadata-performance.md). Observe que você paga pelas IOPS de metadados provisionadas acima do número padrão de IOPS de metadados para seu sistema de arquivos.

## Throughput para instâncias individuais de clientes
<a name="throughput-clients"></a>

Se você estiver criando um sistema de arquivos com mais GBps de 10% da capacidade de taxa de transferência, recomendamos habilitar o Elastic Fabric Adapter (EFA) para otimizar a taxa de transferência por instância do cliente. Para otimizar ainda mais a taxa de transferência por instância do cliente, os sistemas de arquivos habilitados para EFA também oferecem suporte ao GPUDirect armazenamento para instâncias de cliente baseadas em GPU NVIDIA habilitadas para EFA e ao ENA Express para instâncias de clientes habilitadas para ENA Express.

O throughput que você pode direcionar para uma única instância do cliente depende da escolha do tipo de sistema de arquivos e da interface de rede na instância do cliente.


| Tipo do sistema de arquivos | Interface de rede de instâncias de clientes | O throughput máximo por cliente, Gigabits por segundo (GBps) | 
| --- | --- | --- | 
|  Não habilitado para EFA  |  Any  |  100 Gbps\$1  | 
|  Habilitado para EFA  |  ENA  |  100 Gbps\$1  | 
|  Habilitado para EFA  |  ENA Express  |  100 Gbps  | 
|  Habilitado para EFA  |  EFA  |  700 Gbps  | 
|  Habilitado para EFA  |  EFA com GDS  |  1200 Gbps  | 

**nota**  
\$1 O tráfego entre uma instância de cliente individual e um indivíduo FSx para o servidor de armazenamento de objetos Lustre é limitado a 5 Gbps. Consulte o [Endereços IP para sistemas de arquivos](using-fsx-lustre.md#ip-addesses-for-fs) para saber o número de servidores de armazenamento de objetos que sustentam seu sistema de arquivos FSx for Lustre.

## Layout de armazenamento do sistema de arquivos
<a name="storage-layout"></a>

Todos os dados do arquivo são Lustre armazenados em volumes de armazenamento chamados *destinos de armazenamento de objetos* (OSTs). Todos os metadados do arquivo (incluindo nomes de arquivos, registros de data e hora, permissões e muito mais) são armazenados em volumes de armazenamento chamados de destinos de *metadados* (). MDTs Os sistemas de arquivos Amazon FSx for Lustre são compostos por um ou mais MDTs e vários OSTs. O Amazon FSx for Lustre distribui seus dados de arquivos pelos OSTs que compõem seu sistema de arquivos para equilibrar a capacidade de armazenamento com a taxa de transferência e a carga de IOPS.

Para ver o uso de armazenamento do MDT e do OSTs que compõe seu sistema de arquivos, execute o comando a seguir em um cliente que tenha o sistema de arquivos montado.

```
lfs df -h mount/path
```

A saída deste comando é semelhante à apresentada a seguir.

**Example**  

```
UUID                             bytes       Used   Available Use% Mounted on
mountname-MDT0000_UUID           68.7G       5.4M       68.7G   0% /fsx[MDT:0]
mountname-OST0000_UUID            1.1T       4.5M        1.1T   0% /fsx[OST:0]
mountname-OST0001_UUID            1.1T       4.5M        1.1T   0% /fsx[OST:1]

filesystem_summary:               2.2T       9.0M        2.2T   0% /fsx
```

## Distribuição de dados no sistema de arquivos
<a name="striping-data"></a>

É possível otimizar a performance de throughput do seu sistema de arquivos com a distribuição de arquivos. O Amazon FSx for Lustre distribui automaticamente os arquivos para garantir que os dados sejam fornecidos por todos os servidores de armazenamento. OSTs Você pode aplicar o mesmo conceito no nível do arquivo configurando como os arquivos são distribuídos em vários. OSTs

O striping significa que os arquivos podem ser divididos em vários blocos que são armazenados em diferentes partes. OSTs Quando um arquivo é dividido em vários OSTs, as solicitações de leitura ou gravação do arquivo são distribuídas entre eles OSTs, aumentando a taxa de transferência agregada ou o IOPS que seus aplicativos podem gerar por meio dele.



A seguir estão os layouts padrão dos sistemas de arquivos Amazon FSx for Lustre.
+ Para sistemas de arquivos criados antes de 18 de dezembro de 2020, o layout padrão especifica uma contagem de distribuição de um. Isso significa que, a menos que um layout diferente seja especificado, cada arquivo criado no Amazon FSx for Lustre usando ferramentas Linux padrão é armazenado em um único disco.
+ Para sistemas de arquivos criados após 18 de dezembro de 2020, o layout padrão corresponde a um layout de arquivos progressivo, no qual arquivos com tamanhos inferiores a 1 GiB são armazenados em uma distribuição e arquivos com tamanhos superiores são atribuídos a uma contagem de distribuição de cinco.
+ Para sistemas de arquivos criados após 25 de agosto de 2023, o layout padrão corresponde a um layout de arquivos progressivo de quatro componentes, o qual é explicado em [Layouts de arquivos progressivos](#striping-pfl).
+ Para todos os sistemas de arquivos, independentemente da data de criação, os arquivos importados do Amazon S3 não usam o layout padrão. Eles usam o layout presente no parâmetro `ImportedFileChunkSize` do sistema de arquivos. Arquivos importados para S3 maiores que o `ImportedFileChunkSize` serão armazenados em vários OSTs com uma contagem de faixas de. `(FileSize / ImportedFileChunksize) + 1` O valor padrão de `ImportedFileChunkSize` é 1 GiB.

É possível visualizar a configuração de layout de um arquivo ou de um diretório usando o comando `lfs getstripe`.

```
lfs getstripe path/to/filename
```

Este comando informa a contagem de distribuição, o tamanho da distribuição e o deslocamento da distribuição de um arquivo. A *contagem de faixas* é quantas faixas OSTs o arquivo está distribuído. O *tamanho da distribuição* corresponde à quantidade de dados contínuos que são armazenados em um OST. O *deslocamento da distribuição* corresponde ao índice do primeiro OST para o qual o arquivo é distribuído.

### Modificação da configuração de distribuição
<a name="striping-modify"></a>

Os parâmetros de layout de um arquivo são definidos quando o arquivo é criado pela primeira vez. Use o comando `lfs setstripe` para criar um arquivo novo e em branco com um layout especificado.

```
lfs setstripe filename --stripe-count number_of_OSTs
```

O comando `lfs setstripe` afeta somente o layout de um novo arquivo. Use-o para especificar o layout de um arquivo antes de criá-lo. Você também pode definir um layout para um diretório. Após ser definido em um diretório, esse layout é aplicado a cada novo arquivo adicionado ao diretório, mas não aos arquivos existentes. Qualquer novo subdiretório criado também herdará o novo layout, que será aplicado a qualquer novo arquivo ou diretório criado nesse subdiretório.

Para modificar o layout de um arquivo existente, use o comando `lfs migrate`. Este comando copia o arquivo, conforme necessário, para distribuir o conteúdo de acordo com o layout especificado no comando. Por exemplo, arquivos anexados ou aumentados em tamanho não alteram a contagem de distribuição, portanto, é necessário migrá-los para alterar o layout do arquivo. Como alternativa, é possível criar um novo arquivo usando o comando `lfs setstripe` para especificar o layout, copiar o conteúdo original para o novo arquivo e, em seguida, renomear o novo arquivo para substituir o arquivo original.

Pode haver casos em que a configuração de layout padrão não seja ideal para a workload. Por exemplo, um sistema de arquivos com dezenas OSTs e um grande número de arquivos de vários gigabytes pode ter um desempenho melhor ao distribuir os arquivos em mais do que o valor padrão de contagem de faixas de cinco. OSTs A criação de arquivos grandes com baixa contagem de faixas pode causar gargalos de I/O desempenho e também causar OSTs o preenchimento. Nesse caso, você pode criar um diretório com uma contagem de distribuição maior para esses arquivos.

Configurar um layout distribuído para arquivos grandes (especialmente arquivos maiores que um gigabyte) é importante pelos seguintes motivos:
+ Melhora a taxa de transferência ao permitir que vários servidores OSTs e seus associados contribuam com IOPS, largura de banda de rede e recursos de CPU ao ler e gravar arquivos grandes.
+ Reduz a probabilidade de um pequeno subconjunto OSTs se tornar pontos críticos que limitam o desempenho geral da carga de trabalho.
+ Impede que um único arquivo grande preencha um OST, possivelmente causando erros de disco cheio.

Não existe uma configuração única de layout que seja ideal para todos os casos de uso. Para obter orientação detalhada sobre os layouts de arquivos, consulte [Managing File Layout (Striping) and Free Space](https://doc.lustre.org/lustre_manual.xhtml#managingstripingfreespace) na documentação do Lustre.org. A seguir, apresentamos as diretrizes gerais:
+ O layout distribuído é mais importante para arquivos grandes, especialmente para casos de uso em que os arquivos têm regularmente centenas de megabytes ou mais. Por esse motivo, o layout padrão para um novo sistema de arquivos atribui uma contagem de distribuição de cinco para arquivos com tamanho superior a 1 GiB.
+ A contagem de distribuição é o parâmetro de layout que você deve ajustar para sistemas que oferecem suporte a arquivos grandes. A contagem de distribuição especifica o número de volumes de OST que conterão fragmentos de um arquivo distribuído. Por exemplo, com uma contagem de faixas de 2 e um tamanho de faixa de 1 MiB, Lustre grava partes alternativas de 1 MiB de um arquivo em cada um dos dois. OSTs
+ A contagem de distribuição efetiva corresponde ao menor número entre o número real de volumes de OST e o valor de contagem de distribuição especificado. É possível usar o valor especial de contagem de distribuição de `-1` para indicar que as distribuições devem ser colocadas em todos os volumes de OST.
+ A definição de uma contagem de distribuição grande para arquivos pequenos não é ideal, pois para algumas operações, o Lustre requer idas e vindas da rede para cada OST no layout, mesmo que o arquivo seja muito pequeno para consumir espaço em todos os volumes de OST.
+ Você pode configurar um layout de arquivo progressivo (PFL) que permite que o layout de um arquivo seja alterado com o tamanho. Uma configuração de PFL pode simplificar o gerenciamento de um sistema de arquivos que tem uma combinação de arquivos grandes e pequenos sem que você tenha necessidade de definir explicitamente uma configuração para cada arquivo. Para obter mais informações, consulte [Layouts de arquivos progressivos](#striping-pfl).
+ Por padrão, o tamanho da distribuição é 1 MiB. A definição de um deslocamento de distribuição pode ser útil em circunstâncias especiais, mas, em geral, é melhor deixá-lo sem especificação e usar o padrão.

### Layouts de arquivos progressivos
<a name="striping-pfl"></a>

É possível especificar uma configuração de layout de arquivo progressivo (PFL) para um diretório com a finalidade de especificar diferentes configurações de distribuição para arquivos pequenos e grandes antes de preenchê-lo. Por exemplo, você pode definir um PFL no diretório de nível superior antes que os dados sejam gravados em um novo sistema de arquivos.

Para especificar uma configuração de PFL, use o comando `lfs setstripe` com opções `-E` para especificar componentes de layout para arquivos de tamanhos diferentes, como o seguinte comando:

```
lfs setstripe -E 100M -c 1 -E 10G -c 8 -E 100G -c 16 -E -1 -c 32 /mountname/directory
```

Este comando define quatro componentes de layout:
+ O primeiro componente (`-E 100M -c 1`) indica um valor de contagem de distribuição de 1 para arquivos de até 100 MiB de tamanho.
+ O segundo componente (`-E 10G -c 8`) indica uma contagem de distribuição de 8 para arquivos de até 10 GiB de tamanho.
+ O terceiro componente (`-E 100G -c 16`) indica uma contagem de distribuição de 16 para arquivos de até 100 GiB de tamanho.
+ O quarto componente (`-E -1 -c 32`) indica uma contagem de distribuição de 32 para arquivos com tamanho superior a 100 GiB.

**Importante**  
Anexar dados a um arquivo criado com um layout PFL preencherá todos os componentes do layout. Por exemplo, com o comando de 4 componentes mostrado acima, se você criar um arquivo de 1 MiB e adicionar dados ao final dele, o layout do arquivo se expandirá para ter uma contagem de faixas de -1, ou seja, todas as OSTs do sistema. Isso não significa que os dados serão gravados em cada OST, mas uma operação, por exemplo, a leitura do tamanho do arquivo, enviará uma solicitação paralelamente a cada OST, adicionando uma carga de rede significativa ao sistema de arquivos.  
Portanto, tome cuidado em relação a limitar a contagem de distribuição para qualquer arquivo pequeno ou médio que possa, posteriormente, ter dados anexados a ele. Como os arquivos de log geralmente crescem com a adição de novos registros, o Amazon FSx for Lustre atribui uma contagem de faixas padrão de 1 a qualquer arquivo criado no modo de acréscimo, independentemente da configuração de distribuição padrão especificada pelo diretório principal.

A configuração padrão de PFL no Amazon FSx para sistemas de arquivos Lustre criados após 25 de agosto de 2023 é definida com este comando:

```
lfs setstripe -E 100M -c 1 -E 10G -c 8 -E 100G -c 16 -E -1 -c 32 /mountname
```

Clientes com cargas de trabalho que têm acesso altamente simultâneo a arquivos médios e grandes provavelmente se beneficiarão de um layout com mais faixas em tamanhos menores e distribuídas em todos os arquivos maiores, conforme mostrado no OSTs exemplo de layout de quatro componentes.

## Monitoramento da performance e do uso
<a name="performance-monitoring"></a>

A cada minuto, o Amazon FSx for Lustre emite métricas de uso de cada disco (MDT e OST) para a Amazon. CloudWatch

Para visualizar detalhes agregados de uso do sistema de arquivos, é possível consultar a estatística Sum de cada métrica. Por exemplo, a soma da `DataReadBytes` estatística relata a taxa de transferência total de leitura vista por todos OSTs em um sistema de arquivos. De forma semelhante, a estatística Sum de `FreeDataStorageCapacity` relata a capacidade total de armazenamento disponível para dados de arquivos no sistema de arquivos.

Para obter mais informações sobre como monitorar a desempenho do sistema de arquivos, consulte [Monitorar sistemas de arquivos do Amazon FSx para Lustre](monitoring_overview.md).

# Características de desempenho das classes de armazenamento SSD e HDD
<a name="ssd-storage"></a>

A taxa de transferência suportada FSx por um sistema de arquivos for Lustre provisionado com a classe de armazenamento SSD ou HDD é proporcional à sua capacidade de armazenamento. Os sistemas de arquivos Amazon FSx for Lustre escalam para vários níveis TBps de transferência e milhões de IOPS. O Amazon FSx for Lustre também oferece suporte ao acesso simultâneo ao mesmo arquivo ou diretório a partir de milhares de instâncias computacionais. Esse acesso possibilita a rápida verificação de dados da memória até o armazenamento da aplicação, que é uma técnica comum em computação de alta performance (HPC). Você podel aumentar a quantidade de armazenamento e a capacidade de throughput, conforme necessário, a qualquer momento após a criação do sistema de arquivos. Para obter mais informações, consulte [Como gerenciar a capacidade de armazenamento](managing-storage-capacity.md).

FSx Os sistemas de arquivos for Lustre fornecem taxa de transferência de leitura contínua usando um mecanismo de I/O crédito de rede para alocar a largura de banda da rede com base na utilização média da largura de banda. Os sistemas de arquivos acumulam créditos quando o uso da largura de banda da rede está abaixo dos limites da linha de base e esses créditos podem ser usados na execução de transferências de dados pela rede.

As tabelas a seguir mostram o desempenho FSx para o qual as opções de implantação do Lustre usando classes de armazenamento SSD e HDD foram projetadas.


**desempenho do sistema de arquivos para opções de armazenamento SSD**  

| Tipo de implantação | **Taxa de transferência de rede (MBps/TiB de armazenamento provisionado)** |  **IOPS da rede (IOPS/TiB de armazenamento provisionado)** |  **Armazenamento em cache (GiB RAM/TiB de armazenamento provisionado)** |  **Latências do disco por operação de arquivo (milissegundos, P50)** | **Taxa de transferência de disco (MBps/TiB de armazenamento ou cache SSD provisionado)** | 
| --- |--- |--- |--- |--- |--- |
| **** | **Linha de base** | **Intermitência** | **** | **** | **** | **Linha de base** | **Intermitência** | 
| --- |--- |--- |--- |--- |--- |--- |--- |
| SCRATCH\$12 | 200 | 1300 | Linha de base de dezenas de milharesIntermitência de centenas de milhares | 6.7 |  Metadados: inferiores a um milissegundo Dados: inferiores a um milissegundo  |  200 (leitura) 100 (gravação)  | ‐ | 
| --- |--- |--- |--- |--- |--- |--- |--- |
| PERSISTENT-125 | 320 | 1300 | 3.4 |  125  | 500 | 
| --- |--- |--- |--- |--- |--- |
| PERSISTENT-250 | 640 | 1300 | 6.8 |  250  | 500 | 
| --- |--- |--- |--- |--- |--- |
| PERSISTENT-500 | 1300 | ‐ | 13.7 | 500 | ‐ | 
| --- |--- |--- |--- |--- |--- |
| PERSISTENT-1000 | 2600 | ‐ | 27,3 | 1000 | ‐ | 
| --- |--- |--- |--- |--- |--- |


**Performance do sistema de arquivos para opções de armazenamento em HDD**  

| Tipo de implantação | **Taxa de transferência de rede (MBps/TiB de armazenamento ou cache SSD provisionado)** |  **IOPS da rede (IOPS/TiB de armazenamento provisionado)** | **Armazenamento em cache (GiB RAM/TiB de armazenamento provisionado)** | **Latências do disco por operação de arquivo (milissegundos, P50)** | **Taxa de transferência de disco (MBps/TiB de armazenamento ou cache SSD provisionado)** | 
| --- |--- |--- |--- |--- |--- |
| **** | **Linha de base** | **Intermitência** |  | **Linha de base** | **Intermitência** | 
| --- |--- |--- |--- |--- |--- |
| PERSISTENT-12 | 
| --- |
| Armazenamento em HDD | 40 | 375\$1  |  Linha de base de dezenas de milhares Intermitência de centenas de milhares  | 0,4 memória |  Metadados: inferiores a um milissegundo Dados: milissegundo de um dígito  | 12 |  80 (leitura) 50 (gravação)  | 
| --- |--- |--- |--- |--- |--- |--- |--- |
| Armazenamento em cache de leitura baseado em SSD |  200  | 1.900 |  Armazenamento em cache baseado em SSD de 200  |  Dados: inferiores a um milissegundo  | 200 |  -  | 
| --- |--- |--- |--- |--- |--- |--- |
|  PERSISTENT-40 | 
| --- |
| Armazenamento em HDD | 150 | 1.300\$1  |  Linha de base de dezenas de milhares Intermitência de centenas de milhares  | 1.5 |  Metadados: inferiores a um milissegundo Dados: milissegundo de um dígito  | 40 |  250 (leitura) 150 (gravação)  | 
| --- |--- |--- |--- |--- |--- |--- |--- |
| Armazenamento em cache de leitura baseado em SSD |  750  |  6500  | Armazenamento em cache baseado em SSD de 200 |  Dados: inferiores a um milissegundo  | 200 |  -  | 
| --- |--- |--- |--- |--- |--- |--- |


**Performance do sistema de arquivos para opções de armazenamento SSD da geração anterior**  

| Tipo de implantação | **Taxa de transferência de rede (MBps por TiB de armazenamento provisionado)** |  **IOPS da rede (IOPS por TiB de armazenamento provisionado)** |  **Armazenamento em cache (GiB por TiB de armazenamento provisionado)** |  **Latências do disco por operação de arquivo (milissegundos, P50)** | **Taxa de transferência de disco (MBps por TiB de armazenamento ou cache SSD provisionado)** | 
| --- |--- |--- |--- |--- |--- |
| **** | **Linha de base** | **Intermitência** | **** | **** | **** | **Linha de base** | **Intermitência** | 
| --- |--- |--- |--- |--- |--- |--- |--- |
| PERSISTENT-50 | 250 | 1.300\$1 | Linha de base de dezenas de milharesIntermitência de centenas de milhares | 2,2 RAM |  Metadados: inferiores a um milissegundo Dados: inferiores a um milissegundo  | 50 | 240 | 
| --- |--- |--- |--- |--- |--- |--- |--- |
| PERSISTENT-100 | 500 | 1.300\$1 | 4,4 RAM | 100 | 240 | 
| --- |--- |--- |--- |--- |--- |
| PERSISTENT-200 | 750 | 1.300\$1 | 8,8 RAM | 200 | 240 | 
| --- |--- |--- |--- |--- |--- |

**nota**  
\$1 Os sistemas de arquivos persistentes a seguir Regiões da AWS fornecem uma intermitência de rede de até 530 por MBps TiB de armazenamento: África (Cidade do Cabo), Ásia-Pacífico (Hong Kong), Ásia-Pacífico (Osaka), Ásia-Pacífico (Cingapura), Canadá (Central), Europa (Frankfurt), Europa (Londres), Europa (Milão), Europa (Estocolmo), Oriente Médio (Bahrein), América do Sul (Paulo), China e Oeste dos EUA (Los Angeles).

## Exemplo: linha de base agregada e throughput de intermitência
<a name="example-persistant-throughput"></a>

O exemplo apresentado a seguir ilustra como a capacidade de armazenamento e o throughput do disco afetam a desempenho do sistema de arquivos.

Um sistema de arquivos persistente com capacidade de armazenamento de 4,8 TiB e 50 por TiB de taxa de transferência MBps por unidade de armazenamento fornece uma taxa de transferência de disco de linha de base agregada de 240 e uma taxa de transferência de disco intermitente de MBps 1,152. GBps

Independentemente do tamanho do sistema de arquivos, o Amazon FSx for Lustre fornece latências consistentes de menos de um milissegundo para operações de arquivos.

# Características de desempenho da classe de armazenamento Intelligent-Tiering
<a name="intelligent-tiering-file-systems"></a>

A classe de armazenamento FSx for Lustre Intelligent-Tiering oferece armazenamento elástico e econômico para cargas de trabalho que tradicionalmente são executadas em sistemas de arquivos de armazenamento de arquivos de alto desempenho baseados em HDD ou mistos baseados em HDD/SDD. Os sistemas de arquivos que usam a classe de armazenamento Intelligent-Tiering utilizam armazenamento regional totalmente elástico e hierarquizado de forma inteligente, que aumenta e diminui automaticamente para se adequar à sua workload à medida que ela muda. Para obter informações sobre como ele hierarquiza os dados, consulte [Como a classe de armazenamento Intelligent-Tiering hierarquiza os dados](using-fsx-lustre.md#how-INT-tiering-works).

A taxa de transferência suportada FSx por um sistema de arquivos for Lustre com classe de armazenamento Intelligent-Tiering é independente de seu armazenamento. Os sistemas de arquivos em camadas inteligentes se expandem para vários níveis TBps de taxa de transferência e milhões de IOPS. Os sistemas de arquivos que usam a classe de armazenamento Intelligent-Tiering também fornecem um cache de leitura do SSD provisionado opcional para acesso de baixa latência aos dados acessados com frequência. Por padrão, o Amazon FSx for Lustre provisiona um cache de leitura SSD para metadados acessados com frequência. Como a maioria das workloads tende a exigir muita leitura e a trabalhar ativamente com apenas uma parcela do conjunto de dados geral a qualquer momento, o modelo híbrido de armazenamento do Intelligent-Tiering e caches de leitura do SSD permite que os sistemas de arquivos usem a classe de armazenamento Intelligent-Tiering para fornecer armazenamento com desempenho comparável aos sistemas de arquivos SSD para a maioria das workloads. Ao mesmo tempo, oferecem economia de custos de armazenamento em relação às classes de armazenamento SSD e HDD.

Ao ler e gravar dados em um sistema de arquivos do Intelligent-Tiering, especialmente dados que não foram acessados recentemente ou com frequência suficiente para estarem no cache em memória do servidor de arquivos, o desempenho depende do tamanho do cache de leitura do SSD. O acesso aos dados do armazenamento Intelligent-Tiering tem time-to-first-byte latências de aproximadamente dezenas de milissegundos, bem como custos por solicitação, enquanto os acessos do cache de leitura SSD retornam com latência inferior a um milissegundo e sem custos por solicitação.

Ao configurar o tamanho do cache de leitura do SSD para seu sistema de arquivos, você deve considerar o tamanho do conjunto de dados acessado com frequência na workload e a sensibilidade da workload à maior latência para leituras de dados acessados com menos frequência. Você pode alternar entre os modos de dimensionamento do cache de leitura do SSD após a criação do seu sistema de arquivos e aumentar ou reduzir a escala do cache verticalmente. Para ter mais informações sobre como modificar seu cache de leitura do SSD, consulte [Gerenciamento do cache de leitura baseado em SSD provisionado](managing-ssd-read-cache.md).

Uma solicitação de gravação ocorre quando FSx o Lustre grava um bloco de dados no armazenamento Intelligent-Tiering. Quando você grava dados no sistema de arquivos, as solicitações de gravação são agregadas e gravadas no armazenamento Intelligent-Tiering, aumentando o throughput e reduzindo os custos das solicitações. As leituras podem ser atendidas a partir do cache em memória do servidor de arquivos, do cache de leitura do SSD ou diretamente do armazenamento Intelligent-Tiering. Quando uma leitura é fornecida do armazenamento Intelligent-Tiering, ocorre uma solicitação de leitura para cada bloco de dados recuperados. Quando você lê dados sequencialmente, o Lustre pré-busca dados FSx para melhorar o desempenho.

Os dados do cache em memória em sistemas de arquivos que usam a classe de armazenamento Intelligent-Tiering são fornecidos diretamente ao cliente solicitante como *E/S de rede*. Quando um cliente acessa dados que não estão no cache em memória, eles são lidos do cache de leitura do SSD ou do armazenamento Intelligent-Tiering como *E/S de disco* e, em seguida, enviados ao cliente como E/S de rede.

## Desempenho do sistema de arquivos para Intelligent-Tiering
<a name="data-access-intelligent-tiering"></a>

A tabela a seguir mostra o desempenho FSx para o qual os sistemas de arquivos Lustre Intelligent-Tiering foram projetados.


| Capacidade de taxa de transferência provisionada () MBps | **Taxa de transferência da rede () MBps** |  **IOPS de rede** |  **Armazenamento em cache em memória (GB)** |  **Taxa de transferência máxima do disco de cache SSD () MBps** | **IOPS máximas do disco de cache SSD** | 
| --- |--- |--- |--- |--- |--- |
| **** | **Linha de base** | **Intermitência** | **** | **** | **** | **Linha de base** | **Intermitência** | 
| --- |--- |--- |--- |--- |--- |--- |--- |
| A cada 4 mil | 12500 | ‐ | Centenas de milhares | 76,8 | 4000 | 160.000 | ‐ | 
| --- |--- |--- |--- |--- |--- |--- |--- |

# Dicas de desempenho
<a name="performance-tips"></a>

Ao usar o Amazon FSx for Lustre, lembre-se das seguintes dicas de desempenho. Para saber sobre limites de serviço, consulte [Cotas de serviço para Amazon FSx for Lustre](limits.md).
+ ** I/O Tamanho médio** — Como o Amazon FSx for Lustre é um sistema de arquivos de rede, cada operação de arquivo passa por uma viagem de ida e volta entre o cliente e o Amazon FSx for Lustre, incorrendo em uma pequena sobrecarga de latência. Devido a essa latência por operação, a taxa de transferência geral geralmente aumenta à medida que o I/O tamanho médio aumenta, porque a sobrecarga é amortizada em uma quantidade maior de dados.
+ **Modelo de solicitação** — Ao permitir gravações assíncronas em seu sistema de arquivos, as operações de gravação pendentes são armazenadas em buffer na instância do Amazon EC2 antes de serem gravadas no Amazon for Lustre de forma assíncrona. FSx Normalmente, gravações assíncronas têm latências mais baixas. Ao executar gravações assíncronas, o kernel usa memória adicional para armazenamento em cache. Um sistema de arquivos que permite gravações síncronas emite solicitações síncronas FSx para o Amazon for Lustre. Cada operação passa por uma viagem de ida e volta entre o cliente e a Amazon FSx for Lustre.
**nota**  
O modelo de solicitação escolhido tem compensações em consistência (se você estiver usando várias instâncias do Amazon EC2) e velocidade.
+ **Limitar o tamanho do diretório** — Para obter o desempenho ideal de metadados nos sistemas de arquivos Persistent 2 FSx for Lustre, limite cada diretório a menos de 100 mil arquivos. A limitação do número de arquivos em um diretório reduz o tempo necessário para que o sistema de arquivos adquira um bloqueio no diretório principal.
+ **Instâncias do Amazon EC2**: as aplicações que executam um grande número de operações de leitura e de gravação provavelmente precisam de mais memória ou capacidade de computação do que as aplicações que não o fazem. Ao iniciar as instâncias do Amazon EC2 para a workload com uso intensivo de computação, escolha tipos de instâncias com a quantidade desses recursos que é requerida para sua aplicação. As características de desempenho dos sistemas de arquivos Amazon FSx for Lustre não dependem do uso de instâncias otimizadas para Amazon EBS.
+ **Ajuste recomendado da instância do cliente para um desempenho ideal**

  1. Para tipos de instâncias de clientes com memória superior a 64 GiB, recomendamos aplicar o seguinte ajuste:

     ```
     sudo lctl set_param ldlm.namespaces.*.lru_max_age=600000
     sudo lctl set_param ldlm.namespaces.*.lru_size=<100 * number_of_CPUs>
     ```

  1. Para tipos de instâncias de clientes com mais de 64 núcleos de vCPU, recomendamos aplicar o seguinte ajuste:

     ```
     echo "options ptlrpc ptlrpcd_per_cpt_max=32" >> /etc/modprobe.d/modprobe.conf
     echo "options ksocklnd credits=2560" >> /etc/modprobe.d/modprobe.conf
                 
     # reload all kernel modules to apply the above two settings
     sudo reboot
     ```

     Após a montagem do cliente, o seguinte ajuste precisa ser aplicado:

     ```
     sudo lctl set_param osc.*OST*.max_rpcs_in_flight=32
     sudo lctl set_param mdc.*.max_rpcs_in_flight=64
     sudo lctl set_param mdc.*.max_mod_rpcs_in_flight=50
     ```

  1. Para otimizar o desempenho da listagem de diretórios (ls), o seguinte ajuste precisa ser aplicado:

     ```
     sudo lctl set_param llite.*.statahead_max=512
     sudo lctl set_param llite.*.statahead_agl=1
     if sudo lctl get_param llite.*.statahead_xattr > /dev/null 2>&1; then
         sudo lctl set_param llite.*.statahead_xattr=1
     else
         echo "Warning: Xattr statahead is not supported on this Lustre client. Please upgrade to the latest Lustre 2.15 client to apply this tuning"
     fi
     ```

  Observe que `lctl set_param` é conhecido por não persistir durante a reinicialização. Como esses parâmetros não podem ser definidos de forma permanente do lado do cliente, é recomendável implementar tarefas do Cron de inicialização para definir a configuração com os ajustes recomendados.
+ **Equilíbrio entre cargas de trabalho OSTs** — Em alguns casos, sua carga de trabalho não está gerando a taxa de transferência agregada que seu sistema de arquivos pode fornecer (200 por MBps TiB de armazenamento). Nesse caso, você pode usar CloudWatch métricas para solucionar problemas se o desempenho for afetado por um desequilíbrio nos padrões da sua carga de trabalho. I/O Para identificar se essa é a causa, consulte a CloudWatch métrica Máximo do Amazon FSx for Lustre.

  Em alguns casos, essa estatística mostra uma carga igual ou superior a 240 MBps de taxa de transferência (a capacidade de taxa de transferência de um único disco Amazon for Lustre de 1,2 TiB). FSx Nesses casos, a workload não está distribuída uniformemente pelos discos. Se for esse o caso, você poderá usar o comando `lfs setstripe` para modificar a distribuição dos arquivos que a workload acessa com mais frequência. Para um desempenho ideal, distribua arquivos com requisitos de alta taxa de transferência em todo o OSTs sistema de arquivos.

  Se seus arquivos forem importados de um repositório de dados, você pode adotar outra abordagem para distribuir seus arquivos de alto rendimento uniformemente em todo o seu. OSTs Para fazer isso, você pode modificar o `ImportedFileChunkSize` parâmetro ao criar seu próximo sistema de arquivos Amazon FSx for Lustre.

  Por exemplo, suponha que sua carga de trabalho use um sistema de arquivos de 7,0 TiB (que é composto por 6x 1,17 TiB OSTs) e precise gerar alta taxa de transferência em arquivos de 2,4 GiB. Nesse caso, você pode definir o `ImportedFileChunkSize` valor para `(2.4 GiB / 6 OSTs) = 400 MiB` que seus arquivos sejam distribuídos uniformemente pelo sistema de arquivos OSTs.
+ **Lustrecliente para IOPS de metadados** — Se seu sistema de arquivos tiver uma configuração de metadados especificada, recomendamos que você instale um cliente Lustre 2.15 ou um cliente Lustre 2.12 com uma das seguintes versões do sistema operacional: Amazon Linux 2023; Amazon Linux 2; Red Hat/Rocky Linux 8.9, 8.10 ou 9.x; CentOS 8.9 ou 8.10; Ubuntu 22\$1 com kernel 6.2, 6.5 ou 6.8; ou Ubuntu 20.

## Considerações sobre o desempenho do Intelligent-Tiering
<a name="intelligent-tiering-performance-considerations"></a>

Aqui estão algumas considerações importantes sobre desempenho ao trabalhar com sistemas de arquivos usando a classe de armazenamento Intelligent-Tiering:
+ As cargas de trabalho que leem dados com I/O tamanhos menores exigirão maior simultaneidade e incorrerão em mais custos de solicitação para obter a mesma taxa de transferência das cargas de trabalho que usam I/O tamanhos grandes devido à maior latência dos níveis de armazenamento em camadas inteligentes. Recomendamos que você configure seu cache de leitura do SSD com a capacidade suficiente para sustentar maior simultaneidade e throughput ao trabalhar com tamanhos de E/S menores.
+ O máximo de IOPS de disco que seus clientes podem gerar com um sistema de arquivos do Intelligent-Tiering depende dos padrões de acesso específicos da sua workload e se você provisionou um cache de leitura do SSD. Para workloads com acesso aleatório, os clientes normalmente podem gerar IOPS muito maiores se os dados estiverem armazenados em cache no cache de leitura do SSD do que se os dados não estiverem no cache.
+ A classe de armazenamento Intelligent-Tiering oferece suporte à leitura antecipada para otimizar o desempenho das solicitações de leitura sequencial. Recomendamos configurar seu padrão de acesso aos dados sequencialmente sempre que possível para permitir a pré-busca de dados e maior desempenho.