Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Überlegungen zu Presto auf Amazon EMR
Berücksichtigen Sie die folgenden Unterschiede und Einschränkungen, wenn Sie Presto
In der Befehlszeile von Presto ausführbare Datei
In Amazon EMR verwenden sowohl PrestoDB als auch PrestoSQL die gleiche ausführbare
Befehlszeilendatei, presto-cli
, wie im folgenden Beispiel.
presto-cli --catalog hive
Einige Presto-Bereitstellungseigenschaften sind nicht konfigurierbar
Abhängig von der Amazon EMR-Version, die Sie verwenden, stehen einige Presto Bereitstellungseigenschaften
möglicherweise nicht zur Verfügung. Weitere Informationen zu diesen Eigenschaften
finden Sie unter Deploying Prestoproperties
-Dateien.
Datei | Konfigurierbar |
---|---|
|
PrestoDB: Konfigurierbar in den Amazon EMR-Versionen 4.0.0 und höher. Verwenden Sie
die PrestoSQL: Konfigurierbar in den Amazon EMR-Versionen 6.1.0 und höher. Verwenden Sie
die |
|
PrestoDB: Konfigurierbar in den Amazon EMR-Versionen 4.0.0 und höher. Verwenden Sie
die PrestoSQL: Konfigurierbar in den Amazon EMR-Versionen 6.1.0 und höher. Verwenden Sie
die |
|
PrestoDB: Konfigurierbar in den Amazon EMR-Versionen 4.1.0 und höher. Verwenden Sie
die PrestoSQL: Konfigurierbar in den Amazon EMR-Versionen 6.1.0 und höher. Verwenden Sie
die |
|
PrestoDB: Konfigurierbar in Amazon EMR-Version 5.6.0 und höher. Verwenden Sie die
PrestoSQL: Konfigurierbar in den Amazon EMR-Versionen 6.1.0 und höher. Verwenden Sie
die |
|
Nicht konfigurierbar. |
EMRFS- und PrestoS3FileSystem-Konfiguration
Mit Amazon EMR Version 5.12.0 und höher kann PrestoDB EMRFS verwenden, und dies ist die Standardkonfiguration. Mit Amazon EMR Version 6.1.0 und höher verwendet PrestoSQL auch EMRFS als Standard. Weitere Informationen finden Sie unter Verwendung des EMRFS (EMR File System) im Management Guide für Amazon EMR. Für frühere Versionen ist PrestoS3FileSystem die einzige Option.
Die Verwendung von EMRFS bietet Vorteile. Sie können eine Sicherheitskonfiguration verwenden, um die Verschlüsselung für EMRFS-Daten in einzurichten.Amazon S3. Sie können auch IAM-Rollen für EMRFS-Anforderungen an Amazon S3. verwenden. Weitere Informationen finden unter Verschlüsselungsoptionen verstehen und Konfigurieren von IAM-Rollen für EMRFS-Anforderungen an Amazon S3 im Management Guide für Amazon EMR.
Ein Konfigurationsproblem kann zu Presto-Fehlern führen, wenn zugrunde liegende Daten
in Amazon S3 mit Amazon EMR, Version 5.12.0, abgefragt werden. Der Grund hierfür ist,
dass Presto keine Konfigurationsklassifizierungswerte von emrfs-site.xml
übernimmt. Erstellen Sie als Fehlerumgehung das Unterverzeichnis emrfs
unter usr/lib/presto/plugin/hive-hadoop2/
, erstellen Sie einen Symlink in usr/lib/presto/plugin/hive-hadoop2/emrfs
zur vorhandenen /usr/share/aws/emr/emrfs/conf/emrfs-site.xml
-Datei und starten Sie den presto-server-Vorgang (sudo presto-server stop
gefolgt von sudo presto-server start
) neu.
Sie können den EMRFS-Standard überschreiben und stattdessen PrestoS3FileSystem verwenden.
Verwenden Sie dazu die presto-connector-hive
-Konfigurationsklassifizierung, um hive.s3-file-system-type
auf PRESTO
zu setzen, wie im folgenden Beispiel veranschaulicht. Weitere Informationen finden
Sie unter Konfigurieren von Anwendungen.
[ { "Classification": "presto-connector-hive", "Properties": { "hive.s3-file-system-type": "PRESTO" } } ]
Wenn Sie PrestoS3FileSystem verwenden, verwenden Sie die presto-connector-hive
-Konfigurationsklassifizierung oder prestosql-connector-hive
für PrestoSQL, um PrestoS3FileSystem-Eigenschaften zu konfigurieren. Weitere Informationen
zu den verfügbaren Eigenschaften finden Sie unter Amazon S3 Configuration
Standardeinstellung für Endbenutzer-Identitätswechsel
Standardmäßig ist der Endbenutzer-Identitätswechsel ab der Amazon EMR-Version 5.12.0
und höher für den Zugriff auf HDFS aktiviert. Weitere Informationen finden Sie unter
Endbenutzer-Identitätswechselpresto-config
-Konfigurationsklassifizierung der hive.hdfs.impersonation.enabled
-Eigenschaft auf false
. setzen.
Standardport für die Presto-Webschnittstelle
Standardmäßig konfiguriert Amazon EMR die Presto-Webschnittstelle auf dem Presto-Koordinator
so, dass Port 8889 (für PrestoDB und PrestoSQL) verwendet wird. Sie können den Port
ändern, indem Sie die Konfigurationsklassifizierung presto-config
verwenden, um die Eigenschaft http-server.http.port
festzulegen. Weitere Informationen finden Sie unter Config Properties
Problem bei der Hive-Bucket-Ausführung in einigen Versionen
Presto Version 152.3 hat ein Problem mit der Hive-Bucket-Ausführung, das in Presto
in einigen Fällen zu einer erheblich langsameren Abfrageleistung führt. Diese Version
ist in den Amazon EMR-Versionen 5.0.3, 5.1.0 und 5.2.0 enthalten. Um dieses Problem
abzumildern, verwenden Sie die presto-connector-hive
-Konfigurationsklassifizierung, um die Eigenschaft hive.bucket-execution
auf false
zu setzen, wie im folgenden Beispiel veranschaulicht.
[ { "Classification": "presto-connector-hive", "Properties": { "hive.bucket-execution": "false" } } ]