Versi mesin Athena 2 - Amazon Athena

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

Versi mesin Athena 2

Mesin Athena versi 2 memperkenalkan perubahan berikut.

Perbaikan dan fitur baru

  • JELASKAN dan JELASKAN ANALISIS - Anda dapat menggunakan EXPLAIN pernyataan di Athena untuk melihat rencana eksekusi untuk kueri SQL Anda. Gunakan EXPLAIN ANALYZE untuk melihat rencana eksekusi terdistribusi untuk kueri SQL Anda dan biaya setiap operasi. Untuk informasi selengkapnya, lihat Menggunakan JELASKAN dan JELASKAN ANALISIS di Athena.

  • Kueri gabungan— permintaan Gabungan didukung di Athena mesin versi 2. Untuk informasi selengkapnya, lihat Menggunakan Amazon Athena.

  • Fungsi geospasial— Lebih dari 25 fungsi geospasial telah ditambahkan. Untuk informasi selengkapnya, lihat Fungsi geospasial baru di mesin Athena versi 2.

  • Skema Nest— Support telah ditambahkan untuk membaca skema Nest, yang mengurangi biaya.

  • Pernyataan yang disiapkan — Gunakan pernyataan yang disiapkan untuk eksekusi berulang dari kueri yang sama dengan parameter kueri yang berbeda. Pernyataan yang disiapkan berisi parameter placeholder yang nilainya Anda lewati saat runtime. Pernyataan yang disiapkan membantu mencegah serangan injeksi SQL. Untuk informasi selengkapnya, lihat Menggunakan kueri berparameter.

  • Dukungan evolusi skema— Dukungan evolusi skema telah ditambahkan untuk data dalam format Parquet.

    • Menambahkan dukungan untuk membaca kolom larik, peta, atau jenis baris dari partisi tempat skema partisi berbeda dari skema tabel. Ini dapat terjadi saat skema tabel diperbarui setelah partisi dibuat. Jenis kolom yang diubah harus kompatibel. Untuk jenis baris, bidang trailing dapat ditambahkan atau dijatuhkan, tetapi bidang yang sesuai (menurut ordinal) harus memiliki nama yang sama.

    • File ORC sekarang dapat memiliki kolom struct dengan bidang yang hilang. Ini memungkinkan skema tabel untuk diubah tanpa menulis ulang file ORC.

    • Kolom struct ORC sekarang dipetakan dengan nama ketimbang ordinal. Ini dengan benar menangani hilang atau tambahan struct bidang dalam ORC file.

  • SQL OFFSET - OFFSET Klausul SQL sekarang didukung dalam pernyataan. SELECT Untuk informasi selengkapnya, lihat SELECT.

  • Pernyataan UNLOAD — Anda dapat menggunakan UNLOAD pernyataan untuk menulis output SELECT kueri ke format PARQUET, ORC, AVRO, dan JSON. Untuk informasi selengkapnya, lihat MEMBONGKAR.

Pengelompokan, bergabung, dan peningkatan subquery

  • Pengelompokan kompleks— Menambahkan dukungan untuk operasi pengelompokan kompleks.

  • Subqueries berkorelasi— Menambahkan dukungan untuk subqueries berkorelasi diINpredikat dan untuk subqueries berkorelasi yang membutuhkan pemaksaan.

  • GABUNG SILANG— Dukungan tambahan untukCROSS JOINterhadapLATERALberasal tabel.

  • SET PENGELOMPOKAN— Dukungan tambahan untukORDER BYklausul dalam agregasi untuk mengkueri yang menggunakanGROUPING SETS.

  • Ekspresi Lambda— Menambahkan dukungan untuk dereferencing kolom baris dalam ekspresi Lambda.

  • nilai null dalam semijoins— Menambahkan dukungan untuk nilai null di sisi kiri semijoin (yaitu,INpredikat dengan subqueries).

  • Spasial Bergabung— Menambahkan dukungan untuk siaran spasial bergabung dan kiri spasial bergabung.

  • Tumpahan ke disk— Untuk memori intensifINNER JOINdanLEFT JOINoperasi, Athena offloads hasil operasi menengah ke disk. Ini memungkinkan eksekusi kueri yang memerlukan memori dalam jumlah besar.

  • INT untuk INTE— Dukungan tambahan untukINTsebagai alias untukINTEGERJenis data.

  • Jenis INTER— Dukungan tambahan untuk pengecoranINTERVALjenis.

  • IPADDRESS - Menambahkan IPADDRESS tipe baru untuk mewakili alamat IP dalam kueri DML. Dukungan tambahan untuk pengecoran antaraVARBINARYJenis danIPADDRESSJenis. IPADDRESSJenis ini tidak dikenali dalam kueri DDL.

  • BERBEDA DARI— DitambahkanIS DISTINCT FROMDukungan untukJSONdanIPADDRESSjenis.

  • Pemeriksaan kesetaraan Null— Pemeriksaan kesetaraan untuk nilai null diARRAY,MAP, danROWstruktur data sekarang didukung. Sebagai contoh, ungkapanARRAY ['1', '3', null] = ARRAY ['1', '2', null]Pengembalianfalse. Sebelumnya, elemen null kembali pesan kesalahanperbandingan tidak didukung.

  • Tipe baris pemaksaan— Pemaksaan antara jenis baris terlepas dari nama field sekarang diperbolehkan. Sebelumnya, jenis baris dipaksakan ke yang lain hanya jika nama bidang dalam jenis sumber cocok dengan jenis target, atau saat jenis target memiliki nama bidang anonim.

  • Pengurangan waktu— Pengurangan yang dilaksanakan untuk semuaTIMEdanTIMESTAMPjenis.

  • Unicode— Menambahkan dukungan untuk lolos Unicode urutan dalam string literal.

  • Rangkaian VARBINARY— Dukungan tambahan untuk rangkaianVARBINARYnilai.

    Fungsi nilai jendela - Fungsi nilai jendela sekarang mendukung IGNORE NULLS danRESPECT NULLS.

Jenis input tambahan untuk fungsi

Fungsi berikut sekarang menerima jenis input tambahan. Untuk informasi selengkapnya tentang setiap fungsi, kunjungi tautan yang sesuai dengan dokumentasi Presto.

  • approx_distinct ()approx_distinct ()Fungsi sekarang mendukung jenis berikut:INTEGER,SMALLINT,TINYINT,DECIMAL,REAL,DATE,TIMESTAMP,TIMESTAMP WITH TIME ZONE,TIME,TIME WITH TIME ZONE,IPADDRESS, danCHAR.

  • Avg (), sum () - Fungsi agregat avg () dan sum () sekarang mendukung tipe data. INTERVAL

  • Lpad (), rpad () - Fungsi lpad dan rpad sekarang bekerja pada input. VARBINARY

  • Min (), max () - Fungsi agregasi min () dan max () sekarang memungkinkan jenis input yang tidak diketahui pada waktu analisis kueri sehingga Anda dapat menggunakan fungsi dengan NULL literal.

  • regexp_replace ()— Varian dariregexp_replace ()fungsi menambahkan yang dapat menjalankan fungsi Lambda untuk setiap penggantian.

  • Sequence () — Menambahkan DATE varian untuk fungsi sequence (), termasuk varian dengan kenaikan langkah satu hari implisit.

  • ST_Area ()ST_Area ()fungsi geospasial sekarang mendukung semua jenis geometri.

  • Substr () - Fungsi substr sekarang bekerja pada VARBINARY input.

  • zip_dengan ()— Larik panjang tidak cocok sekarang dapat digunakan denganzip_dengan (). Posisi yang hilang diisi dengan nol. Sebelumnya, kesalahan dimunculkan saat larik panjang yang berbeda dilewatkan. Perubahan ini dapat membuat sulit untuk membedakan antara nilai-nilai yang awalnya nol dari nilai-nilai yang ditambahkan ke pad larik dengan panjang yang sama.

Fungsi yang ditambahkan

Daftar berikut berisi fungsi-fungsi yang baru dimulai di mesin Athena versi 2. Daftar ini tidak termasuk fungsi geospasial. Untuk daftar fungsi geospasial, lihat Fungsi geospasial baru di mesin Athena versi 2.

Untuk informasi selengkapnya tentang setiap fungsi, kunjungi tautan yang sesuai dengan dokumentasi Presto.

Fungsi agregat

reduce_agg ()

Fungsi dan operator array

array_sort ()- Varian dari fungsi ini menambahkan yang mengambil fungsi Lambda sebagai komparator.

ngram ()

Fungsi dan operator biner

dari_big_endian_32 ()

dari_ieee754_32 ()

dari_ieee754_64 ()

hmac_md5 ()

hmac_sha1 ()

hmac_sha256 ()

hmac_sha512 ()

seram_hash_v2_32 ()

seram_hash_v2_64 ()

to_big_endian_32 ()

to_ieee754_32 ()

to_ieee754_64 ()

Fungsi dan operator tanggal dan waktu

milidetik ()

parse_duration ()

to_milidetik ()

Fungsi peta dan operator

multimap_from_entries ()

Fungsi dan operator matematika

inverse_normal_cdf ()

wilson_interval_lower ()

wilson_interval_atas ()

Fungsi intisari kuantil

Fungsi kuantildanqdigesttipe quantile digest ditambahkan.

Fungsi dan operator string

hamming_distance ()

split_to_multimap ()

Peningkatan kinerja

Performa fitur berikut telah meningkat di Athena mesin versi 2.

Kinerja kueri

  • Kinerja gabungan siaran — Peningkatan kinerja gabungan siaran dengan menerapkan pemangkasan partisi dinamis di node pekerja.

  • Tabel Bucket— Peningkatan performa untuk menulis ke tabel bucketed saat data yang ditulis sudah dipartisi dengan tepat (misalnya, saat output dari gabungan bucketed).

  • BERBEDA— Peningkatan performa untuk beberapa kueri yang menggunakanDISTINCT.

    Pemfilteran dinamis dan pemangkasan partisi — Peningkatan meningkatkan kinerja dan mengurangi jumlah data yang dipindai dalam kueri.

  • Operasi filter dan proyeksi— Operasi filter dan proyeksi sekarang selalu diproses oleh kolom jika memungkinkan. Mesin secara otomatis mengambil keuntungan dari pengkodean kamus tempat efektif.

  • Mengumpulkan pertukaran— Peningkatan performa untuk mengkueri dengan mengumpulkan pertukaran.

  • Agregasi Global— Peningkatan performa untuk beberapa kueri yang melakukan agregasi global yang disaring.

  • PENGELOMPOKAN SET, KUBUS, ROLLUP— Peningkatan performa untuk mengkueri yang melibatkanGROUPING SETS,CUBEatauROLLUP, yang dapat Anda gunakan untuk menggabungkan beberapa set kolom dalam satu kueri.

  • Filter yang sangat selektif— Meningkatkan performa kueri dengan filter yang sangat selektif.

  • Gabung dan Agregat operasi — Kinerja JOIN dan AGGREGATE operasi telah ditingkatkan.

  • KE— Meningkatkan performa kueri yang menggunakanLIKEpredikat pada kolominformation_schematabel.

  • ORDER OLEH— Peningkatan rencana, performa, dan penggunaan memori untuk pertanyaan yang melibatkanORDER BYdanLIMITuntuk menghindari Data Exchange yang tidak perlu.

  • PESANAN OLEHORDER BYsekarang didistribusikan secara default, memungkinkan lebih besarORDER BYklausa yang akan digunakan.

  • Konversi jenis ROW— Peningkatan performa saat mengkonversi antaraROWjenis.

  • Jenis struktural— Peningkatan performa kueri yang memproses tipe struktural dan berisi pemindaian, bergabung, agregasi, atau penulisan tabel.

  • Pemindaian tabel — Aturan optimasi telah diperkenalkan untuk menghindari pemindaian tabel duplikat dalam kasus tertentu.

  • SERIKAT— Peningkatan performa untukUNIONkueri.

Kinerja perencanaan kueri
  • Performa perencanaan— Peningkatan performa perencanaan untuk mengkueri yang bergabung dengan beberapa tabel dengan sejumlah besar kolom.

  • Evaluasi predikat— Peningkatan performa evaluasi predikat selama predikat pushdown dalam perencanaan.

  • Dukungan pushdown predikat untuk casting— Support predikat pushdown untuk<column> IN <values list>predikat tempat nilai-nilai dalam daftar nilai membutuhkan casting untuk mencocokkan jenis kolom.

  • Predikat inferensi dan pushdown— Predikat inferensi dan pushdown diperpanjang untuk mengkueri yang menggunakan<symbol> IN <subquery>predikat.

  • Timeout - Memperbaiki bug yang dalam kasus yang jarang terjadi menyebabkan batas waktu perencanaan kueri.

Bergabunglah dengan kinerja

  • Bergabung dengan kolom peta— Meningkatkan performa bergabung dan agregasi yang mencakup kolom peta.

  • Bergabung dengan syarat non-kesetaraan semata-mata— Peningkatan performa bergabung dengan hanya syarat non-kesetaraan dengan menggunakan bergabung loop Nest bukannya bergabung hash.

  • Bergabung ke luar— Jenis distribusi bergabung sekarang secara otomatis dipilih untuk mengkueri yang melibatkan luar bergabung.

  • Rentang atas fungsi bergabung— Peningkatan performa bergabung tempat syarat adalah rentang atas fungsi (misalnya,a JOIN b ON b.x < f(a.x) AND b.x > g(a.x)).

  • S pill-to-disk - Memperbaiki bug spill-to-disk terkait dan masalah memori untuk meningkatkan kinerja dan mengurangi kesalahan memori dalam JOIN operasi.

Kinerja subquery

  • Berkorelasi ADA subqueries— Peningkatan performa berkorelasiEXISTSsubqueries.

  • Subqueries berkorelasi dengan persamaan— Peningkatan dukungan untuk subqueries berkorelasi yang mengandung predikat kesetaraan.

  • Subqueries berkorelasi dengan ketidaksetaraan— Peningkatan performa untuk subqueries berkorelasi yang mengandung ketidaksetaraan.

  • Hitung (*) agregasi atas subkueri — Peningkatan kinerja count(*) agregasi atas subkueri dengan kardinalitas konstan yang diketahui.

  • Propagasi filter permintaan luar— Peningkatan performa subqueries berkorelasi saat filter dari permintaan luar dapat di-deploy ke subquery.

Kinerja fungsi

  • Fungsi Jendela Agregat— Peningkatan performa fungsi jendela agregat.

  • element_at ()— Peningkatan performaelement_at()untuk peta menjadi waktu yang konstan dan bukan sebanding dengan ukuran peta.

  • Pengelompokan () - Peningkatan kinerja untuk kueri yang melibatkan. grouping()

  • JSON pengecoran— Meningkatkan performa pengecoran dariJSONkeARRAYatauMAPjenis.

  • Fungsi Map-kembali— Peningkatan performa fungsi yang mengembalikan peta.

  • M ap-to-map casting - Meningkatkan kinerja map-to-map pemeran.

  • Min () dan max ()max() Fungsi min() dan telah dioptimalkan untuk menghindari pembuatan objek yang tidak perlu, sehingga mengurangi overhead pengumpulan sampah.

  • row_number ()— Peningkatan performa dan penggunaan memori untuk mengkueri menggunakanrow_number()diikuti oleh filter pada nomor baris yang dihasilkan.

  • Fungsi Jendela— Peningkatan performa kueri yang berisi fungsi jendela dengan identikPARTITION BYdanORDER BYKlausul.

  • Fungsi Jendela— Peningkatan performa fungsi jendela tertentu (misalnya,LAG) yang mempunyai spesifikasi yang sama.

Kinerja geospasial

  • Geometri serialisasi— Meningkatkan performa serialisasi nilai geometri.

  • Fungsi geospasial— Meningkatkan performaST_Intersects(),ST_Contains(),ST_Touches(),ST_Within(),ST_Overlaps(),ST_Disjoint(),transform_values(),ST_XMin(),ST_XMax(),ST_YMin(),ST_YMax(),ST_Crosses(), danarray_intersect().

  • ST_jarak ()— Peningkatan performa bergabung kueri yang melibatkanST_Distance()fungsi.

  • ST_Persimpangan ()— DioptimalkanST_Intersection()fungsi untuk segi empat tepat sejajar dengan paksi koordinat (sebagai contoh, poligon yang dihasilkan olehST_Envelope()danbing_tile_polygon()fungsi).

Fungsi Peta

  • Peningkatan performa subscript peta dariO(n)keO(1)dalam semua kasus. Sebelumnya, hanya peta yang diproduksi oleh fungsi dan pembaca tertentu yang memanfaatkan perbaikan ini.

  • Menambahkanmap_from_entries()danmap_entries()fungsi.

Casting

  • Menambahkan kemampuan untuk dilemparkan keJSONdariREAL,TINYINTatauSMALLINT.

  • Sekarang Anda dapat melemparkanJSONkeROWbahkan jikaJSONtidak berisi setiap bidang diROW.

  • Peningkatan performaCAST(json_parse(...) AS ...).

  • Meningkatkan performa pengecoran dariJSONkeARRAYatauMAPjenis.

Fungsi JSON Baru

Melanggar perubahan

Melanggar perubahan termasuk perbaikan bug, perubahan fungsi geospasial, fungsi yang diganti, dan pengenalan batas. Perbaikan ANSI SQL kepatuhan mungkin melanggar permintaan yang bergantung pada perilaku non-standar.

Perbaikan bug

Perubahan berikut memperbaiki masalah perilaku yang menyebabkan permintaan untuk menjalankan berhasil, tetapi dengan hasil yang tidak akurat.

  • kolom parket fixed_len_byte_array sekarang diterima sebagai DECIMAL - Kueri pada kolom Parket tipe fixed_len_byte_array berhasil dan mengembalikan nilai yang benar jika dijelaskan seperti dalam Skema Parket. DECIMAL Kueri pada fixed_len_byte_array kolom tanpa DECIMAL anotasi gagal dengan kesalahan. Sebelumnya, kueri pada fixed_len_byte_array kolom tanpa anotasi DECIMAL berhasil tetapi mengembalikan nilai yang tidak dapat dipahami.

  • json_parse () tidak lagi mengabaikan karakter trailing— Sebelumnya, masukan seperti[1,2]abcakan berhasil mengurai sebagai[1,2]. Menggunakan karakter trailing sekarang menghasilkan pesan kesalahanTidak dapat mengkonversi '[1, 2] abc' ke JSON.

  • Putaran () presisi desimal dikoreksi - round(x, d) sekarang membulatkan dengan benar x kapan x DESIMAL atau kapan DESIMAL dengan skala 0 dan x merupakan bilangan bulat negatif. d Sebelumnya, tidak ada pembulatan yang terjadi dalam kasus ini.

  • bulat (x, d) dan memotong (x, d) — Parameterddalam tanda tangan fungsi round(x, d) dan truncate(x, d) sekarang tipe INTEGER. Sebelumnya, d bisa berupa tipeBIGINT.

  • Map () dengan kunci duplikatmap() sekarang memunculkan kesalahan pada kunci duplikat daripada secara diam-diam menghasilkan peta yang rusak. Kueri yang saat ini membangun peta nilai menggunakan kunci duplikat sekarang gagal dengan kesalahan.

  • map_from_entries () menimbulkan kesalahan dengan entri nullmap_from_entries()sekarang menimbulkan kesalahan saat larik masukan berisi entri null. Pertanyaan yang membangun peta dengan melewatiNULLsebagai nilai sekarang gagal.

  • Tabel— Tabel yang memiliki tipe partisi yang tidak didukung tidak dapat lagi dibuat.

  • Peningkatan stabilitas numerik dalam fungsi statistik— Stabilitas numerik untuk fungsi statistikcorr(),covar_samp(),regr_intercept(), danregr_slope()telah diperbaiki.

  • Presisi TIMESTAMP yang didefinisikan dalam parket sekarang dihormati — Ketepatan TIMESTAMP nilai dan presisi yang ditentukan untuk TIMESTAMP kolom dalam skema Parket sekarang harus cocok. Presisi yang tidak cocok menghasilkan stempel waktu yang salah.

  • Informasi zona waktu— Informasi zona waktu sekarang dihitung menggunakanjava.timepaket dari Java 1.8 SDK.

  • JUMLAH dari INTERVAL_DAY_TO_SECOND dan INTERVAL_YEAR_TO_— Anda tidak dapat lagi menggunakanSUM(NULL)secara langsung. Untuk menggunakanSUM(NULL), corNULLke tipe data sepertiBIGINT,DECIMAL,REAL,DOUBLE,INTERVAL_DAY_TO_SECONDatauINTERVAL_YEAR_TO_MONTH.

Perubahan fungsi geospasial

Perubahan yang dilakukan pada fungsi geospasial adalah sebagai berikut.

  • Perubahan nama fungsi— Beberapa nama fungsi telah berubah. Untuk informasi selengkapnya, lihat Perubahan nama fungsi geospasial di mesin Athena versi 2.

  • Masukan VARBINAVARBINARYtidak lagi didukung secara langsung untuk input ke fungsi geospasial. Misalnya, untuk menghitung luas geometri secara langsung, geometri sekarang harus menjadi masukan baikVARCHARatauGEOMETRYformat. Solusi adalah dengan menggunakan mengubah fungsi, seperti dalam contoh berikut.

    • Untuk menggunakanST_area()untuk menghitung luas untukVARBINARYmasukan dalam format Biner Terkenal (WKB), berikan masukan keST_GeomFromBinary()pertama, misalnya:

      ST_area(ST_GeomFromBinary(<wkb_varbinary_value>))
    • Untuk menggunakanST_area()untuk menghitung luas untukVARBINARYmasukan dalam format biner warisan, lulus masukan yang sama keST_GeomFromLegacyBinary()fungsi pertama, misalnya:

      ST_area(ST_GeomFromLegacyBinary(<legacy_varbinary_value>))
  • ST_ ExteriorRing () dan ST_polygon ()ST_ExteriorRing()dan ST_Polygon()sekarang hanya menerima poligon sebagai input. Sebelumnya, fungsi-fungsi ini keliru menerima geometri lainnya.

  • ST_jarak ()— Seperti yang dipersyaratkan olehSpesifikasi SQL/MM,ST_Distance()fungsi sekarang kembaliNULLjika salah satu input adalah geometri kosong. Sebelumnya,NaNdikembalikan.

Kepatuhan ANSI SQL

Masalah sintaks dan perilaku berikut telah diperbaiki untuk mengikuti standar ANSI SQL.

  • Operasi cast ()- Cast () operasi dari REAL atau DOUBLE untuk DECIMAL sekarang sesuai dengan standar SQL. Misalnya,cast (double '100000000000000000000000000000000' as decimal(38))sebelumnya dikembalikan100000000000000005366162204393472Tapi sekarang kembali100000000000000000000000000000000.

  • BERGABUNG... MENGGUNAKANJOIN ... USINGsekarang sesuai dengan semantik SQL standar. Sebelumnya,JOIN ... USINGdiperlukan kualifikasi nama tabel dalam kolom, dan kolom dari kedua tabel akan hadir dalam output. Kualifikasi tabel sekarang tidak valid dan kolom hadir hanya sekali dalam output.

  • Jenis ROW literal dihapus— Format literal jenis ROWROW<int, int>(1, 2)tidak lagi didukung. Gunakan sintaksROW(1 int, 2 int)Sebagai gantinya

  • Semantik agregasi yang dikelompokkan— Agregasi dikelompokkan menggunakanIS NOT DISTINCT FROMsemantik bukan semantik kesetaraan. Agregasi yang dikelompokkan sekarang mengembalikan hasil yang benar dan menunjukkan performa yang lebih baik saat mengelompokkanNaNnilai floating point. Pengelompokan pada peta, daftar, dan jenis baris yang berisi nulls didukung.

  • Jenis dengan tanda petik tidak lagi dibenarkan— Sesuai dengan standar ANSI SQL, tipe data tidak dapat lagi dilampirkan dalam tanda kutip. Misalnya,SELECT "date" '2020-02-02'tidak lagi kueri yang valid. Sebaliknya, gunakan sintaksSELECT date '2020-02-02'.

  • Akses bidang baris anonim— Anonymous baris kolom tidak lagi dapat diakses dengan menggunakan sintaks [.field0, .field1, ...].

  • Operasi pengelompokan yang kompleks— Operasi pengelompokan kompleksGROUPING SETS,CUBE, danROLLUPtidak mendukung pengelompokan pada ekspresi yang terdiri dari kolom masukan. Hanya nama kolom yang diperbolehkan.

Fungsi yang diganti

Fungsi berikut tidak lagi didukung dan telah digantikan oleh sintaks yang menghasilkan hasil yang sama.

Batas

Batas berikut diperkenalkan di Athena mesin versi 2 untuk memastikan bahwa permintaan tidak gagal karena keterbatasan sumber daya. Batas ini tidak dapat dikonfigurasi oleh pengguna.

  • Jumlah elemen hasil— Jumlah elemen hasilndibatasi hingga 10.000 atau kurang untuk fungsi-fungsi berikut:min(col, n),max(col, n),min_by(col1, col2, n), danmax_by(col1, col2, n).

  • SET PENGELOMPOKAN— Jumlah maksimum irisan dalam satu set pengelompokan adalah 2048.

  • Panjang baris file teks maksimum - Panjang baris maksimum default untuk file teks adalah 200 MB.

  • Fungsi urutan ukuran hasil maksimal— Ukuran hasil maksimum dari fungsi urutan adalah 50000 entri. Misalnya,SELECT sequence(0,45000,1)berhasil, tapiSELECT sequence(0,55000,1)gagal dengan pesan kesalahanHasil dari fungsi urutan tidak harus memiliki lebih dari 50000 entri. Batas ini berlaku untuk semua jenis input untuk fungsi urutan, termasuk cap waktu.