

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

# Usando armazenamento sem servidor para o Amazon EMR Serverless
<a name="jobs-serverless-storage"></a>

Com as versões 7.12 e superiores do Amazon EMR, use armazenamento sem servidor ao executar trabalhos do Apache Spark para eliminar o provisionamento de disco local e reduzir os custos de processamento de dados, além de evitar falhas de trabalho causadas por restrições de capacidade de disco. O armazenamento sem servidor gerencia automaticamente as operações de reprodução aleatória, vazamento de disco e armazenamento em cache de disco para suas tarefas sem exigir configuração de capacidade e armazena dados intermediários sem nenhum custo. O Amazon EMR Serverless armazena dados intermediários em um armazenamento sem servidor totalmente gerenciado que é escalado automaticamente com base nas demandas da carga de trabalho e permite que o Spark libere funcionários da computação imediatamente quando ociosos, reduzindo os custos de computação.

## Benefícios principais
<a name="jobs-serverless-storage-key-benefits"></a>

O armazenamento sem servidor para EMR Serverless oferece os seguintes benefícios.
+ Armazenamento com **configuração zero — O armazenamento** sem servidor elimina a necessidade de configurar o tipo e o tamanho do disco local para cada aplicativo ou tarefa. O EMR Serverless gerencia automaticamente as operações de dados intermediárias sem planejamento de capacidade. 
+ **Evita falhas de trabalho por meio do escalonamento automático** — A capacidade de armazenamento é dimensionada automaticamente com base na demanda da carga de trabalho, evitando falhas de trabalho devido à capacidade insuficiente do disco.
+ **Custos reduzidos de processamento de dados** — O armazenamento sem servidor reduz os custos de processamento por meio de dois mecanismos. Primeiro, o armazenamento intermediário de dados é fornecido sem nenhum custo — você paga somente pelos recursos de computação e memória. Em segundo lugar, o armazenamento desacoplado com a alocação dinâmica de recursos do Spark permite que o Spark libere trabalhadores imediatamente quando estão ociosos, em vez de retê-los para preservar dados intermediários em discos locais. Isso permite uma expansão horizontal e ampliação mais rápidas por estágio do Spark, reduzindo os custos de computação para trabalhos em que os estágios posteriores precisam de menos trabalhadores do que os estágios iniciais.
+ **Armazenamento criptografado com isolamento em nível de trabalho** — Todos os dados intermediários são criptografados em trânsito e em repouso com isolamento estrito em nível de trabalho.
+ Suporte de controle de **acesso refinado — O armazenamento sem servidor oferece suporte ao controle** de acesso refinado por meio da integração com o Lake Formation. AWS 

## Introdução
<a name="jobs-serverless-storage-getting-started"></a>

Veja as etapas a seguir para usar o armazenamento sem servidor para o EMR Serverless em seus fluxos de trabalho do Spark.

1. **Crie um aplicativo EMR Serverless**

   **Crie um aplicativo EMR Serverless versão 7.12 (ou posterior) com armazenamento sem servidor ativado definindo a propriedade spark como true na classificação spark-defaults. `spark.aws.serverlessStorage.enabled`**

   ```
   aws emr-serverless create-application \
     --type "SPARK" \
     --name my-application \
     --release-label emr-7.12.0 \
     --runtime-configuration '[{
         "classification": "spark-defaults",
           "properties": {
             "spark.aws.serverlessStorage.enabled": "true"
           }
       }]' \
     --region <AWS_REGION>
   ```

1. **Comece um trabalho no Spark**

   Inicie a execução de um trabalho em seu aplicativo. Armazenamento sem servidor para EMR O Serverless manipula automaticamente a operação intermediária de dados, como o shuffle, para seu trabalho. 

   ```
   aws emr-serverless start-job-run \
     --application-id <application-id> \
     --execution-role-arn <job-role-arn> \
     --job-driver '{
       "sparkSubmit": {
         "entryPoint": "s3://<bucket>/script.py",
         "sparkSubmitParameters": "--conf spark.executor.cores=4 
           --conf spark.executor.memory=20g 
           --conf spark.driver.cores=4 
           --conf spark.driver.memory=8g 
           --conf spark.executor.instances=10"
       }
     }'
   ```

   Você também pode habilitar o armazenamento sem servidor para o EMR Serverless no nível do trabalho, mesmo quando não estiver habilitado no nível do aplicativo. Isso iniciará nós de trabalho habilitados com armazenamento sem servidor para processar seus trabalhos. **Você também pode desativar o armazenamento sem servidor para um trabalho específico definindo a mesma propriedade `spark.aws.serverlessStorage.enabled` do Spark como false.**

   ```
   # Turn on serverless storage for EMR serverless for a specific job
   aws emr-serverless start-job-run \
       --application-id <application-id> \
       --execution-role-arn <job-role-arn> \
       --job-driver '{
   "sparkSubmit": {
   "entryPoint": "/usr/lib/spark/examples/jars/spark-examples.jar",
               "entryPointArguments": ["1"],
               "sparkSubmitParameters": "--class org.apache.spark.examples.SparkPi
               --conf spark.aws.serverlessStorage.enabled": "true"
           }
       }'
   ```
**nota**  
**Para continuar usando o provisionamento de disco local tradicional, omita a `spark.aws.serverlessStorage.enabled` configuração ou defina-a como falsa.** 

## Considerações e limitações
<a name="jobs-serverless-storage-limitations"></a>
+ **Versão de lançamento** — O armazenamento sem servidor é compatível com a versão 7.12 e posterior do Amazon EMR. 
+ **Limites de volume de dados** — Cada trabalho pode ler e gravar até um total de 200 GB de dados intermediários por execução do trabalho. Os trabalhos que excederem esse limite falharão com uma mensagem de erro indicando que o limite de armazenamento sem servidor foi atingido.
+ **Tempo limite de execução do trabalho** — O armazenamento sem servidor oferece suporte a trabalhos com tempos limite de execução de até 24 horas. Os trabalhos configurados para tempos limite de execução mais longos falharão com uma mensagem de erro.
+ Capacidade **pré-inicializada — os trabalhadores com capacidade** pré-inicializada não oferecem suporte ao armazenamento sem servidor. Quando você configura a capacidade pré-inicializada, ela só será utilizada por trabalhos que desabilitem explicitamente o armazenamento sem servidor no nível do trabalho. As tarefas com armazenamento sem servidor habilitado sempre provisionarão novos trabalhadores sob demanda e não usarão nenhuma capacidade pré-inicializada, independentemente da configuração no nível do aplicativo.
+ **Tipos de carga de trabalho** — O armazenamento sem servidor não é compatível com trabalhos interativos e de streaming.
+ **Configuração do trabalhador** — O armazenamento sem servidor não é suportado para trabalhadores com 1 ou 2 v. CPUs

## Suportado Regiões da AWS
<a name="jobs-serverless-storage-regions"></a>

O EMR Serverless oferece suporte ao armazenamento sem servidor nas seguintes regiões:
+ Leste dos EUA (N. da Virgínia)
+ Oeste dos EUA (Oregon)
+ Europa (Irlanda)