View a markdown version of this page

Membuat saluran input ML di AWS Clean Rooms - AWS Clean Rooms

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

Membuat saluran input ML di AWS Clean Rooms

Prasyarat:

  • An Akun AWS dengan akses ke AWS Clean Rooms

  • Kolaborasi yang disiapkan di AWS Clean Rooms tempat Anda ingin membuat saluran input ML

  • Izin untuk menanyakan data dan membuat saluran input ML dalam kolaborasi.

  • (Opsional) Algoritma model yang ada untuk diasosiasikan dengan saluran input ML, atau izin untuk membuat yang baru

  • (Opsional) Tabel dengan aturan analisis yang dapat dijalankan untuk model yang Anda tentukan.

  • (Opsional) Kueri SQL atau templat analisis yang ada untuk digunakan untuk menghasilkan kumpulan data

  • (Opsional) Peran layanan yang ada dengan izin yang sesuai, atau izin untuk membuat peran layanan baru

  • (Opsional) AWS KMS Kunci khusus jika Anda ingin menggunakan kunci enkripsi Anda sendiri

  • Izin yang sesuai untuk membuat dan mengelola model ML dalam kolaborasi

Saluran input ML adalah kumpulan data yang dibuat dari kueri data tertentu. Anggota dengan kemampuan untuk query data dapat mempersiapkan data mereka untuk pelatihan dan inferensi dengan membuat saluran input ML. Membuat saluran input ML memungkinkan data tersebut digunakan dalam model pelatihan yang berbeda dalam kolaborasi yang sama. Anda harus membuat saluran input ML terpisah untuk pelatihan dan inferensi.

Untuk membuat saluran input ML, Anda harus menentukan query SQL yang digunakan untuk query data input dan membuat saluran input ML. Hasil kueri ini tidak pernah dibagikan dengan anggota mana pun dan tetap berada dalam batas-batas Clean Rooms. Referensi Amazon Resource Name (ARN) digunakan pada langkah selanjutnya untuk melatih model atau menjalankan inferensi.

Console
Untuk membuat saluran input ML (konsol)
  1. Masuk ke Konsol Manajemen AWS dan buka AWS Clean Rooms konsol di https://console.aws.amazon.com/cleanrooms.

  2. Di panel navigasi kiri, pilih Kolaborasi.

  3. Pada halaman Kolaborasi, pilih kolaborasi tempat Anda ingin membuat saluran input ML.

  4. Setelah kolaborasi terbuka, pilih tab model ML.

  5. Di bawah model Custom ML, di bagian saluran input ML, pilih Buat saluran input ML.

  6. Pada halaman Create channel input ML, untuk detail saluran masukan ML, lakukan hal berikut:

    1. Untuk Nama, masukkan nama unik untuk saluran Anda.

    2. (Opsional) Untuk Deskripsi, masukkan deskripsi saluran Anda.

    3. Untuk algoritma model terkait, pilih algoritma yang akan digunakan.

      Pilih algoritma model Associate untuk menambahkan yang baru.

  7. Untuk Dataset, pilih metode untuk menghasilkan kumpulan data pelatihan:

    • Pilih kueri SQL untuk menggunakan hasil kueri SQL sebagai kumpulan data pelatihan.

      Jika Anda memilih kueri SQL, masukkan kueri Anda di bidang kueri SQL.

      (Opsional) Untuk mengimpor kueri yang baru saja Anda gunakan, pilih Impor dari kueri terbaru.

    • Pilih template Analisis untuk menggunakan hasil template analisis sebagai kumpulan data pelatihan.

      Awas

      Pembuatan data sintetis melindungi dari menyimpulkan atribut individu apakah individu tertentu hadir dalam kumpulan data asli atau atribut pembelajaran individu tersebut hadir. Namun, itu tidak mencegah nilai literal dari kumpulan data asli, termasuk informasi yang dapat diidentifikasi secara pribadi (PII) muncul di kumpulan data sintetis.

      Sebaiknya hindari nilai dalam kumpulan data input yang hanya terkait dengan satu subjek data karena ini dapat mengidentifikasi kembali subjek data. Misalnya, jika hanya satu pengguna yang tinggal dalam kode pos, keberadaan kode pos itu dalam kumpulan data sintetis akan mengonfirmasi bahwa pengguna berada dalam kumpulan data asli. Teknik seperti memotong nilai presisi tinggi atau mengganti katalog yang tidak biasa dengan yang lain dapat digunakan untuk mengurangi risiko ini. Transformasi ini dapat menjadi bagian dari query yang digunakan untuk membuat saluran input ML.

    1. Jika tidak ada tabel yang terkait, pilih Tabel asosiasi untuk menambahkan tabel dengan aturan analisis yang dapat dijalankan untuk model yang ditentukan.

    2. Pilih Jenis pekerja yang akan digunakan saat membuat saluran data ini. Jenis pekerja default adalah CR.1X. Tentukan Jumlah pekerja yang akan digunakan. Nomor pekerja default adalah 16. Untuk menentukan properti Spark:

      1. Perluas properti Spark.

      2. Pilih Tambahkan properti Spark.

      3. 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.

      catatan

      Anda dapat mengonfigurasi maksimum 50 properti Spark. Setiap nilai properti bisa sampai 500 karakter.

      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.files.max PartitionBytes

      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.

      (tidak ada)

      spark.network.timeout

      Menetapkan batas waktu default untuk semua interaksi jaringan. Mengganti pengaturan batas waktu berikut jika tidak dikonfigurasi:

      • spark.storage.block ManagerHeartbeatTimeoutMs

      • spark.shuffle.io.connectionTimeout

      • Spark.rpc.askTimeout

      • Spark.rpc.lookupTimeout

      120s

      spark.rdd.compress

      Menentukan apakah untuk mengompres partisi RDD serial menggunakan spark.io.compression.codec. Berlaku untuk StorageLevel.MEMORY _ONLY_SER di Java dan Scala, atau _ONLY di Python. StorageLevel.MEMORY Mengurangi ruang penyimpanan tetapi membutuhkan waktu pemrosesan CPU tambahan.

      false

      spark.shuffle.spill.compress

      Menentukan apakah untuk mengompres data tumpahan shuffle menggunakan spark.io.compression.codec.

      true

      spark.shuffle.compress

      Menentukan apakah untuk mengompres file output peta. Kompresi menggunakan spark.io.compression.codec.

      true

      spark.shuffle.service.index.cache.size

      Menetapkan batas ukuran cache, dalam byte kecuali ditentukan lain.

      100m

      Spark.shuffle.io.maxRetries

      Menetapkan jumlah maksimum percobaan ulang untuk pengambilan yang gagal karena pengecualian. IO-related

      3

      Spark.shuffle.io.retrywait

      Mengatur waktu tunggu antara percobaan ulang pengambilan. Penundaan maksimum yang disebabkan oleh percobaan ulang adalah 15 detik secara default, dihitung sebagai MaxRetries * RetryWait.

      5s

      spark.shuffle.io.connectionTimeout

      Menetapkan batas waktu untuk koneksi yang ditetapkan antara server shuffle dan klien untuk ditandai sebagai idle dan ditutup jika masih ada permintaan pengambilan yang belum selesai tetapi tidak ada lalu lintas di saluran.

      (nilai spark.network.timeout)

      spark.driver.max ResultSize

      Menetapkan batas ukuran total hasil serial dari semua partisi untuk setiap tindakan Spark, dalam byte. Harus minimal 1M, atau 0 untuk tidak terbatas.

      1g

      spark.memory.fraksi

      Mengatur fraksi (heap space - 300MB) yang digunakan untuk eksekusi dan penyimpanan. Semakin rendah nilai ini, semakin sering terjadi tumpahan dan penggusuran data yang di-cache. Direkomendasikan untuk meninggalkan ini pada nilai default.

      0,6

      spark.scheduler.mode

      Menetapkan mode penjadwalan antara pekerjaan yang dikirimkan ke yang sama SparkContext. Dapat diatur ke FAIR untuk menggunakan berbagi yang adil alih-alih mengantri pekerjaan satu demi satu. Nilai yang didukung: FAIR, FIFO.

      FIFO

      spark.sql.adaptive.advisory PartitionSizeInBytes

      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.adaptive.auto BroadcastJoinThreshold

      Menetapkan ukuran tabel maksimum dalam byte untuk penyiaran ke node pekerja selama bergabung. Berlaku hanya dalam kerangka adaptif. Menggunakan nilai default yang sama dengan BroadcastJoinThreshold spark.sql.auto. Setel ke -1 untuk menonaktifkan penyiaran.

      (tidak ada)

      spark.sql.adaptive.coalesce Partitions.enabled

      Menentukan apakah akan menggabungkan partisi shuffle yang berdekatan berdasarkan spark.sql.adaptive.advisory untuk mengoptimalkan ukuran tugas. PartitionSizeInBytes Membutuhkan spark.sql.adaptive.enabled agar benar.

      true

      spark.sql.adaptive.coalesce Partitions.initialPartitionNum

      Mendefinisikan jumlah awal partisi shuffle sebelum penggabungan. Membutuhkan spark.sql.adaptive.enabled dan spark.sql.adaptive.coalesce untuk menjadi true. Partitions.enabled Default ke nilai spark.sql.shuffle.partitions.

      (tidak ada)

      spark.sql.adaptive.coalesce Partitions.minPartitionSize

      Menetapkan ukuran minimum untuk partisi shuffle yang digabungkan untuk mencegah partisi menjadi terlalu kecil selama optimasi adaptif.

      1 MB

      spark.sql.adaptive.coalesce Partitions.parallelismFirst

      Menentukan apakah akan menghitung ukuran partisi berdasarkan paralelisme cluster alih-alih PartitionSizeInBytes spark.sql.adaptive.advisory 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.

      true

      spark.sql.adaptive.enabled

      Menentukan apakah akan mengaktifkan eksekusi kueri adaptif untuk mengoptimalkan kembali rencana kueri selama eksekusi kueri, berdasarkan statistik runtime yang akurat.

      true

      spark.sql.adaptive.force OptimizeSkewedJoin

      Menentukan apakah akan memaksa mengaktifkan OptimizeSkewedJoin bahkan jika memperkenalkan shuffle tambahan.

      false

      spark.sql.adaptive.local ShuffleReader.enabled

      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.

      true

      spark.sql.adaptive.max ShuffledHashJoinLocalMapThreshold

      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.advisory PartitionSizeInBytes

      • Semua ukuran partisi berada dalam batas ini

      Mengganti pengaturan SortMergeJoin spark.sql.join.prefer.

      0 byte

      spark.sql.adaptive.optimize SkewsInRebalancePartitions.enabled

      Menentukan apakah akan mengoptimalkan partisi shuffle miring dengan membaginya menjadi partisi yang lebih kecil berdasarkan spark.sql.adaptive.advisory. PartitionSizeInBytes Membutuhkan spark.sql.adaptive.enabled agar benar.

      true

      spark.sql.adaptive.rebalance PartitionsSmallPartitionFactor

      Mendefinisikan faktor ambang ukuran untuk menggabungkan partisi selama pemisahan. Partisi yang lebih kecil dari faktor ini dikalikan dengan PartitionSizeInBytes spark.sql.adaptive.advisory digabungkan.

      0.2

      spark.sql.adaptive.condong Join.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.

      true

      spark.sql.adaptive.condong Join.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.skew Join.skewedPartitionThresholdInBytes

      5

      spark.sql.adaptive.condong Join.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.skew Join.skewedPartitionFactor

      Sebaiknya atur nilai ini lebih besar dari PartitionSizeInBytes spark.sql.adaptive.advisory.

      256MB

      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.

      false

      spark.sql.cbo.join Reorder.dp.star.filter

      Menentukan apakah akan menerapkan heuristik filter star-join selama enumerasi bergabung berbasis biaya.

      false

      spark.sql.cbo.join Reorder.dp.threshold

      Menetapkan jumlah maksimum node bergabung yang diizinkan dalam algoritma pemrograman dinamis.

      12

      spark.sql.cbo.join Reorder.enabled

      Menentukan apakah akan mengaktifkan pengurutan ulang bergabung dalam optimasi berbasis biaya (CBO).

      false

      spark.sql.cbo.plan Stats.enabled

      Menentukan apakah untuk mengambil jumlah baris dan statistik kolom dari katalog selama pembuatan rencana logis.

      false

      spark.sql.cbo.star SchemaDetection

      Menentukan apakah akan mengaktifkan pengurutan ulang gabungan berdasarkan deteksi skema bintang.

      false

      spark.sql.files.max PartitionNum

      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.files.max RecordsPerFile

      Menetapkan jumlah maksimum catatan untuk menulis ke satu file. Tidak ada batasan yang berlaku saat disetel ke nol atau nilai negatif.

      0

      spark.sql.files.min PartitionNum

      Menetapkan jumlah minimum target partisi file terpisah untuk sumber berbasis file (Parket, JSON, dan ORC). Default ke spark.sql.leaf. NodeDefaultParallelism Ini adalah target yang disarankan, bukan batas yang dijamin.

      (tidak ada)

      spark.sql.in MemoryColumnarStorage.batchSize

      Mengontrol ukuran batch untuk caching kolumnar. Meningkatkan ukuran meningkatkan pemanfaatan memori dan kompresi tetapi meningkatkan risiko kesalahan kehabisan memori.

      10000

      spark.sql.in MemoryColumnarStorage.compressed

      Menentukan apakah akan secara otomatis memilih codec kompresi untuk kolom berdasarkan statistik data.

      true

      spark.sql.in MemoryColumnarStorage.enableVectorizedReader

      Menentukan apakah untuk mengaktifkan pembacaan vektor untuk caching kolumnar.

      true

      spark.sql.legacy.allow HashOnMapType

      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.

      (tidak ada)

      spark.sql.legacy.allow NegativeScaleOfDecimal

      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.

      (tidak ada)

      spark.sql.legacy.cast ComplexTypesToString.enabled

      Menentukan apakah akan mengaktifkan perilaku warisan untuk casting tipe kompleks untuk string. Menjaga kompatibilitas dengan aturan konversi tipe versi Spark yang lebih lama.

      (tidak ada)

      spark.sql.legacy.char VarcharAsString

      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.

      (tidak ada)

      spark.sql.legacy.create EmptyCollectionUsingStringType

      Menentukan apakah untuk membuat koleksi kosong menggunakan elemen tipe string. Setelan lama ini mempertahankan kompatibilitas dengan perilaku inisialisasi koleksi versi Spark yang lebih lama.

      (tidak ada)

      spark.sql.legacy.exponent LiteralAsDecimal.enabled

      Menentukan apakah untuk menafsirkan literal eksponensial sebagai tipe desimal. Pengaturan lama ini mempertahankan kompatibilitas dengan penanganan literal numerik versi Spark yang lebih lama.

      (tidak ada)

      spark.sql.legacy.json.allow EmptyString.enabled

      Menentukan apakah untuk mengizinkan string kosong dalam pengolahan JSON. Pengaturan lama ini mempertahankan kompatibilitas dengan perilaku penguraian JSON versi Spark yang lebih lama.

      (tidak ada)

      spark.sql.legacy.parquet.int96 RebaseModelRead

      Menentukan apakah akan menggunakan modus rebase stempel waktu INT96 lama saat membaca file Parket. Pengaturan lama ini mempertahankan kompatibilitas dengan penanganan stempel waktu versi Spark yang lebih lama.

      (tidak ada)

      spark.sql.legacy.time ParserPolicy

      Mengontrol perilaku penguraian waktu untuk kompatibilitas mundur. Pengaturan lama ini menentukan bagaimana stempel waktu dan tanggal diuraikan dari string.

      (tidak ada)

      spark.sql.legacy.type Coercion.datetimeToString.enabled

      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.

      (tidak ada)

      spark.sql.max SinglePartitionBytes

      Menetapkan ukuran partisi maksimum dalam byte. Perencana memperkenalkan operasi shuffle untuk partisi yang lebih besar untuk meningkatkan paralelisme.

      128m

      Spark.sql.metadatacachettlSeconds

      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.filesource PartitionFileCacheSize lebih besar dari nol

      • FilesourcePartitions spark.sql.hive.manage disetel ke true

      -1000ms

      spark.sql.optimizer.collapse ProjectAlwaysInline

      Menentukan apakah untuk menciutkan proyeksi yang berdekatan dan ekspresi inline, bahkan ketika itu menyebabkan duplikasi.

      false

      spark.sql.optimizer.dynamic PartitionPruning.enabled

      Menentukan apakah untuk menghasilkan predikat untuk kolom partisi yang digunakan sebagai kunci bergabung.

      true

      spark.sql.optimizer.enable CsvExpressionOptimization

      Menentukan apakah akan mengoptimalkan ekspresi CSV dalam pengoptimal SQL dengan memangkas kolom yang tidak perlu dari operasi from_csv.

      true

      spark.sql.optimizer.enable JsonExpressionOptimization

      Menentukan apakah untuk mengoptimalkan ekspresi JSON di SQL optimizer dengan:

      • Memangkas kolom yang tidak perlu dari operasi from_json

      • Menyederhanakan kombinasi from_json dan to_json

      • Mengoptimalkan operasi named_struct

      true

      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.bloom Filter.applicationSideScanSizeThreshold

      Menetapkan ukuran pemindaian agregat minimum dalam byte yang diperlukan untuk menyuntikkan filter Bloom di sisi aplikasi.

      10GB

      spark.sql.optimizer.runtime.bloom Filter.creationSideThreshold

      Mendefinisikan ambang batas ukuran maksimum untuk menyuntikkan filter Bloom di sisi pembuatan.

      10MB

      spark.sql.optimizer.runtime.bloom Filter.enabled

      Menentukan apakah akan menyisipkan filter Bloom untuk mengurangi data shuffle ketika satu sisi gabungan shuffle memiliki predikat selektif.

      true

      spark.sql.optimizer.runtime.bloom Filter.expectedNumItems

      Mendefinisikan jumlah default item yang diharapkan dalam filter Bloom runtime.

      1000000

      spark.sql.optimizer.runtime.bloom Filter.maxNumBits

      Menetapkan jumlah maksimum bit yang diizinkan dalam filter Bloom runtime.

      67108864

      spark.sql.optimizer.runtime.bloom Filter.maxNumItems

      Menetapkan jumlah maksimum item yang diharapkan yang diizinkan dalam filter Bloom runtime.

      4000000

      spark.sql.optimizer.runtime.bloom Filter.numBits

      Mendefinisikan jumlah default bit yang digunakan dalam filter Bloom runtime.

      8388608

      spark.sql.optimizer.runtime.rowlevel OperationGroupFilter.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)

      true

      spark.sql.optimizer.runtime Filter.number.threshold

      Menetapkan jumlah total filter runtime yang disuntikkan (non-DPP). Ini untuk mencegah OOM driver dengan terlalu banyak filter Bloom.

      10

      spark.sql.optimizer.runtime Filter.semiJoinReduction.enabled

      Menentukan apakah akan menyisipkan semi-join untuk mengurangi data shuffle ketika salah satu sisi gabungan shuffle memiliki predikat selektif.

      false

      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.

      false

      spark.sql.parquet.columnar ReaderBatchSize

      Mengontrol jumlah baris di setiap batch pembaca vektor Parket. Pilih nilai yang menyeimbangkan overhead kinerja dan penggunaan memori untuk mencegah kesalahan kehabisan memori.

      4096

      spark.sql.parquet.enable VectorizedReader

      Menentukan apakah akan mengaktifkan decoding Parket vektor.

      true

      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.shuffled HashJoinFactor

      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.parallel PartitionDiscovery.threshold

      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.

      false

      spark.dinamis Allocation.executorIdleTimeout

      Menetapkan durasi eksekutor harus menganggur sebelum dihapus ketika alokasi dinamis diaktifkan.

      60-an

      spark.dinamis Allocation.schedulerBacklogTimeout

      Menetapkan durasi tugas yang tertunda harus di-backlog sebelum pelaksana baru diminta saat alokasi dinamis diaktifkan.

      1s

      spark.dinamis Allocation.sustainedSchedulerBacklogTimeout

      Sama seperti spark.dynamicAllocation.schedulerBacklogTimeout, tetapi hanya digunakan untuk permintaan pelaksana berikutnya.

      (nilai spark.dynamicAllocation.schedulerBacklogTimeout)

      spark.scheduler.min RegisteredResourcesRatio

      Menetapkan rasio minimum sumber daya terdaftar (sumber daya terdaftar/total sumber daya yang diharapkan) untuk menunggu sebelum penjadwalan dimulai. Ditentukan sebagai ganda antara 0,0 dan 1,0. Terlepas dari apakah rasio minimum sumber daya telah tercapai, jumlah waktu maksimum yang akan ditunggu sebelum penjadwalan dimulai dikendalikan oleh RegisteredResourcesWaitingTime spark.scheduler.max.

      0,8

      spark.scheduler.max RegisteredResourcesWaitingTime

      Tetapkan jumlah waktu maksimum untuk menunggu sumber daya mendaftar sebelum penjadwalan dimulai.

      30-an

      spark.sql.hive.metastore PartitionPruningFallbackOnException

      Menentukan apakah akan kembali untuk mendapatkan semua partisi dari Hive metastore dan melakukan pemangkasan partisi di sisi klien Spark saat bertemu dari metastore. MetaException

      false

      Nama Properti Deskripsi nilai default

      spark.sql.auto BroadcastJoinThreshold

      Menetapkan ukuran tabel maksimum dalam byte untuk penyiaran ke node pekerja selama bergabung. Setel ke -1 untuk menonaktifkan penyiaran.

      10MB (-1 untuk CR.4X dengan 32 pekerja)

      spark.dinamis Allocation.enabled

      Menentukan apakah akan menggunakan alokasi sumber daya dinamis, yang menskalakan jumlah pelaksana yang terdaftar dengan aplikasi ini naik dan turun berdasarkan beban kerja.

      true

      spark.io.compression.codec

      Mengatur codec yang digunakan untuk mengompres data internal seperti partisi RDD, log peristiwa, variabel siaran, dan output acak. Nilai yang didukung: lz4, snappy, zstd, gzip.

      tajam

      Spark.sql.Session.Timezone

      Mendefinisikan zona waktu sesi untuk menangani stempel waktu dalam literal string dan konversi objek Java. Menerima:

      • Region-based ID dalam area/city format (seperti America/Los _Angeles)

      • Offset zona dalam HH:mm:ss format (+/-) HH, (+/-)HH:mm, atau (+/-) (seperti -08 atau + 01:00)

      • UTC atau Z sebagai alias untuk + 00:00

      UTC

    3. Untuk penyimpanan data dalam beberapa hari, masukkan jumlah hari untuk menyimpan data.

    4. Untuk format Hasil, pilih CSV atau Parket sebagai format data yang harus digunakan saluran input ML.

  8. Untuk akses Layanan, pilih nama peran layanan yang ada yang akan digunakan untuk mengakses tabel ini atau pilih Buat dan gunakan peran layanan baru.

  9. Untuk Enkripsi, pilih Enkripsi rahasia dengan kunci KMS khusus untuk menentukan kunci KMS Anda sendiri dan informasi terkait. Jika tidak, Clean Rooms ML akan mengelola enkripsi.

  10. (Opsional) Untuk pembayar Komputasi, pilih anggota kolaborasi yang membayar biaya komputasi kueri.

    catatan

    Jika hanya ada satu kandidat pembayar untuk komputasi kueri dalam kolaborasi, defaultnya adalah pembayar tersebut.

  11. (Opsional) Untuk pembayar pembuatan data sintetis, pilih anggota kolaborasi yang membayar biaya pembuatan data sintetis.

    catatan

    Opsi ini muncul ketika saluran input ML menggunakan templat analisis yang dikonfigurasi untuk output data sintetis. Jika hanya ada satu kandidat pembayar untuk pembuatan data sintetis dalam kolaborasi, defaultnya adalah pembayar tersebut.

  12. Pilih Buat saluran input ML.

    Ini akan memakan waktu beberapa menit untuk membuat saluran input ML. Anda dapat melihat daftar saluran input ML pada tab model ML.

catatan

Setelah saluran input ML dibuat, Anda tidak dapat mengeditnya.

API

Untuk membuat saluran input ML (API)

Jalankan kode berikut dengan parameter spesifik Anda:

import boto3 acr_client = boto3.client('cleanroomsml') acr_client.create_ml_input_channel( name="ml_input_channel_name", membershipIdentifier='membership_id', configuredModelAlgorithmAssociations=[configured_model_algorithm_association_arn], retentionInDays=1, inputChannel={ "dataSource": { "protectedQueryInputParameters": { "sqlParameters": { "queryString": "select * from table", "computeConfiguration": { "worker": { "type": "CR.1X", "number": 16, "properties": { "spark": { "spark configuration key": "spark configuration value", } } } }, "resultFormat": "PARQUET" } } }, "roleArn": "arn:aws:iam::111122223333:role/role_name" } ) channel_arn = resp['ML Input Channel ARN']