

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Pertimbangan dengan Presto on Amazon EMR
<a name="emr-presto-considerations"></a>

Pertimbangkan batasan berikut saat Anda menjalankan [Presto](https://aws.amazon.com/big-data/what-is-presto/) di Amazon EMR.

## Perintah baris eksekusi Presto
<a name="emr-presto-command-line-cli"></a>

Di Amazon EMR, PrestoDB dan Trino keduanya menggunakan baris perintah yang sama yang dapat dieksekusi,, seperti pada contoh berikut. `presto-cli`

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

## Properti penyebaran Presto yang tidak dapat dikonfigurasi
<a name="emr-presto-deployment-config"></a>

Versi Amazon EMR yang Anda gunakan menentukan konfigurasi penerapan Presto yang tersedia. Untuk informasi selengkapnya tentang properti konfigurasi ini, lihat [Menerapkan Presto di dokumentasi Presto](https://prestodb.io/docs/current/installation/deployment.html). Tabel berikut menunjukkan opsi konfigurasi yang berbeda untuk `properties` file Presto.


| Berkas | Dapat dikonfigurasi | 
| --- | --- | 
|  `log.properties`  |  PrestODB: Dapat dikonfigurasi di Amazon EMR versi 4.0.0 dan yang lebih baru. Gunakan klasifikasi konfigurasi `presto-log`.  | 
|  `config.properties`  |  PrestODB: Dapat dikonfigurasi di Amazon EMR versi 4.0.0 dan yang lebih baru. Gunakan klasifikasi konfigurasi `presto-config`.  | 
|  `hive.properties`  |  PrestODB: Dapat dikonfigurasi di Amazon EMR versi 4.1.0 dan yang lebih baru. Gunakan klasifikasi konfigurasi `presto-connector-hive`.  | 
|  `node.properties`  |  PrestODB: Dapat dikonfigurasi di Amazon EMR versi 5.6.0 dan yang lebih baru. Gunakan klasifikasi konfigurasi `presto-node`.  | 
|  `jvm.config`  |  Tidak dapat dikonfigurasi.  | 

## Instalasi PrestODB
<a name="emr-prestodb-prestosql"></a>

Nama aplikasi *Presto* terus digunakan untuk menginstal PrestoDB pada cluster. 

Anda dapat menginstal PrestoDB atau Trino, tetapi Anda tidak dapat menginstal keduanya pada satu cluster. Jika Anda menentukan PrestoDB dan Trino saat Anda mencoba membuat klaster, kesalahan validasi terjadi dan permintaan pembuatan klaster gagal.

## Konfigurasi EMRFS dan PrestOS3 FileSystem
<a name="emr-presto-prestos3"></a>

Dengan Amazon EMR versi 5.12.0 dan yang lebih baru, PrestoDB dapat menggunakan EMRFS. Untuk informasi selengkapnya, lihat [Sistem File EMR (EMRFS) di Panduan Manajemen](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-fs) *EMR* Amazon. Dengan versi Amazon EMR sebelumnya, PrestOS3 FileSystem adalah satu-satunya opsi konfigurasi.

Anda dapat menggunakan konfigurasi keamanan untuk mengatur enkripsi untuk data EMRFS di Amazon S3. Anda juga dapat menggunakan peran IAM untuk permintaan EMRFS ke Amazon S3. Untuk informasi lebih lanjut, lihat [Memahami opsi enkripsi](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-data-encryption-options.html) dan [Mengkonfigurasi peran IAM untuk permintaan EMRFS ke Amazon S3](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-emrfs-iam-roles.html) dalam *Amazon EMR*.

**catatan**  
Jika Anda menanyakan data yang mendasarinya di Amazon S3 dengan Amazon EMR versi 5.12.0, kesalahan Presto dapat terjadi. Hal ini karena Presto gagal untuk mengambil nilai klasifikasi konfigurasi dari `emrfs-site.xml`. Sebagai solusinya, buat `emrfs` subdirektori di bawah `usr/lib/presto/plugin/hive-hadoop2/` dan buat symlink ke file yang ada`usr/lib/presto/plugin/hive-hadoop2/emrfs`. `/usr/share/aws/emr/emrfs/conf/emrfs-site.xml` Kemudian restart proses presto-server (`sudo presto-server stop`diikuti oleh). `sudo presto-server start` 

Anda dapat mengganti default EMRFS dan menggunakan PrestOS3 sebagai gantinya. FileSystem Untuk melakukannya, gunakan perintah `presto-connector-hive` klasifikasi konfigurasi untuk mengatur `hive.s3-file-system-type` ke `PRESTO` Seperti yang ditunjukkan dalam contoh berikut. Untuk informasi selengkapnya, lihat [Konfigurasikan aplikasi](emr-configure-apps.md).

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

Jika Anda menggunakan PrestOS3FileSystem, gunakan klasifikasi `presto-connector-hive` konfigurasi untuk mengonfigurasi properti PrestOS3. FileSystem Untuk informasi selengkapnya tentang properti yang tersedia, lihat [konfigurasi Amazon S3](https://prestodb.io/docs/current/connector/hive.html#amazon-s3-configuration) di bagian Hive Connector pada dokumentasi Presto. Pengaturan ini tidak berlaku untuk EMRFS.

## Pengaturan default untuk peniruan pengguna akhir
<a name="emr-presto-end-user-impersonation"></a>

Secara default, Amazon EMR versi 5.12.0 dan yang lebih baru mengaktifkan peniruan identitas pengguna akhir untuk akses ke HDFS. Untuk informasi lebih lanjut, lihat [Peniruan nama pengguna akhir](https://prestodb.io/docs/current/connector/hive-security.html#end-user-impersonation) dalam dokumentasi Presto. Untuk mengubah setelan ini dengan klasifikasi `presto-config` konfigurasi, setel `hive.hdfs.impersonation.enabled` properti ke`false`.

## Port default untuk antarmuka web Presto
<a name="emr-presto-default-web-port"></a>

Secara default, Amazon EMR mengkonfigurasi antarmuka web Presto pada koordinator Presto untuk menggunakan port 8889 (untuk PrestoDB dan Trino). Untuk mengubah port, gunakan klasifikasi `presto-config` konfigurasi untuk mengatur `http-server.http.port` properti. Untuk informasi lebih lanjut, lihat [Properti Config](https://prestodb.io/docs/current/installation/deployment.html#config-properties) dalam *Penerapan Presto* bagian Dokumentasi Presto.

## Masalah dengan eksekusi Hive Bucket dalam beberapa rilis
<a name="emr-presto-bucket-execution"></a>

Presto versi 152.3 memiliki masalah dengan eksekusi bucket Hive yang menyebabkan kinerja kueri Presto yang lebih lambat secara signifikan dalam beberapa kondisi. Amazon EMR versi 5.0.3, 5.1.0, dan 5.2.0 termasuk versi Presto ini. Untuk mengurangi masalah ini, gunakan klasifikasi `presto-connector-hive` konfigurasi untuk menyetel `hive.bucket-execution` properti`false`, seperti yang ditunjukkan pada contoh berikut.

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