Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Consideraciones relacionadas con el uso de Presto en Amazon EMR
Tenga en cuenta las siguientes limitaciones al ejecutar Presto
Ejecutable de línea de comandos de Presto
En Amazon EMR, PrestoDB y Trino utilizan el mismo ejecutable de línea de comandos, presto-cli
, como en el siguiente ejemplo.
presto-cli --catalog hive
Propiedades de la implementación de Presto no configurables
La versión de Amazon EMR que utilice determina las configuraciones de implementación de Presto disponibles. Para obtener más información sobre estas propiedades de configuración, consulte Implementación de Prestoproperties
de Presto.
Archivos | Configurable |
---|---|
|
PrestoDB: versiones 4.0.0 y posteriores configurables de Amazon EMR. Utilice la clasificación de configuración Trino (PrestoDB): versiones 6.1.0 y posteriores configurables de Amazon EMR. Utilice la clasificación de configuración |
|
PrestoDB: versiones 4.0.0 y posteriores configurables de Amazon EMR. Utilice la clasificación de configuración Trino (PrestoDB): versiones 6.1.0 y posteriores configurables de Amazon EMR. Utilice la clasificación de configuración |
|
PrestoDB: versiones 4.1.0 y posteriores configurables de Amazon EMR. Utilice la clasificación de configuración Trino (PrestoDB): versiones 6.1.0 y posteriores configurables de Amazon EMR. Utilice la clasificación de configuración |
|
PrestoDB: versiones 5.6.0 y posteriores configurables de Amazon EMR. Utilice la clasificación de configuración Trino (PrestoDB): versiones 6.1.0 y posteriores configurables de Amazon EMR. Utilice la clasificación de configuración |
|
No se puede configurar. |
Instalación de PrestoDB y Trino
El nombre de la aplicación Presto se sigue utilizando para instalar PrestoDB en los clústeres. Para instalar Trino en clústeres, utilice el nombre de la aplicación Trino (o PrestoSQL en versiones anteriores de Amazon EMR).
Puede instalar PrestoDB o Trino, pero no puede instalar ambos en un solo clúster. Si se especifican PrestoDB y Trino al intentar crear un clúster, se produce un error tanto en la validación como en la solicitud de creación del clúster.
Configuración de EMRFS y PrestoS3 FileSystem
Con las versiones 5.12.0 y posteriores de Amazon EMR, PrestoDB puede utilizar EMRFS. Esta configuración es la predeterminada. EMRFS también es el sistema de archivos predeterminado para Trino (PrestoSQL) en las versiones 6.1.0 y posteriores de Amazon EMR. Para obtener más información, consulte Sistema de archivos de EMR (EMRFS) en la Guía de administración de Amazon EMR. En las versiones anteriores de Amazon EMR, PrestoS3 FileSystem es la única opción de configuración.
Se puede utilizar una configuración de seguridad para configurar el cifrado de los datos de EMRFS en Amazon S3. También puede utilizar roles de IAM para las solicitudes de EMRFS a Amazon S3. Para obtener más información, consulte Descripción de las opciones de cifrado y Configuración de roles de IAM para solicitudes de EMRFS a Amazon S3 en la Guía de administración de Amazon EMR.
nota
Si consulta los datos subyacentes en Amazon S3 con la versión 5.12.0 de Amazon EMR, pueden producirse errores en Presto. Esto se debe a que Presto no recoge los valores de clasificación de configuración de emrfs-site.xml
. Como solución alternativa, cree un subdirectorio de emrfs
en usr/lib/presto/plugin/hive-hadoop2/
y cree un enlace simbólico en usr/lib/presto/plugin/hive-hadoop2/emrfs
al archivo /usr/share/aws/emr/emrfs/conf/emrfs-site.xml
existente. A continuación, reinicie el proceso presto-server (sudo presto-server stop
seguido de sudo presto-server start
).
Puede anular el EMRFS predeterminado y utilizar PrestoS3 en su lugar. FileSystem Para ello, utilice la clasificación de configuración presto-connector-hive
para establecer hive.s3-file-system-type
en PRESTO
, tal como se muestra en el siguiente ejemplo. Para obtener más información, consulte Configuración de aplicaciones.
[ { "Classification": "presto-connector-hive", "Properties": { "hive.s3-file-system-type": "PRESTO" } } ]
Si utiliza PrestoS3FileSystem, utilice la clasificación de presto-connector-hive
configuración o trino-connector-hive
utilice Trino para configurar las propiedades de PrestoS3. FileSystem Para obtener más información sobre las propiedades disponibles, consulte Configuración de Amazon S3
Configuración predeterminada para la suplantación del usuario final
De forma predeterminada, las versiones 5.12.0 y posteriores de Amazon EMR permiten la suplantación del usuario final para obtener acceso a HDFS. Para obtener más información, consulte Suplantación de usuarios finalespresto-config
, establezca la propiedad hive.hdfs.impersonation.enabled
en false
.
Puerto predeterminado para la interfaz web de Presto
De forma predeterminada, Amazon EMR configura la interfaz web de Presto en el coordinador de Presto para que utilice el puerto 8889 (para PrestoDB y Trino). Para cambiar el puerto, utilice la clasificación de configuración presto-config
para establecer la propiedad de http-server.http.port
. Para obtener más información, consulte Propiedades de configuración
Problema con la ejecución del bucket de Hive en algunas versiones
Presto versión 152.3 tiene un problema con la ejecución de buckets de Hive que provoca un rendimiento de consultas de Presto notablemente más lento en algunas circunstancias. Las versiones 5.0.3, 5.1.0 y 5.2.0 de Amazon EMR incluyen esta versión de Presto. Para mitigar este problema, utilice la clasificación de configuración presto-connector-hive
para establecer la propiedad hive.bucket-execution
en false
, tal y como se muestra en el siguiente ejemplo.
[ { "Classification": "presto-connector-hive", "Properties": { "hive.bucket-execution": "false" } } ]