翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon での Presto に関する考慮事項 EMR
Amazon で Presto
Presto コマンドライン実行可能ファイル
Amazon ではEMR、PrestoDB と Trino はどちらも次の例presto-cli
と同じコマンドライン実行可能ファイル を使用します。
presto-cli --catalog hive
Presto デプロイプロパティは設定可能ではない
EMR 使用する Amazon のバージョンによって、使用可能な Presto デプロイ設定が決まります。これらの設定プロパティについては、Presto ドキュメントの「Deploying Prestoproperties
ファイルのさまざまな設定オプションを示します。
File | 設定可能 |
---|---|
|
PrestoDB: Amazon EMRバージョン 4.0.0 以降で設定可能です。 Trino (PrestoSQL): Amazon EMRバージョン 6.1.0 以降で設定可能です。 |
|
PrestoDB: Amazon EMRバージョン 4.0.0 以降で設定可能です。 Trino (PrestoSQL): Amazon EMRバージョン 6.1.0 以降で設定可能です。 |
|
PrestoDB: Amazon EMRバージョン 4.1.0 以降で設定可能です。 Trino (PrestoSQL): Amazon EMRバージョン 6.1.0 以降で設定可能です。 |
|
PrestoDB: Amazon EMRバージョン 5.6.0 以降で設定可能です。 Trino (PrestoSQL): Amazon EMRバージョン 6.1.0 以降で設定可能です。 |
|
設定可能ではありません。 |
PrestoDB と Trino のインストール
アプリケーション名 Presto は、クラスターに PrestoDB をインストールするために引き続き使用されます。クラスターに Trino をインストールするには、アプリケーション名 Trino (または古いバージョンの Amazon の PrestoSQLEMR) を使用します。
PrestoDB または Trino のいずれかをインストールできますが、両方を単一のクラスターにインストールすることはできません。クラスターを作成しようとしたときに PrestoDB と Trino の両方を指定すると、検証エラーが発生し、クラスター作成リクエストは失敗します。
EMRFS と PrestoS3FileSystem の設定
Amazon EMRバージョン 5.12.0 以降では、PrestoDB は を使用できますEMRFS。これはデフォルト設定です。 EMRFSは、Amazon EMRバージョン 6.1.0 以降の Trino (PrestoSQL) のデフォルトのファイルシステムでもあります。詳細については、「Amazon EMR管理ガイド」のEMR「ファイルシステム (EMRFS)」を参照してください。以前のバージョンの Amazon ではEMR、PrestoS3 FileSystem が唯一の設定オプションです。
セキュリティ設定を使用して、Amazon S3 内のEMRFSデータの暗号化を設定できます。Amazon S3 へのEMRFSリクエストに IAMロールを使用することもできます。詳細については、「Amazon EMR管理ガイド」の「暗号化オプションについて」および「Amazon S3 へのリクエストのロールを設定する」を参照してください。 IAM EMRFS Amazon S3
注記
Amazon EMRバージョン 5.12.0 で Amazon S3 の基盤となるデータをクエリすると、Presto エラーが発生する可能性があります。これは、Presto が emrfs-site.xml
から設定分類値を取得できないためです。回避策として、usr/lib/presto/plugin/hive-hadoop2/
の下に emrfs
サブディレクトリを作成し、既存の /usr/share/aws/emr/emrfs/conf/emrfs-site.xml
ファイルへのシンボリックリンクを usr/lib/presto/plugin/hive-hadoop2/emrfs
に作成します。次に presto-server プロセスを再起動します (sudo presto-server stop
に続いて sudo presto-server start
)。
EMRFS デフォルトを上書きし、PrestoS3instead FileSystem を使用できます。これを行うには、次の例に示すように presto-connector-hive
設定分類を使用して、hive.s3-file-system-type
を PRESTO
に設定します。詳細については、「アプリケーションの設定」を参照してください。
[ { "Classification": "presto-connector-hive", "Properties": { "hive.s3-file-system-type": "PRESTO" } } ]
PrestoS3FileSystem を使用する場合は、presto-connector-hive
設定分類 または Trino trino-connector-hive
で PrestoS3FileSystem プロパティを設定します。使用可能なプロパティの詳細については、Presto ドキュメントの「Hive Connector」セクションにある「Amazon S3 の設定
エンドユーザー偽装のデフォルト設定
デフォルトでは、Amazon EMRバージョン 5.12.0 以降では、エンドユーザー偽装による へのアクセスが有効になっていますHDFS。詳細については、Presto のドキュメントの「エンドユーザー偽装presto-config
設定分類を使用して変更するには、hive.hdfs.impersonation.enabled
プロパティを false
に設定します。
Presto ウェブインターフェイス用のデフォルトポート
デフォルトでは、Amazon はポート 8889 (PrestoDB および Trino の場合) を使用するように Presto コーディネーターの Presto ウェブインターフェイスEMRを設定します。このポートを変更するには、presto-config
設定分類を使用して http-server.http.port
プロパティを設定します。詳細については、Presto ドキュメントの「Deploying Presto」セクションの「Config properties
一部のリリースでの Hive バケットの実行に関する問題
Presto バージョン 152.3 には、特定の状況で Presto のクエリパフォーマンスを大幅に低下させる Hive バケットの実行に問題があります。Amazon EMRバージョン 5.0.3、5.1.0、および 5.2.0 には、このバージョンの Presto が含まれています。この問題を軽減するには、次の例に示すように presto-connector-hive
設定分類を使用して、hive.bucket-execution
プロパティを false
に設定します。
[ { "Classification": "presto-connector-hive", "Properties": { "hive.bucket-execution": "false" } } ]