Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Kueri tabel yang dikonfigurasi menggunakan template analisis SQL
Prosedur ini menunjukkan cara menggunakan templat analisis di AWS Clean Rooms konsol untuk menanyakan tabel yang dikonfigurasi dengan aturan Analisis kustom.
Untuk menggunakan template analisis SQL untuk menanyakan tabel yang dikonfigurasi dengan aturan Analisis kustom
-
Masuk ke AWS Management Console dan buka AWS Clean Rooms konsol di https://console.aws.amazon.com/cleanrooms
. -
Di panel navigasi kiri, pilih Kolaborasi.
-
Pilih kolaborasi yang memiliki status kemampuan anggota Anda dari Menjalankan kueri.
-
Pada tab Analisis, di bawah bagian Tabel, lihat tabel dan jenis aturan analisis terkait (Aturan analisis kustom).
catatan
Jika Anda tidak melihat tabel yang Anda harapkan dalam daftar, mungkin karena alasan berikut:
-
Tabel belum dikaitkan.
-
Tabel tidak memiliki aturan analisis yang dikonfigurasi.
-
-
Di bawah bagian Analisis, untuk mode Analisis, pilih Jalankan templat analisis dan kemudian pilih templat analisis dari daftar dropdown.
-
Parameter membentuk template analisis SQL akan secara otomatis terisi dalam Definisi.
-
(Hanya mesin analitik percikan) Tentukan jenis Pekerja yang didukung dan Jumlah pekerja.
Gunakan tabel berikut untuk menentukan jenis dan nomor atau pekerja yang Anda butuhkan untuk kasus penggunaan Anda.
Jenis pekerja vCPU Memori (GB) Penyimpanan (GB) Jumlah pekerja Total Unit Pemrosesan Kamar Bersih (CRPU) CR.1X (standar) 4 30 100 4 8 128 256 CR.4X 16 120 400 4 32 32 256 catatan
Jenis pekerja yang berbeda dan jumlah pekerja memiliki biaya terkait. Untuk mempelajari lebih lanjut tentang harga, lihat AWS Clean Rooms harga
. -
(Hanya mesin analitik percikan) Tentukan properti Spark yang didukung.
-
Pilih Tambahkan properti Spark.
-
Pada kotak dialog properti Spark, pilih nama Properti dari daftar dropdown dan masukkan Nilai.
Tabel berikut memberikan definisi untuk setiap properti.
Untuk informasi selengkapnya tentang properti Spark, lihat Spark Properties
di dokumentasi Apache Spark. Nama Properti Deskripsi nilai default Spark.Task.MaxFailures
Mengontrol berapa kali berturut-turut tugas dapat gagal sebelum pekerjaan gagal. Membutuhkan nilai yang lebih besar dari atau sama dengan 1. Jumlah percobaan ulang yang diizinkan sama dengan nilai ini dikurangi 1. Hitungan kegagalan diatur ulang jika ada upaya yang berhasil. Kegagalan di berbagai tugas tidak menumpuk menuju batas ini.
4
spark.sql.file. maxPartitionBytes
Menetapkan jumlah maksimum byte untuk dikemas ke dalam satu partisi ketika membaca dari sumber berbasis file seperti Parquet, JSON, dan ORC.
128MB
Spark.hadoop.fs.s3.maxRetries
Menetapkan jumlah maksimum percobaan ulang untuk operasi file Amazon S3.
spark.network.timeout
Menetapkan batas waktu default untuk semua interaksi jaringan. Mengganti pengaturan batas waktu berikut jika tidak dikonfigurasi:
-
spark.storage. blockManagerHeartbeatTimeoutMs
-
spark.shuffle.io.connectionTimeout
-
Spark.rpc.askTimeout
-
Spark.rpc.lookupTimeout
Akan Ditentukan Kemudian
spark.rdd.compress
Menentukan apakah untuk mengompres partisi RDD serial menggunakan spark.io.compression.codec. Berlaku StorageLevel untuk.MEMORY_ONLY_SER di Java dan Scala, atau .MEMORY_ONLY dengan Python. StorageLevel Mengurangi ruang penyimpanan tetapi membutuhkan waktu pemrosesan CPU tambahan.
SALAH
spark.shuffle.spill.compress
Menentukan apakah untuk mengompres data tumpahan shuffle menggunakan spark.io.compression.codec.
BETUL
spark.sql.adaptif. advisoryPartitionSizeInBytes
Menetapkan ukuran target dalam byte untuk partisi acak selama pengoptimalan adaptif ketika spark.sql.adaptive.enabled benar. Mengontrol ukuran partisi saat menggabungkan partisi kecil atau memisahkan partisi miring.
(nilai spark.sql.adaptive.shuffle. targetPostShuffleInputSize)
spark.sql.adaptif. autoBroadcastJoinAmbang
Menetapkan ukuran tabel maksimum dalam byte untuk penyiaran ke node pekerja selama bergabung. Berlaku hanya dalam kerangka adaptif. Menggunakan nilai default yang sama seperti spark.sql. autoBroadcastJoinAmbang batas. Setel ke -1 untuk menonaktifkan penyiaran.
(tidak ada)
spark.sql.adaptive.coalescepartitions.enabled
Menentukan apakah akan menggabungkan partisi shuffle bersebelahan berdasarkan spark.sql.adaptive. advisoryPartitionSizeInBytes untuk mengoptimalkan ukuran tugas. Membutuhkan spark.sql.adaptive.enabled agar benar.
BETUL
Spark.sql.adaptive.CoalescePartitions. initialPartitionNum
Mendefinisikan jumlah awal partisi shuffle sebelum penggabungan. Memerlukan spark.sql.adaptive.enabled dan spark.sql.adaptive.CoalescePartitions.enabled untuk menjadi true. Default ke nilai spark.sql.shuffle.partitions.
(tidak ada)
Spark.sql.adaptive.CoalescePartitions. minPartitionSize
Menetapkan ukuran minimum untuk partisi shuffle yang digabungkan untuk mencegah partisi menjadi terlalu kecil selama optimasi adaptif.
1 MB
spark.sql.adaptive.coalescepartitions.parallelismFirst
Menentukan apakah untuk menghitung ukuran partisi berdasarkan paralelisme cluster bukan spark.sql.adaptive. advisoryPartitionSizeInBytes selama penggabungan partisi. Menghasilkan ukuran partisi yang lebih kecil dari ukuran target yang dikonfigurasi untuk memaksimalkan paralelisme. Kami merekomendasikan pengaturan ini ke false pada cluster sibuk untuk meningkatkan pemanfaatan sumber daya dengan mencegah tugas-tugas kecil yang berlebihan.
BETUL
spark.sql.adaptive.enabled
Menentukan apakah akan mengaktifkan eksekusi kueri adaptif untuk mengoptimalkan kembali rencana kueri selama eksekusi kueri, berdasarkan statistik runtime yang akurat.
BETUL
spark.sql.adaptif. forceOptimizeSkewedBergabunglah
Menentukan apakah akan memaksa mengaktifkan OptimizeSkewedJoin bahkan jika memperkenalkan shuffle tambahan.
SALAH
spark.sql.adaptif. localShuffleReader.diaktifkan
Menentukan apakah akan menggunakan pembaca shuffle lokal ketika partisi shuffle tidak diperlukan, seperti setelah mengonversi dari gabungan sort-merge ke broadcast-hash bergabung. Membutuhkan spark.sql.adaptive.enabled agar benar.
BETUL
spark.sql.adaptif. maxShuffledHashJoinLocalMapThreshold
Menetapkan ukuran partisi maksimum dalam byte untuk membangun peta hash lokal. Memprioritaskan gabungan hash yang diacak daripada gabungan sort-merge saat:
-
Nilai ini sama atau melebihi spark.sql.adaptive. advisoryPartitionSizeInBytes
-
Semua ukuran partisi berada dalam batas ini
Mengesampingkan spark.sql.join. preferSortMergeBergabunglah dengan pengaturan.
0 byte
spark.sql.adaptif. optimizeSkewsInRebalancePartitions.diaktifkan
Menentukan apakah akan mengoptimalkan partisi shuffle miring dengan membaginya menjadi partisi yang lebih kecil berdasarkan spark.sql.adaptive. advisoryPartitionSizeInBytes. Membutuhkan spark.sql.adaptive.enabled agar benar.
BETUL
spark.sql.adaptif. rebalancePartitionsSmallPartitionFactor
Mendefinisikan faktor ambang ukuran untuk menggabungkan partisi selama pemisahan. Partisi yang lebih kecil dari faktor ini dikalikan dengan spark.sql.adaptive. advisoryPartitionSizeInBytes digabung.
0,2
Spark.sql.adaptive.skewjoin.enabled
Menentukan apakah untuk menangani data miring dalam bergabung diacak dengan memisahkan dan opsional mereplikasi partisi miring. Berlaku untuk gabungan hash sort-merge dan shuffled. Membutuhkan spark.sql.adaptive.enabled agar benar.
BETUL
Spark.sql.adaptive.skewJoin. skewedPartitionFactor
Menentukan faktor ukuran yang menentukan kemiringan partisi. Partisi miring ketika ukurannya melebihi keduanya:
-
Faktor ini dikalikan dengan ukuran partisi median
-
Nilai spark.sql.adaptive.skewJoin. skewedPartitionThresholdInBytes
5
Spark.sql.adaptive.skewJoin. skewedPartitionThresholdInBytes
Menetapkan ambang ukuran dalam byte untuk mengidentifikasi partisi miring. Partisi miring ketika ukurannya melebihi keduanya:
-
Ambang batas ini
-
Ukuran partisi median dikalikan dengan spark.sql.adaptive.skewJoin. skewedPartitionFactor
Kami merekomendasikan pengaturan nilai ini lebih besar dari spark.sql.adaptive. advisoryPartitionSizeInBytes.
256MB
spark.sql. autoBroadcastJoinAmbang
Menetapkan ukuran tabel maksimum dalam byte untuk penyiaran ke node pekerja selama bergabung. Setel ke -1 untuk menonaktifkan penyiaran.
10MB
Spark.Sql.BroadcastTimeout
Mengontrol periode batas waktu dalam hitungan detik untuk operasi siaran selama siaran bergabung.
300 detik
spark.sql.cbo.enabled
Menentukan apakah akan mengaktifkan optimasi berbasis biaya (CBO) untuk estimasi statistik rencana.
SALAH
Spark.sql.cbo.joinreorder.dp.star.filter
Menentukan apakah akan menerapkan heuristik filter star-join selama enumerasi bergabung berbasis biaya.
SALAH
Spark.sql.cbo.joinreorder.dp.Threshold
Menetapkan jumlah maksimum node bergabung yang diizinkan dalam algoritma pemrograman dinamis.
12
Spark.sql.cbo.joinreOrder.enabled
Menentukan apakah akan mengaktifkan pengurutan ulang bergabung dalam optimasi berbasis biaya (CBO).
SALAH
Spark.sql.cbo.planstats.enabled
Menentukan apakah untuk mengambil jumlah baris dan statistik kolom dari katalog selama pembuatan rencana logis.
SALAH
spark.sql.cbo. starSchemaDetection
Menentukan apakah akan mengaktifkan pengurutan ulang gabungan berdasarkan deteksi skema bintang.
SALAH
Spark.Sql.CrossJoin.diaktifkan
spark.sql.file. maxPartitionNum
Menetapkan jumlah maksimum target partisi file split untuk sumber berbasis file (Parket, JSON, dan ORC). Rescales partisi ketika hitungan awal melebihi nilai ini. Ini adalah target yang disarankan, bukan batas yang dijamin.
(tidak ada)
spark.sql.file. maxRecordsPerBerkas
Menetapkan jumlah maksimum catatan untuk menulis ke satu file. Tidak ada batasan yang berlaku saat disetel ke nol atau nilai negatif.
0
spark.sql.file. minPartitionNum
Menetapkan jumlah minimum target partisi file terpisah untuk sumber berbasis file (Parket, JSON, dan ORC). Default ke spark.sql. leafNodeDefaultParalelisme. Ini adalah target yang disarankan, bukan batas yang dijamin.
(tidak ada)
spark.sql. inMemoryColumnarStorage.batchsize
Mengontrol ukuran batch untuk caching kolumnar. Meningkatkan ukuran meningkatkan pemanfaatan memori dan kompresi tetapi meningkatkan risiko out-of-memory kesalahan.
10000
spark.sql. inMemoryColumnarpenyimpanan.dikompresi
Menentukan apakah akan secara otomatis memilih codec kompresi untuk kolom berdasarkan statistik data.
BETUL
spark.sql. inMemoryColumnarPenyimpanan. enableVectorizedReader
Menentukan apakah untuk mengaktifkan pembacaan vektor untuk caching kolumnar.
BETUL
spark.sql.legacy. allowHashOnMapType
Menentukan apakah untuk memungkinkan operasi hash pada struktur data tipe peta. Pengaturan lama ini mempertahankan kompatibilitas dengan penanganan jenis peta versi Spark yang lebih lama.
spark.sql.legacy. allowNegativeScaleOfDecimal
Menentukan apakah untuk memungkinkan nilai skala negatif dalam definisi tipe desimal. Setelan lama ini mempertahankan kompatibilitas dengan versi Spark lama yang mendukung skala desimal negatif.
spark.sql.legacy. castComplexTypesToString.diaktifkan
Menentukan apakah akan mengaktifkan perilaku warisan untuk casting tipe kompleks untuk string. Menjaga kompatibilitas dengan aturan konversi tipe versi Spark yang lebih lama.
spark.sql.legacy. charVarcharAsTali
Menentukan apakah untuk memperlakukan jenis CHAR dan VARCHAR sebagai tipe STRING. Pengaturan lama ini menyediakan kompatibilitas dengan penanganan tipe string versi Spark yang lebih lama.
spark.sql.legacy. createEmptyCollectionUsingStringType
Menentukan apakah untuk membuat koleksi kosong menggunakan elemen tipe string. Setelan lama ini mempertahankan kompatibilitas dengan perilaku inisialisasi koleksi versi Spark yang lebih lama.
spark.sql.legacy. exponentLiteralAsDesimal. Diaktifkan
Menentukan apakah untuk menafsirkan literal eksponensial sebagai tipe desimal. Pengaturan lama ini mempertahankan kompatibilitas dengan penanganan literal numerik versi Spark yang lebih lama.
spark.sql.legacy.json. allowEmptyString.diaktifkan
Menentukan apakah untuk mengizinkan string kosong dalam pengolahan JSON. Pengaturan lama ini mempertahankan kompatibilitas dengan perilaku penguraian JSON versi Spark yang lebih lama.
spark.sql.legacy.parquet.int96 RebaseModelRead
Menentukan apakah akan menggunakan mode rebase INT96 stempel waktu lama saat membaca file Parket. Pengaturan lama ini mempertahankan kompatibilitas dengan penanganan stempel waktu versi Spark yang lebih lama.
spark.sql.legacy. timeParserPolicy
Mengontrol perilaku penguraian waktu untuk kompatibilitas mundur. Pengaturan lama ini menentukan bagaimana stempel waktu dan tanggal diuraikan dari string.
Spark.sql.legacy.typeCoercion. datetimeToString.diaktifkan
Menentukan apakah akan mengaktifkan perilaku pemaksaan tipe warisan saat mengonversi nilai datetime ke string. Menjaga kompatibilitas dengan aturan konversi datetime versi Spark yang lebih lama.
spark.sql. maxSinglePartitionByte
Menetapkan ukuran partisi maksimum dalam byte. Perencana memperkenalkan operasi shuffle untuk partisi yang lebih besar untuk meningkatkan paralelisme.
128m
Spark.sql.metadatacache TTLSeconds
Mengontrol time-to-live (TTL) untuk cache metadata. Berlaku untuk metadata file partisi dan cache katalog sesi. Membutuhkan:
-
Nilai positif lebih besar dari nol
-
Spark.sql.CatalogImplementation diatur ke sarang
-
spark.sql.hive. filesourcePartitionFileCacheSize lebih besar dari nol
-
spark.sql.hive. manageFilesourcePartitions disetel ke true
-1000ms
spark.sql.optimizer. collapseProjectAlwaysSebaris
Menentukan apakah untuk menciutkan proyeksi yang berdekatan dan ekspresi inline, bahkan ketika itu menyebabkan duplikasi.
SALAH
spark.sql.optimizer. dynamicPartitionPruning.diaktifkan
Menentukan apakah untuk menghasilkan predikat untuk kolom partisi yang digunakan sebagai kunci bergabung.
BETUL
spark.sql.optimizer. enableCsvExpressionOptimasi
Menentukan apakah akan mengoptimalkan ekspresi CSV dalam pengoptimal SQL dengan memangkas kolom yang tidak perlu dari operasi from_csv.
BETUL
spark.sql.optimizer. enableJsonExpressionOptimasi
Menentukan apakah untuk mengoptimalkan ekspresi JSON dalam pengoptimal SQL dengan:
-
Memangkas kolom yang tidak perlu dari operasi from_json
-
Menyederhanakan kombinasi from_json dan to_json
-
Mengoptimalkan operasi named_struct
BETUL
Spark.sql.optimizer.excludedrules
Mendefinisikan aturan pengoptimal untuk dinonaktifkan, diidentifikasi dengan nama aturan yang dipisahkan koma. Beberapa aturan tidak dapat dinonaktifkan karena diperlukan untuk kebenaran. Pengoptimal mencatat aturan mana yang berhasil dinonaktifkan.
(tidak ada)
Spark.sql.Optimizer.Runtime.BloomFilter. applicationSideScanSizeThreshold
Menetapkan ukuran pemindaian agregat minimum dalam byte yang diperlukan untuk menyuntikkan filter Bloom di sisi aplikasi.
10GB
Spark.sql.Optimizer.Runtime.BloomFilter. creationSideThreshold
Mendefinisikan ambang batas ukuran maksimum untuk menyuntikkan filter Bloom di sisi pembuatan.
10MB
Spark.sql.Optimizer.Runtime.BloomFilter.enabled
Menentukan apakah akan menyisipkan filter Bloom untuk mengurangi data shuffle ketika satu sisi gabungan shuffle memiliki predikat selektif.
BETUL
Spark.sql.Optimizer.Runtime.BloomFilter. expectedNumItems
Mendefinisikan jumlah default item yang diharapkan dalam filter Bloom runtime.
1000000
Spark.sql.Optimizer.Runtime.BloomFilter. maxNumBits
Menetapkan jumlah maksimum bit yang diizinkan dalam filter Bloom runtime.
67108864
Spark.sql.Optimizer.Runtime.BloomFilter. maxNumItems
Menetapkan jumlah maksimum item yang diharapkan yang diizinkan dalam filter Bloom runtime.
4000000
spark.sql.optimizer.runtime.bloomfilter.number.threshold
Membatasi jumlah maksimum filter runtime non-DPP yang diizinkan per kueri untuk mencegah out-of-memory kesalahan pada driver.
10
spark.sql.optimizer.runtime.bloomfilter.numbits
Mendefinisikan jumlah default bit yang digunakan dalam filter Bloom runtime.
8388608
spark.sql.optimizer.runtime. rowlevelOperationGroupFilter.enabled
Menentukan apakah akan mengaktifkan penyaringan grup runtime untuk operasi tingkat baris. Memungkinkan sumber data untuk:
-
Pangkas seluruh kelompok data (seperti file atau partisi) menggunakan filter sumber data
-
Jalankan kueri runtime untuk mengidentifikasi catatan yang cocok
-
Buang grup yang tidak perlu untuk menghindari penulisan ulang yang mahal
Pembatasan:
-
Tidak semua ekspresi dapat dikonversi ke filter sumber data
-
Beberapa ekspresi memerlukan evaluasi Spark (seperti subquery)
BETUL
Spark.Sql.Optimizer.RuntimeFilter. semiJoinReduction.diaktifkan
Menentukan apakah akan menyisipkan semi-join untuk mengurangi data shuffle ketika salah satu sisi gabungan shuffle memiliki predikat selektif.
SALAH
Spark.sql.parquet.AggregatePushdown
Menentukan apakah akan menekan agregat ke Parket untuk optimasi. Mendukung:
-
MIN dan MAX untuk jenis boolean, integer, float, dan tanggal
-
COUNT untuk semua tipe data
Melempar pengecualian jika statistik hilang dari footer file Parket apa pun.
SALAH
spark.sql.parket. columnarReaderBatchUkuran
Mengontrol jumlah baris di setiap batch pembaca vektor Parket. Pilih nilai yang menyeimbangkan overhead kinerja dan penggunaan memori untuk mencegah out-of-memory kesalahan.
4096
Spark.sql.Session.Timezone
Mendefinisikan zona waktu sesi untuk menangani stempel waktu dalam literal string dan konversi objek Java. Menerima:
-
Berbasis wilayah IDs dalam area/city format (seperti Amerika/Los_Angeles)
-
Offset zona dalam format (+/-) HH, (+/-) HH: mm, atau (+/-) HH: mm: SS (seperti -08 atau + 01:00)
-
UTC atau Z sebagai alias untuk + 00:00
(nilai zona waktu lokal)
spark.sql.shuffle.partisi
Menetapkan jumlah default partisi untuk pengocokan data selama bergabung atau agregasi. Tidak dapat diubah antara restart kueri streaming terstruktur dari lokasi pos pemeriksaan yang sama.
200
spark.sql. shuffledHashJoinFaktor
Mendefinisikan faktor perkalian yang digunakan untuk menentukan kelayakan bergabung hash shuffle. Gabungan hash shuffle dipilih ketika ukuran data sisi kecil dikalikan dengan faktor ini kurang dari ukuran data sisi besar.
3
spark.sql.sources. parallelPartitionDiscovery.ambang
Menetapkan jumlah maksimum jalur untuk daftar file sisi driver dengan sumber berbasis file (Parket, JSON, dan ORC). Ketika terlampaui selama penemuan partisi, file terdaftar menggunakan pekerjaan terdistribusi Spark terpisah.
32
spark.sql.statistics.histogram.enabled
Menentukan apakah akan menghasilkan histogram equi-height selama perhitungan statistik kolom untuk meningkatkan akurasi estimasi. Membutuhkan pemindaian tabel tambahan di luar yang dibutuhkan untuk statistik kolom dasar.
SALAH
-
-
Pilih Jalankan.
catatan
Anda tidak dapat menjalankan kueri jika anggota yang dapat menerima hasil belum mengonfigurasi setelan hasil kueri.
-
Lanjutkan untuk menyesuaikan parameter dan jalankan kueri Anda lagi, atau pilih tombol + untuk memulai kueri baru di tab baru.