Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Versi rilis
Amazon Athena untuk Apache Spark menawarkan versi rilis berikut:
PySpark mesin versi 3
PySpark versi 3 termasuk Apache Spark versi 3.2.1. Dengan versi ini, Anda dapat menjalankan kode Spark di notebook dalam konsol Athena.
Apache Spark versi 3.5
Apache Spark versi 3.5 didasarkan pada Amazon EMR 7.12 dan paket Apache Spark versi 3.5.6. Dengan versi ini, Anda dapat menjalankan kode Spark dari notebook Amazon SageMaker AI Unified Studio atau klien Spark yang kompatibel pilihan Anda. Versi ini menambahkan fitur utama untuk memberikan pengalaman yang lebih baik untuk beban kerja interaktif:
-
Secure Spark Connect — Menambahkan Spark Connect sebagai Endpoint yang diautentikasi dan resmi. AWS
-
Atribusi biaya tingkat sesi — Pengguna dapat melacak biaya per sesi interaktif di AWS Cost Explorer atau laporan Biaya dan Penggunaan. Untuk informasi selengkapnya, lihat Atribusi biaya tingkat sesi.
-
Kemampuan debugging tingkat lanjut - Menambahkan UI Spark langsung dan dukungan Spark History Server untuk men-debug beban kerja baik dari maupun dari notebook APIs . Untuk informasi selengkapnya, lihat Mengakses UI Spark.
-
dukungan akses tanpa filter - Akses tabel katalog AWS Glue Data yang dilindungi tempat Anda memiliki izin tabel lengkap. Untuk informasi selengkapnya, lihat Menggunakan Lake Formation dengan kelompok kerja Athena Spark.
Spark properti default
Tabel berikut mencantumkan properti Spark dan nilai defaultnya yang diterapkan untuk Sesi SparkConnect Athena.
| Key | Nilai default | Deskripsi |
|---|---|---|
|
|
|
Ini tidak dapat dimodifikasi. |
|
|
|
|
|
|
|
Jumlah core yang digunakan driver. Ini tidak dapat dimodifikasi selama peluncuran awal. |
|
|
|
Jumlah memori yang digunakan setiap driver. Ini tidak dapat dimodifikasi selama peluncuran awal. |
|
|
|
Jumlah overhead memori yang ditetapkan untuk beban kerja Python dan proses lain yang berjalan pada driver. Ini tidak dapat dimodifikasi selama peluncuran awal. |
|
|
|
Disk driver Spark. Ini tidak dapat dimodifikasi selama peluncuran awal. |
|
|
|
Jumlah core yang digunakan setiap eksekutor. Ini tidak dapat dimodifikasi selama peluncuran awal. |
|
|
|
Jumlah memori yang digunakan setiap driver. |
|
|
|
Jumlah overhead memori yang ditetapkan untuk beban kerja Python dan proses lain yang berjalan pada eksekutor. Ini tidak dapat dimodifikasi selama peluncuran awal. |
|
|
|
Disk eksekutor Spark. Ini tidak dapat dimodifikasi selama peluncuran awal. |
|
|
|
Arsitektur pelaksana. |
|
|
|
Opsi Java ekstra untuk driver Spark. Ini tidak dapat dimodifikasi selama peluncuran awal. |
|
|
|
Opsi Java ekstra untuk eksekutor Spark. Ini tidak dapat dimodifikasi selama peluncuran awal. |
|
|
|
Jumlah kontainer pelaksana Spark untuk dialokasikan. |
|
|
|
Opsi yang mengaktifkan alokasi sumber daya dinamis. Opsi ini menaikkan atau menurunkan jumlah pelaksana yang terdaftar dengan aplikasi, berdasarkan beban kerja. |
|
|
|
Batas bawah untuk jumlah pelaksana jika Anda mengaktifkan alokasi dinamis. |
|
|
|
Batas atas untuk jumlah pelaksana jika Anda mengaktifkan alokasi dinamis. |
|
|
|
Jumlah awal pelaksana untuk dijalankan jika Anda mengaktifkan alokasi dinamis. |
|
|
|
Lamanya waktu seorang eksekutor dapat tetap menganggur sebelum Spark menghapusnya. Ini hanya berlaku jika Anda mengaktifkan alokasi dinamis. |
|
|
|
DRA diaktifkan membutuhkan pelacakan acak untuk diaktifkan. |
|
|
|
Timeout menentukan berapa lama penjadwal Spark harus mengamati backlog berkelanjutan dari tugas yang tertunda sebelum memicu permintaan ke manajer cluster untuk meluncurkan eksekutor baru. |
|
|
|
|
|
|
|
Kelas implementasi AWS Glue metastore. |
|
|
|
AWS Glue katalog accountID. |
|
|
|
Properti menentukan daftar awalan paket yang dipisahkan koma untuk kelas yang harus dimuat oleh Aplikasi ClassLoader daripada yang terisolasi ClassLoader dibuat untuk kode Klien Hive Metastore. |
|
|
|
Mendefinisikan implementasi untuk klien S3 untuk menggunakan S3A. |
|
|
|
Mendefinisikan implementasi untuk klien S3A (S3A). |
|
|
|
Mendefinisikan implementasi untuk klien Native S3 (S3N) untuk menggunakan S3A. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Properti ini memungkinkan protokol komit yang dioptimalkan untuk pekerjaan Spark saat menulis data ke Amazon S3. Ketika disetel ke true, ini membantu Spark menghindari operasi penggantian nama file yang mahal, menghasilkan penulisan atom yang lebih cepat dan lebih andal dibandingkan dengan committer Hadoop default. |
|
|
|
Konfigurasi ini secara eksplisit menetapkan AWS wilayah untuk bucket Amazon S3 yang diakses melalui klien S3A. |
|
|
|
Ini menentukan batas waktu koneksi soket dalam milidetik. |
|
|
|
Ini memungkinkan S3A “Magic” Committer, protokol komit berkinerja tinggi tetapi spesifik yang bergantung pada dukungan manajer klaster yang mendasarinya untuk jalur khusus. |
|
|
|
Relevan hanya ketika Magic Committer diaktifkan, ini menentukan apakah daftar file yang dilakukan oleh tugas harus dilacak dalam memori alih-alih ditulis ke file disk sementara. |
|
|
|
Pengaturan ini secara eksplisit memilih algoritma S3A Output Committer tertentu yang akan digunakan (misalnya, direktori, dipartisi, atau sihir). Dengan menentukan nama, Anda memilih strategi yang mengelola data sementara, menangani kegagalan tugas, dan melakukan komit atom akhir ke jalur Amazon S3 target. |
|
|
|
Properti memungkinkan dukungan untuk Hibah Akses Amazon S3 saat mengakses data Amazon S3 melalui klien sistem file S3A/EMRFS. |
|
|
|
Saat Amazon S3 Access Grants diaktifkan, properti ini mengontrol apakah klien Amazon S3 harus kembali ke kredenal IAM tradisional jika pencarian Access Grants gagal atau tidak memberikan izin yang memadai. |
|
|
|
Jalur Python untuk driver. |
|
|
|
Jalur Python untuk eksekutor. |
|
|
|
Konfigurasi ini mengontrol apakah Spark menggunakan proses daemon pekerja Python pada setiap pelaksana. Saat diaktifkan (true, default), pelaksana membuat pekerja Python tetap hidup di antara tugas untuk menghindari overhead peluncuran berulang kali dan menginisialisasi penerjemah Python baru untuk setiap tugas, secara signifikan meningkatkan kinerja aplikasi. PySpark |
|
|
|
Memungkinkan penggunaan Apache Arrow untuk mengoptimalkan transfer data antara proses JVM dan Python di. PySpark |
|
|
|
Properti konfigurasi yang mengontrol perilaku Spark ketika terjadi kesalahan selama transfer data antara JVM dan Python menggunakan optimasi Apache Arrow. |
|
|
|
Properti konfigurasi yang mengontrol apakah Spark menggunakan file committer yang dioptimalkan saat menulis file Parquet ke sistem file tertentu, khususnya sistem penyimpanan cloud seperti Amazon S3. |
|
|
|
Properti konfigurasi Spark yang menentukan nama kelas sepenuhnya memenuhi syarat dari Hadoop yang akan digunakan saat OutputCommitter menulis file Parket. |
|
|
|
Properti ini mengontrol apakah Driver secara aktif membersihkan sumber daya aplikasi Spark yang terkait dengan pelaksana yang berjalan pada node yang telah dihapus atau kedaluwarsa. |
|
|
|
Properti memungkinkan logika Spark untuk secara otomatis memasukkan daftar hitam pelaksana yang saat ini sedang mengalami dekomisioning (shutdown anggun) oleh manajer cluster. Ini mencegah penjadwal mengirim tugas baru ke pelaksana yang akan keluar, meningkatkan stabilitas pekerjaan selama pengurangan sumber daya. |
|
|
|
Waktu maksimum Spark akan menunggu tugas berhasil dimigrasi dari eksekutor penonaktifan sebelum memasukkan host ke dalam daftar hitam. |
|
|
|
Memberitahu Spark untuk bersikap lunak dan tidak gagal dalam upaya seluruh tahap jika kegagalan pengambilan terjadi saat membaca data shuffle dari eksekutor penonaktifan. Kegagalan pengambilan dianggap dapat dipulihkan, dan Spark akan mengambil kembali data dari lokasi yang berbeda (berpotensi memerlukan perhitungan ulang), memprioritaskan penyelesaian pekerjaan daripada penanganan kesalahan yang ketat selama shutdown yang anggun. |
|
|
|
Properti ini biasanya digunakan secara internal atau dalam pengaturan pengelola klaster tertentu untuk menentukan durasi total maksimum yang diharapkan oleh Spark untuk proses dekomisioning host. Jika waktu penonaktifan aktual melebihi ambang batas ini, Spark dapat mengambil tindakan agresif, seperti memasukkan host ke dalam daftar hitam atau meminta penghentian paksa, untuk membebaskan sumber daya. |
|
|
|
Ketika tugas gagal mengambil data shuffle atau RDD dari host tertentu, menyetel ini ke true menginstruksikan Spark untuk membatalkan pendaftaran semua blok output yang terkait dengan aplikasi yang gagal pada host tersebut. Hal ini mencegah tugas future dari mencoba mengambil data dari host yang tidak dapat diandalkan, memaksa Spark untuk menghitung ulang blok yang diperlukan di tempat lain dan meningkatkan ketahanan pekerjaan terhadap masalah jaringan intermiten. |