

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á.

# Estimativa da capacidade de cluster do Amazon EMR
<a name="capacity"></a>

Embora o Amazon EMR seja uma plataforma redimensionável, é importante dimensionar os clusters adequadamente. O dimensionamento adequado evita um cluster lento, se subdimensionado, ou custos mais altos, se o cluster for superdimensionado. Para antecipar esses problemas, você pode calcular o número e o tipo de nós que serão necessários para as workloads.

## Nós primários
<a name="coordinator"></a>

Esse tipo de nó é responsável por coordenar a distribuição de dados e processos. Como mencionado anteriormente, os requisitos computacionais para nós primários são baixos. É possível usar apenas um nó primário para gerenciar seu cluster do Amazon EMR. No entanto, é possível usar até três nós primários para não ter um único ponto de falha. Se um nó primário falhar, o Amazon EMR fará o failover para um dos outros dois nós primários.

## Nós centrais e de tarefas
<a name="core-task"></a>

A diferença entre os nós centrais e os de tarefa é que os nós de tarefas não armazenam dados; eles apenas fornecem o poder para realizar tarefas computacionais paralelas.

Para calcular o número de nós centrais e de tarefas, você deve saber o tamanho dos dados e o uso aproximado de memória.

### Nós centrais
<a name="core-nodes"></a>

Os nós centrais são responsáveis por executar tarefas para processar os dados e também para armazenar dados no Sistema de Arquivos Distribuído do Hadoop (HDFS). Para calcular a capacidade dos nós centrais, defina o número de nós centrais e, em seguida, multiplique o número de nós pelo armazenamento do Amazon Elastic Block Store (Amazon EBS) de cada nó.

Por exemplo, se você definir 10 nós centrais para processar 1 TiB de dados e tiver um tipo instantâneo `m5.xlarge` com 64 GiB de armazenamento do Amazon EBS, você terá `10 nodes × 64 GiB`, ou 640 GiB de capacidade. Com base no [fator de replicação](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-instances-guidelines.html) de 3 do HDFS, o tamanho dos dados será replicado 3 vezes nos nós, portanto, 1 TiB de dados requer uma capacidade de 3 TiB. Como esse exemplo tem apenas 640 GiB, você deverá aumentar o número de nós ou alterar o tipo de instância até ter uma capacidade de 3 TiB.

O tipo de instância `m5.4xlarge` tem 256 GiB de armazenamento. Mudar para um tipo de instância `m5.4xlarge` e selecionar 12 instâncias fornecerá capacidade suficiente.

`12 instances × 256 GiB of storage = 3072 GiB = 3 TiB available`

### Nós de tarefa
<a name="task-nodes"></a>

Os nós de tarefas apenas executam tarefas. Eles não armazenam dados. Para calcular o número de nós de tarefas, você precisa de uma estimativa do uso de memória. É possível dividir essa capacidade entre nós centrais e de tarefas. Para calcular o número de nós de tarefas necessários, você pode subtrair do uso da memória a memória fornecida pelos nós centrais calculados na etapa anterior.

Para ter uma faixa maior de memória, recomenda-se multiplicar a memória necessária por três.

Suponha que você tenha 28 processos de 20 GiB cada.

`3 × 28 processes × 20 GiB of memory = 1680 GiB of memory`

Neste exemplo, seus nós centrais têm 64 GiB de memória (instâncias `m5.4xlarge`). Seus nós principais fornecem `64 GiB × 12 nodes = 768 GiB of memory`, o que não é suficiente neste exemplo.

Para encontrar o valor que falta, subtraia a memória do nó central da memória total necessária.

`1680 GiB – 768 GiB core node memory = 912 GiB memory shortage`.

Os nós de tarefas podem fornecer os 912 GiB restantes de memória. Neste exemplo, seus nós de tarefas têm 32 GiB de memória (instâncias `m5.2xlarge`). Para obter o número de nós de tarefas necessários, divida a memória faltante pela memória do tipo de instância.

`912 GiB/32 GiB = 28.5 task nodes`

Não é possível ter uma fração de um nó de tarefa, portanto será necessário arredondar para 29 nós de tarefas.