

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

# Considerações com o Presto no Amazon EMR
<a name="emr-presto-considerations"></a>

Considere as limitações a seguir quando executar o [Presto](https://aws.amazon.com/big-data/what-is-presto/) no Amazon EMR.

## Executável da linha de comando do Presto
<a name="emr-presto-command-line-cli"></a>

No Amazon EMR, o PrestoDB e o Trino usam o mesmo executável da linha de comando, `presto-cli`, como no exemplo a seguir.

```
presto-cli --catalog hive
```

## Propriedades de implantação do Presto não configuráveis
<a name="emr-presto-deployment-config"></a>

A versão do Amazon EMR que você usa determina as configurações de implantação do Presto que estão disponíveis. Para obter mais informações sobre essas propriedades de configuração, consulte [Implantar o Presto](https://prestodb.io/docs/current/installation/deployment.html) na documentação do Presto. A tabela a seguir mostra as diferentes opções de configuração para arquivos de `properties` do Presto.


| Arquivo | Configurável | 
| --- | --- | 
|  `log.properties`  |  PrestoDB: configurável nas versões 4.0.0 e posteriores do Amazon EMR. Use a classificação para a configuração `presto-log`.  | 
|  `config.properties`  |  PrestoDB: configurável nas versões 4.0.0 e posteriores do Amazon EMR. Use a classificação para a configuração `presto-config`.  | 
|  `hive.properties`  |  PrestoDB: configurável nas versões 4.1.0 e posteriores do Amazon EMR. Use a classificação para a configuração `presto-connector-hive`.  | 
|  `node.properties`  |  PrestoDB: configurável nas versões 5.6.0 e posteriores do Amazon EMR. Use a classificação para a configuração `presto-node`.  | 
|  `jvm.config`  |  Não configurável.  | 

## Instalação do PrestoDB
<a name="emr-prestodb-prestosql"></a>

O nome da aplicação, *Presto*, continua a ser usado para instalar o PrestoDB em clusters. 

Você pode instalar o PrestoDB ou o Trino, mas não pode instalar os dois em um único cluster. Se o PrestoDB e o Trino forem especificados na tentativa de criação de um cluster, ocorrerá um erro de validação e a solicitação de criação do cluster falhará.

## Configuração do EMRFS e do PrestOS3 FileSystem
<a name="emr-presto-prestos3"></a>

Com as versões 5.12.0 e posteriores do Amazon EMR, o PrestoDB pode usar o EMRFS. Para obter mais informações, consulte [EMR File System (EMRFS)](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-fs) no *Guia de gerenciamento do Amazon EMR*. Com versões anteriores do Amazon EMR, o PrestoS3 FileSystem é a única opção de configuração.

Você pode usar uma configuração de segurança para configurar a criptografia para dados do EMRFS no Amazon S3. Você também pode usar perfis do IAM para solicitações do EMRFS para o Amazon S3. Para obter mais informações, consulte [Noções básicas sobre opções de criptografia](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-data-encryption-options.html) e [Configurar perfis do IAM para solicitações do EMRFS para o Amazon S3](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-emrfs-iam-roles.html) no *Guia de gerenciamento do Amazon EMR*.

**nota**  
Se você consultar dados subjacentes no Amazon S3 com a versão 5.12.0 do Amazon EMR, poderão ocorrer erros no Presto. Isso acontece porque o Presto não consegue obter valores de classificação de configuração em `emrfs-site.xml`. Como solução alternativa, crie um subdiretório `emrfs` em `usr/lib/presto/plugin/hive-hadoop2/` e crie um link simbólico em `usr/lib/presto/plugin/hive-hadoop2/emrfs` para o arquivo `/usr/share/aws/emr/emrfs/conf/emrfs-site.xml` existente. Em seguida, reinicie o processo presto-server (`sudo presto-server stop` seguido por `sudo presto-server start`). 

Você pode substituir o padrão do EMRFS e usar o PrestOS3 em vez disso. FileSystem Para fazer isso, use a classificação de configuração `presto-connector-hive` para definir `hive.s3-file-system-type` como `PRESTO` , conforme mostrado no exemplo a seguir. Para obter mais informações, consulte [Configurar aplicações](emr-configure-apps.md).

```
[
   {
      "Classification": "presto-connector-hive",
      "Properties": {
         "hive.s3-file-system-type": "PRESTO"
      }
   }
]
```

Se você usa o PrestOS3FileSystem, use a classificação de `presto-connector-hive` configuração para configurar as propriedades do FileSystem PrestOS3. Para obter mais informações sobre as propriedades disponíveis, consulte [Configuração do Amazon S3](https://prestodb.io/docs/current/connector/hive.html#amazon-s3-configuration) na seção Conector do Hive da documentação do Presto. Estas configurações não se aplicam ao EMRFS.

## Configuração padrão para personificação do usuário final
<a name="emr-presto-end-user-impersonation"></a>

Por padrão, as versões 5.12.0 e posteriores do Amazon EMR possibilitam a personificação do usuário final para o acesso ao HDFS. Para obter mais informações, consulte [Personificação de usuário final](https://prestodb.io/docs/current/connector/hive-security.html#end-user-impersonation) na documentação do Presto. Para alterar essa configuração usando a classificação de configuração `presto-config`, defina a propriedade `hive.hdfs.impersonation.enabled` como `false`.

## Porta padrão para interface Web do Presto
<a name="emr-presto-default-web-port"></a>

Por padrão, o Amazon EMR configura a interface Web do Presto no coordenador do Presto para usar a porta 8889 (para PrestoDB e Trino). Para alterar a porta, use a classificação de configuração `presto-config` para definir a propriedade `http-server.http.port`. Para obter mais informações, consulte [Propriedades de configuração](https://prestodb.io/docs/current/installation/deployment.html#config-properties) na seção *Implantar o Presto* na documentação do Presto.

## Problema com a execução do bucket do Hive em algumas versões
<a name="emr-presto-bucket-execution"></a>

O Presto versão 152.3 tem um problema com a execução do bucket do Hive que prejudica significativamente o desempenho das consultas do Presto em algumas circunstâncias. As versões 5.0.3, 5.1.0 e 5.2.0 do Amazon EMR incluem essa versão do Presto. Para reduzir o problema, use a classificação de configuração `presto-connector-hive` para definir a propriedade `hive.bucket-execution` como `false`, conforme mostrado no exemplo a seguir.

```
[
   {
      "Classification": "presto-connector-hive",
      "Properties": {
         "hive.bucket-execution": "false"
      }
   }
]
```