Topik ini menyediakan catatan rilis untuk fitur Produk MaxCompute.
Juli 2025
MaxCompute Engine V52 dirilis secara resmi pada Juli 2025. Versi ini menambahkan atau meningkatkan fitur-fitur berikut:
Mesin gudang data
Fitur baru
Dukungan untuk tabel partisi berbasis waktu pemasukan data ditambahkan. Saat Anda menulis data, sistem secara otomatis menangkap waktu pemasukan data tersebut. Anda dapat menentukan fungsi perhitungan waktu, TRUNC_TIME, untuk menghitung nilai kolom partisi berdasarkan waktu pemasukan data. Hal ini memungkinkan partisi tabel dilakukan secara otomatis.
Peningkatan pemangkasan partisi untuk tabel auto-partisi: Pemangkasan partisi untuk tabel auto-partisi ditingkatkan. Pemangkasan partisi kini mendukung penerapan fungsi waktu atau tanggal pada kolom waktu atau tanggal, seperti DATE, DATETIME, TIMESTAMP, dan TIMESTAMP_NTZ, selama pembuatan tabel. Hasil perhitungan tersebut dapat digunakan sebagai kondisi filter untuk pemangkasan partisi. Untuk informasi lebih lanjut, lihat Pemangkasan partisi untuk tabel auto-partisi menggunakan fungsi perhitungan waktu.
Bahasa dan sintaksis
Dukungan untuk GROUP BY ALL ditambahkan. Untuk menggunakan fitur ini, Anda dapat menjalankan perintah
SET odps.sql.bigquery.compatible=true;untuk mengaktifkan mode kompatibilitas BigQuery. Kami menyarankan agar Anda mengaktifkan fitur ini di tingkat proyek.Sintaksis DELETE FROM/UPDATE kini mendukung alias tabel. Anda dapat menggunakan format berikut:
DELETE FROM <table_name> [[as] alias] [WHERE <condition>];UPDATE <table_name> [[as] alias] SET ...;
Fungsi bawaan
Fungsi tanggal dan waktu
Fungsi ISOYEAR ditambahkan. Fungsi ini mengekstraksi tahun ISO 8601 dari input tanggal.
Fungsi CURRENT_DATE, CURRENT_TIMESTAMP_NTZ, dan CURRENT_MICROS ditambahkan. Fungsi-fungsi ini menerima parameter zona waktu untuk mengembalikan waktu saat ini dalam zona waktu yang ditentukan.
Fungsi deret waktu berikut ditambahkan: TIME_ADD, TIME_SUB, TIME_DIFF, TO_TIME, FORMAT_TIME, dan TIME_TRUNC. Fungsi-fungsi ini mendukung konstruksi, konversi, dan perhitungan nilai waktu yang direpresentasikan sebagai BIGINT dalam mikrodetik.
Fungsi DATEADD, DATEDIFF, DATETRUNC, dan LAST_DAY kini mendukung nilai tambahan date_part.
Fungsi WEEKOFYEAR kini mendukung nilai tambahan date_part dan menerima parameter input bertipe DATE.
Fungsi jaringan
Serangkaian fungsi jaringan NET network functions ditambahkan: NET_IP_FROM_STRING, NET_SAFE_IP_FROM_STRING, NET_IP_NET_MASK, NET_IPV4_TO_INT64, NET_IP_TO_STRING, NET_HOST, NET_PUBLIC_SUFFIX, dan NET_REG_DOMAIN. Fungsi-fungsi ini memproses data terkait jaringan bertipe STRING dan BINARY serta mendukung konversi format alamat IP, penguraian URL, dan pengambilan mask jaringan.
Fungsi string
Fungsi string berikut ditambahkan: BASE32, CODEPOINT_ARRAY, SAFE_CONVERT_BYTES_TO_STRING, dan FORMAT_STRING. Fungsi-fungsi ini menyediakan kemampuan pemrosesan data biner dan pemformatan string yang fleksibel.
Fungsi REGEXP_CONTAINS ditambahkan. Fungsi ini memeriksa apakah sebuah string berisi konten yang cocok dengan string atau ekspresi reguler tertentu.
Fungsi matematika
Fungsi LEAST dan GREATEST kini mendukung parameter input bertipe DATE.
Lainnya
Saat Anda menjalankan perintah
SET odps.sql.bigquery.compatible=true;untuk mengaktifkan mode kompatibilitas BigQuery, perilaku beberapa fungsi berubah:Dalam mode kompatibilitas BigQuery, fungsi SUBSTR menangani
position = 0secara berbeda.Dalam mode kompatibilitas BigQuery, fungsi REVERSE menangani data bertipe STRING secara berbeda.
Dalam mode kompatibilitas BigQuery, fungsi STDDEV_SAMP berperilaku berbeda ketika jendela hanya berisi satu nilai expr non-NULL.
Dalam mode kompatibilitas BigQuery, fungsi REGEXP_EXTRACT dan REGEXP_EXTRACT_ALL berperilaku berbeda ketika
patterntidak memiliki grup dan tidak adagroup_idyang ditentukan.
April 2025
MaxCompute Engine V51 dirilis secara resmi pada April 2025. Versi ini menambahkan atau meningkatkan fitur-fitur berikut:
Mesin gudang data
Fitur baru
Dukungan untuk tabel auto-partisi yang menggunakan fungsi perhitungan waktu (AUTO PARTITION) ditambahkan. Anda dapat menerapkan fungsi perhitungan waktu tertentu pada kolom waktu atau tanggal, seperti DATE, DATETIME, TIMESTAMP, dan TIMESTAMP_NTZ, dalam sebuah tabel. Sistem secara otomatis menghitung nilai kolom partisi berdasarkan hasil tersebut dan melakukan partisi tabel. Untuk informasi lebih lanjut, lihat Tabel auto-partisi menggunakan fungsi perhitungan waktu.
Peningkatan fitur
Saat Anda membangun ulang indeks BloomFilter dengan perintah ALTER TABLE REBUILD INDEX, Anda dapat membangun ulang beberapa partisi sekaligus. Untuk informasi lebih lanjut, lihat Menghasilkan indeks BloomFilter.
Saat membuat tampilan yang di-materialisasi, MAX_PT kini didukung selain GETDATE. Selama penulisan ulang kueri, sistem menggunakan nilai MAX_PT pada saat pembuatan tampilan yang di-materialisasi. Hal ini meningkatkan cakupan penulisan ulang kueri. Untuk informasi lebih lanjut, lihat Membuat tampilan yang di-materialisasi (dengan partisi dan pengelompokan).
Bahasa dan Sintaksis
Sintaksis STRUCT ditingkatkan untuk mendukung
STRUCT(*). Sintaksis ini memungkinkan Anda mereferensikan atau mengoperasikan semua bidang STRUCT dalam sebuah kueri. Untuk informasi lebih lanjut, lihat Tipe data STRUCT.Saat Anda menjalankan perintah
SHOW HISTORY FOR TASKuntuk menampilkan riwayat task, Anda dapat menentukan posisi awal dan panjang untuk mengontrol output secara lebih tepat. Untuk informasi lebih lanjut, lihat Melihat daftar riwayat instans task periodik yang dijadwalkan secara otomatis.
Fungsi bawaan
Fungsi TRUNC_TIME ditambahkan. Fungsi ini memotong data tanggal atau waktu berdasarkan satuan waktu yang ditentukan dalam datepart dan mengembalikan STRING. Untuk informasi lebih lanjut, lihat TRUNC_TIME.
Fungsi BOOL_AND dan BOOL_OR ditambahkan. BOOL_AND melakukan operasi logika AND pada sekumpulan nilai Boolean. BOOL_OR melakukan operasi logika OR. Kedua fungsi ini mengembalikan hasil logika dari semua nilai input non-NULL. Untuk informasi lebih lanjut, lihat BOOL_AND dan BOOL_OR.
Fungsi BIT_COUNT ditambahkan. Fungsi ini menghitung jumlah bit 1 dalam representasi biner dari nilai input. Untuk informasi lebih lanjut, lihat BIT_COUNT.
Fungsi BITWISE_XOR_AGG ditambahkan. Fungsi ini menghitung XOR bitwise dari semua nilai input. Untuk informasi lebih lanjut, lihat BITWISE_XOR_AGG.
Fungsi ANY ditambahkan. Fungsi ini memeriksa apakah setidaknya satu elemen dalam input bernilai TRUE. Untuk informasi lebih lanjut, lihat ANY.
Peningkatan performa dan parameter
Fitur Shuffle Removal semakin ditingkatkan. Pengacakan yang tidak perlu dihilangkan saat Anda menulis ke tabel Cluster untuk meningkatkan performa pekerjaan.
Februari 2025
MaxCompute SQL V50 dirilis secara resmi pada Februari 2025. Fitur-fitur berikut ditambahkan atau ditingkatkan dalam versi ini:
Mesin gudang data
Format data
Tipe data DECIMAL mendukung skala yang lebih tinggi. Nilai skala dari `DECIMAL(precision,scale)` menunjukkan jumlah digit pada bagian pecahan dari nilai DECIMAL. Anda dapat menjalankan perintah
SET odps.sql.decimal2.extended.scale.enable=true;untuk memperluas rentang skala dari [0, 18] menjadi [0, 38]. Untuk informasi lebih lanjut, lihat Sistem tipe data MaxCompute versi 2.0.Peningkatan sintaksis dan fungsi
Peningkatan sintaksis STRUCT: Sintaksis STRUCT ditingkatkan untuk mendukung sintaksis ekspresi STRUCT. Sintaksis ini memungkinkan Anda menggunakan ekspresi bernama untuk membangun data bertipe STRUCT. Hal ini menyediakan metode baru untuk membangun tipe data kompleks ini. Untuk informasi lebih lanjut, lihat Tipe data STRUCT.
Peningkatan fungsi FIND_IN_SET: Fungsi ini dapat digunakan untuk mencari substring dalam string yang terdiri dari substring-substring yang dipisahkan oleh pembatas dan mengembalikan posisi substring tersebut. Pada versi MaxCompute SQL sebelumnya, hanya koma (,) yang dapat digunakan sebagai pembatas untuk fungsi ini. Setelah peningkatan, Anda dapat menentukan pembatas kustom bertipe STRING untuk fungsi ini. Hal ini memungkinkan pencarian string yang lebih fleksibel. Untuk informasi lebih lanjut, lihat FIND_IN_SET.
Fungsi bawaan baru GET_DATA_FROM_OSS: Fungsi bawaan `GET_DATA_FROM_OSS` ditambahkan. Fungsi ini dapat digunakan untuk mengunduh data objek Object Storage Service (OSS) dari Tabel Objek dan mengembalikan data biner untuk komputasi selanjutnya. Untuk informasi lebih lanjut, lihat Kueri konten objek untuk komputasi bisnis.
Peningkatan fitur
MATERIALIZED CTE: Saat Anda mendefinisikan ekspresi tabel umum (CTE), Anda dapat menggunakan petunjuk `MATERIALIZE` dalam pernyataan `SELECT` untuk menyimpan hasil perhitungan CTE ke tabel temporary. Saat Anda mengakses CTE tersebut selanjutnya, Anda dapat langsung membaca hasilnya dari cache. Hal ini membantu menghindari masalah kehabisan memori (OOM) dalam skenario bersarang CTE multi-lapis dan meningkatkan performa pernyataan CTE. Untuk informasi lebih lanjut, lihat MATERIALIZE CTE.
Peningkatan observabilitas indeks Bloom filter: Waktu yang dibutuhkan untuk menggabungkan indeks Bloom filter ditampilkan pada tab SubStatusHistory di LogView. Untuk informasi lebih lanjut, lihat Menghasilkan indeks Bloom filter.
Peningkatan tampilan yang di-materialisasi: Tampilan yang di-materialisasi ditingkatkan. Fitur penulisan ulang kueri tampilan yang di-materialisasi diperbaiki untuk mendukung lebih banyak operator, termasuk `DISTRIBUTED BY`, `ORDER BY`, `ORDER BY` + `LIMIT`, dan `LIMIT`. Untuk informasi lebih lanjut, lihat Penulisan ulang kueri tampilan yang di-materialisasi.
Peningkatan performa dan parameter
Untuk fungsi ARRAY_CONTAINS, pengoptimal secara otomatis mendeteksi ketika parameter input diproses oleh fungsi SPLIT dalam skenario pencarian string. Secara default, pengoptimal mengonversi ekspresi ini menjadi operasi FIND_IN_SET yang setara dan mendukung jenis pemisah tambahan. Misalnya, ARRAY_CONTAINS(SPLIT(c1, '_'), c2) secara otomatis dioptimalkan menjadi
FIND_IN_SET(c1, c2, '_'), yang meningkatkan performa eksekusiARRAY_CONTAINS.Secara default, kemampuan Reshuffle Split diaktifkan untuk partisi dinamis guna mengoptimalkan skenario yang melibatkan reshuffling partisi dinamis. Optimasi ini membagi aliran data partisi dinamis dan hanya melakukan reshuffling pada satu jalur, sehingga mengurangi overhead reshuffling partisi dinamis sekaligus menghindari masalah file kecil yang berlebihan.
Kemampuan Shuffle Removal semakin ditingkatkan untuk menghilangkan pengacakan yang tidak perlu dalam skenario MAPJOIN dan PARTITIONED HASH JOIN serta meningkatkan performa pekerjaan.
Gudang data near real-time
Rilis fitur CDC Delta Table
Change Data Capture (CDC) Delta Table mengidentifikasi dan menangkap perubahan data pada tabel database. Fitur ini mencatat operasi penyisipan, pembaruan, dan penghapusan tingkat baris pada tabel inkremental Delta Table. Hal ini secara efektif menangkap event perubahan data untuk tabel tersebut. CDC Delta Table secara otomatis menghasilkan task penjadwalan berbasis waktu saat dibuat. Task-task ini menjalankan pekerjaan asinkron untuk menghasilkan data CDC. Sintaksisnya mencakup `CREATE`, `ALTER`, dan `DROP`. Anda dapat menggunakan event CDC untuk mendorong komputasi inkremental, sinkronisasi data, dan pelapisan gudang data. Untuk informasi lebih lanjut, lihat CDC (pratinjau undangan).
Fitur Stream Baru untuk Objek Aliran Data
Stream adalah objek aliran data yang dikelola oleh MaxCompute. Stream secara otomatis mengelola versi data kueri inkremental untuk Delta Tables. Stream mencatat perubahan DML, seperti penyisipan, pembaruan, dan penghapusan, pada tabel inkremental. Setiap perubahan mencakup metadata untuk membantu Anda bertindak atas data yang berubah. Untuk informasi lebih lanjut, lihat Objek Stream.
Rilis fitur task penjadwalan periodik
Task penjadwalan periodik MaxCompute (Periodic Tasks) memungkinkan Anda menyesuaikan kebijakan penjadwalan secara fleksibel. Task-task ini menjalankan logika SQL untuk secara otomatis membangun pipa data dan menyederhanakan alur kerja ETL. Anda dapat menggabungkan task dengan perubahan data tabel dan pembacaan stream untuk membuat alur kerja ETL berkelanjutan yang memproses data yang baru saja berubah. Untuk informasi lebih lanjut, lihat Task penjadwalan periodik (pratinjau undangan).
Penulisan data dari Flink ke tabel Delta
Tabel Delta MaxCompute mendukung berbagai metode penulisan data. MaxCompute menyediakan versi baru plugin konektor Flink. Plugin konektor Flink dapat digunakan untuk menulis data dari Flink ke tabel standar MaxCompute dan tabel Delta. Hal ini memfasilitasi penulisan data dari Flink ke MaxCompute. Selain itu, data Flink CDC dapat langsung ditulis ke tabel Delta. Untuk informasi lebih lanjut, lihat Mengunggah data ke MaxCompute dengan Flink.
Lakehouse dan fitur tabel eksternal
Saat Anda membuat tabel eksternal untuk mengurai data dalam format PARQUET, konversi implisit didukung untuk beberapa tipe data, seperti TINYINT, SMALLINT, dan DATETIME.
Fungsi MAX_PT dapat digunakan untuk mengkueri partisi terbaru dari tabel eksternal. Anda dapat menggunakan fungsi ini untuk mengkueri partisi terbaru yang berisi data dalam tabel eksternal OSS. Untuk informasi lebih lanjut, lihat MAX_PT.
November 2024
Versi MaxCompute SQL V49 dirilis secara resmi pada November 2024. Fitur-fitur berikut ditambahkan atau ditingkatkan dalam versi ini:
Mesin gudang data
Fitur baru
Indeks bitmap: Anda dapat membuat indeks bitmap untuk kolom dengan kardinalitas rendah yang memiliki banyak nilai duplikat. Dalam skenario pemfilteran rentang, Anda dapat menggunakan indeks bitmap untuk memfilter lebih dari 50% data. Hal ini membantu mempercepat kueri. Untuk informasi lebih lanjut, lihat Indeks bitmap (beta).
Indeks Bloom filter: Bloom filter adalah struktur data probabilistik yang efisien. MaxCompute memungkinkan Anda menggunakan indeks Bloom filter untuk melakukan kueri titik berskala besar. Hal ini mengurangi pemindaian data yang tidak perlu selama kueri dan meningkatkan efisiensi serta performa kueri secara keseluruhan. Untuk informasi lebih lanjut, lihat Indeks Bloom filter (Beta).
Fungsi bawaan
Fungsi bawaan JSON_EXPLODE ditambahkan. Fungsi ini digunakan untuk memperluas setiap elemen dalam array JSON atau objek JSON menjadi beberapa baris. Untuk informasi lebih lanjut, lihat JSON_EXPLODE.
Peningkatan bahasa
Anda dapat menggunakan klausa OR REPLACE dalam pernyataan CREATE TABLE untuk memperbarui metadata tabel. Jika tabel tujuan sudah ada, Anda dapat langsung memperbarui metadata tabel tersebut tanpa perlu menghapus tabel yang ada terlebih dahulu. Hal ini menyederhanakan penggunaan pernyataan SQL dan meningkatkan kemudahan penggunaan. Untuk informasi lebih lanjut, lihat Membuat dan menghapus tabel.
Komentar satu baris dan multi-baris dapat digunakan dalam skrip SQL MaxCompute untuk meningkatkan keterbacaan kode. Untuk informasi lebih lanjut, lihat Komentar SQL.
HINT SUBQUERY_MAPJOIN didukung. Subkueri tertentu seperti SCALAR, IN, dan EXISTS diubah menjadi operasi JOIN selama eksekusi. Anda dapat secara eksplisit menentukan hint untuk menggunakan algoritma MAPJOIN guna meningkatkan efisiensi eksekusi. Untuk informasi lebih lanjut, lihat HINT SUBQUERY_MAPJOIN.
Parameter baru
Parameter asli
odps.stage.mapper.split.sizemendukung pengaturan keseluruhan pada tahap map. Anda dapat menggunakan flag baru untuk membagi tabel secara fleksibel berdasarkan baris atau konkurensi. Flag baru ini dapat meningkatkan konkurensi task dalam skenario di mana ukuran setiap baris dalam tabel kecil dan beban kerja operasi komputasi selanjutnya berat. Untuk informasi lebih lanjut, lihat Parameter flag.Jika sebuah kueri berulang kali mengakses tabel partisi yang sama, Anda dapat menjalankan perintah
set odps.optimizer.merge.partitioned.table=true;untuk mengaktifkan sistem agar menggabungkan operasi akses pada tabel partisi tersebut. Hal ini meminimalkan operasi I/O pada tabel partisi dan meningkatkan performa kueri. Untuk informasi lebih lanjut, lihat Parameter flag.
Perubahan perilaku
Fitur optimasi partisi dinamis-ke-statis meningkatkan performa kueri untuk semua operasi DML dan diaktifkan secara default. Optimasi ini memengaruhi perilaku operasi UPDATE, DELETE, dan MERGE INTO. Untuk informasi lebih lanjut, lihat Pengumuman tentang Optimasi Partisi Dinamis-ke-Statis.
AI big data (MaxFrame)
LogView 2.0 kompatibel dengan MaxFrame dan mendukung fitur-fitur terkait MaxFrame berikut. Untuk informasi lebih lanjut, lihat Menggunakan LogView 2.0 untuk melihat pekerjaan MaxFrame.
Memungkinkan Anda melihat catatan eksekusi dan durasi eksekusi semua grafik asiklik terarah (DAG) yang dikirimkan dalam sesi MaxFrame.
Memungkinkan Anda melihat secara interaktif urutan eksekusi, waktu eksekusi, topologi operator, dan hubungan status sub-DAG dalam setiap DAG.
Memungkinkan Anda melihat pengaturan, status, penggunaan memori, dan pemanfaatan CPU setiap instans anak.
MaxFrame menawarkan layanan pengemasan otomatis untuk menyederhanakan manajemen paket pihak ketiga dalam pengembangan pekerjaan berbasis Python. Layanan ini memungkinkan Anda mendeklarasikan file dependensi eksternal yang diperlukan selama pengembangan pekerjaan. Saat pekerjaan berjalan, file dependensi tersebut secara otomatis dikemas dan diintegrasikan ke lingkungan pengembangan pekerjaan. Anda tidak perlu mengunggah paket secara manual. Hal ini menyederhanakan manajemen paket. Untuk informasi lebih lanjut, lihat Layanan pengemasan otomatis.
Lakehouse dan fitur tabel eksternal
Kompresi ZSTD didukung selama penulisan data ke tabel eksternal Parquet berbasis antarmuka JNI.
Sebelum fitur ini diperkenalkan, hanya file tanpa kompresi dan file Snappy yang dapat ditulis saat Anda membuat tabel eksternal Parquet. Setelah fitur ini diperkenalkan, file yang dikompresi menggunakan algoritma kompresi ZSTD juga dapat ditulis dalam skenario ini. Hal ini membantu meningkatkan rasio kompresi serta performa baca dan tulis, serta mencapai efisiensi biaya yang lebih baik. Untuk informasi lebih lanjut, lihat Tabel Asing ORC.
CsvStorageHandler dan OpenCsvSerde disediakan untuk mendukung lebih banyak tipe data dalam pembacaan dan penulisan data.
MaxCompute menyediakan standar baca dan tulis OpenCsvSerde, yang disebut sebagai CsvSerde dan kompatibel dengan Hive. Tipe data yang didukung oleh OpenCsvSerde adalah tipe data kompatibel Hive. MaxCompute juga menyediakan standar baca dan tulis kustom CsvStorageHandler, yang disebut sebagai CsvHandler. Tipe data yang didukung oleh CsvStorageHandler adalah tipe data yang didukung dalam edisi tipe data MaxCompute V2.0. Tipe data CsvSerde dan CsvHandler tidak sepenuhnya sama, tetapi masih memiliki irisan beberapa tipe data dasar, seperti INT dan FLOAT. Namun, masih terdapat banyak perbedaan dalam perilaku penguraian tipe data tersebut. Standar terpadu belum diformulasikan. Sebagai contoh, untuk tipe FLOAT, CsvSerde mendefinisikan penanganan nilai khusus seperti INF. Namun, CsvHandler tidak menangani nilai khusus dan hanya mencoba menggunakan metode parseFloat untuk penguraian. Akibatnya, perilaku penguraian tipe data dasar mungkin tidak sama saat Anda menggunakan CsvHandler dan CsvSerde.
CsvStorageHandler mendukung berbagai tipe data dasar, seperti BOOLEAN, TIMESTAMP, DATE, dan DATETIME. Hal ini memungkinkan Anda mengekspor data semua tipe data dari MaxCompute ke OSS dan menyimpan data dalam format CSV. Setelah replikasi lintas wilayah dilakukan berdasarkan OSS, data dapat dipulihkan ke MaxCompute.
Tabel eksternal OSS memungkinkan Anda melakukan autentikasi STS dengan mengasumsikan peran RAM.
Fitur ini dioptimalkan untuk memungkinkan Anda mengakses MaxCompute dengan mengasumsikan peran RAM (tanpa memerlukan Pasangan Kunci Akses) atau mengakses MaxCompute dari layanan cloud lain dengan mengasumsikan peran RAM dalam skenario yang melibatkan tabel eksternal. Sebelum fitur ini dioptimalkan, saat Anda mengasumsikan peran dalam skenario tersebut, sistem tidak dapat memperoleh informasi pengguna peran RAM karena tabel eksternal berisi peran RAM yang diintegrasikan dengan properti tabel agar MaxCompute dapat mengakses layanan rekan. Akibatnya, Anda tidak dapat mengakses tabel eksternal dengan mengasumsikan peran RAM tersebut. Setelah fitur ini dioptimalkan, penggunaan peran RAM dan akses mulus berbasis peran RAM tidak terpengaruh meskipun tabel eksternal terlibat. Untuk informasi lebih lanjut, lihat Tabel Asing ORC.
Pengoptimal mendukung statistik tabel statistik sementara selama kueri untuk mengidentifikasi tabel kecil dan mengoptimalkan rencana kueri.
Karena data yang dikueri menggunakan tabel eksternal disimpan di data lake eksternal, sistem tidak membuat metadata lokal untuk memastikan keterbukaan data. Dalam kasus ini, jika Anda tidak mengumpulkan statistik terlebih dahulu, pengoptimal menggunakan kebijakan konservatif, yang menurunkan efisiensi kueri. Pengoptimal kini mendukung statistik tabel statistik sementara selama kueri untuk mengidentifikasi tabel kecil. Hal ini memungkinkan Anda secara proaktif menggunakan berbagai metode untuk mengoptimalkan rencana kueri. Metode-metode tersebut meliputi melakukan operasi hash join, mengoptimalkan urutan join, mengurangi banyak operasi shuffle, dan memperpendek pipeline yang dieksekusi. Untuk informasi lebih lanjut, lihat Tabel eksternal Paimon.