Presto (juga dikenal sebagai PrestoDB) adalah mesin kueri SQL terdistribusi yang fleksibel dan dapat diskalakan, yang mendukung analisis interaktif dataset besar menggunakan SQL standar. DataWorks menyediakan node EMR Presto untuk mengembangkan dan menjadwalkan tugas Presto secara berkala. Topik ini menjelaskan alur kerja utama dan pertimbangan penting dalam pengembangan tugas tersebut.
Prasyarat
Anda telah membuat kluster Alibaba Cloud E-MapReduce (EMR) dan mendaftarkannya ke DataWorks. Untuk informasi selengkapnya, lihat Data Studio: Mengaitkan resource komputasi EMR.
(Opsional, wajib bagi pengguna RAM) Tambahkan pengguna Resource Access Management (RAM) yang bertanggung jawab atas pengembangan tugas ke ruang kerja dan berikan peran Developer atau Workspace Administrator. Peran Workspace Administrator memiliki izin yang luas, sehingga berikan dengan hati-hati. Untuk informasi selengkapnya tentang penambahan anggota, lihat Menambahkan anggota ke ruang kerja.
Jika Anda menggunakan akun Alibaba Cloud, Anda dapat melewati langkah ini.
Batasan
Hanya kluster Data Lakehouse versi lama (Hadoop) yang didukung. Kluster data lake baru (DataLake) dan kluster kustom (Custom) tidak didukung.
Anda hanya dapat menjalankan tugas jenis ini dengan resource group Serverless (disarankan) atau Exclusive Scheduling Resource Group.
Alur data: Tugas node EMR Presto tidak mendukung alur data.
Prosedur
Pada halaman konfigurasi node EMR Presto, ikuti langkah-langkah berikut untuk mengembangkan tugas Anda.
Kembangkan kode SQL
Di editor SQL, tulis kode untuk tugas Anda. Definisikan variabel dalam kode menggunakan format
${variable_name}. Anda kemudian dapat memberikan nilai untuk variabel tersebut di bagian Scheduling Parameters pada panel Schedule. Hal ini memungkinkan Anda untuk secara dinamis pass parameter ke kode saat tugas dijadwalkan. Untuk informasi selengkapnya tentang penggunaan scheduling parameters, lihat Sumber dan ekspresi scheduling parameters. Kode berikut merupakan contoh:select '${var}'; -- Dapat digunakan bersama scheduling parameters. select * from userinfo ;CatatanUkuran maksimum pernyataan SQL adalah 130 KB.
Kueri yang dijalankan pada node EMR Presto dapat mengembalikan maksimal 10.000 baris, dan ukuran total data tidak boleh melebihi 10 MB.
(Opsional) Konfigurasi parameter lanjutan
Pada panel Schedule di sisi kanan halaman, Anda dapat mengonfigurasi properti berikut di bagian .
CatatanAnda juga dapat mengonfigurasi properti Presto open-source di bagian Schedule pada panel .
EMR on ECS
Parameter
Deskripsi
DATAWORKS_SESSION_DISABLE
Berlaku untuk test run di lingkungan pengembangan. Nilai yang valid:
true: Koneksi JDBC baru dibuat untuk setiap eksekusi pernyataan SQL.false(default): Koneksi JDBC yang sama digunakan ulang untuk beberapa pernyataan SQL dalam satu node yang sama.
CatatanJika Anda mengatur parameter ini ke
false,yarn applicationIdHive tidak akan dicetak. Untuk mencetakyarn applicationId, atur parameter ini ketrue.FLOW_SKIP_SQL_ANALYZE
Mode eksekusi untuk pernyataan SQL. Nilai yang valid:
true: Beberapa pernyataan SQL dieksekusi sekaligus.false(default): Satu pernyataan SQL dieksekusi dalam satu waktu.
CatatanParameter ini hanya didukung untuk test run di lingkungan pengembangan.
priority
Prioritas pekerjaan. Nilai default-nya adalah 1.
queue
Antrian YARN tempat pekerjaan dikirimkan. Antrian default-nya adalah
default. Untuk informasi selengkapnya tentang EMR YARN, lihat Konfigurasi antrian dasar.Jalankan tugas SQL
Pada panel Run Configuration, buka bagian Compute Resources dan konfigurasikan Compute Resources dan DataWorks resource group.
CatatanAnda juga dapat mengonfigurasi Scheduling CU berdasarkan resource yang dibutuhkan oleh tugas. Nilai default-nya adalah
0.25.Untuk mengakses sumber data melalui jaringan publik atau jaringan VPC, Anda harus menggunakan resource group penjadwalan yang telah lulus uji konektivitas dengan sumber data tersebut. Untuk informasi selengkapnya, lihat Solusi konektivitas jaringan.
Pada bilah alat, pilih sumber data di kotak dialog parameter lalu klik Run.
Jika Anda perlu menjalankan tugas node secara berkala, konfigurasikan properti penjadwalannya sesuai kebutuhan bisnis Anda. Untuk informasi selengkapnya tentang konfigurasi tersebut, lihat Konfigurasi penjadwalan node.
Setelah mengonfigurasi tugas node, Anda harus melakukan Penerapan. Untuk informasi selengkapnya, lihat Penerapan node dan workflow.
Setelah tugas diterapkan, Anda dapat melihat statusnya di Operation Center. Untuk informasi selengkapnya, lihat Memulai Operation Center.
FAQ
T: Apa yang harus saya lakukan jika muncul pesan "Error executing query"?

J: Pastikan tipe kluster adalah kluster Data Lakehouse versi lama (Hadoop).
T: Apa yang harus saya lakukan jika terjadi error timeout koneksi saat menjalankan node?
J: Verifikasi konektivitas jaringan antara Resource Group dan Kluster. Buka halaman resource komputasi, temukan resource tersebut, lalu klik Initialize Resource. Pada kotak dialog yang muncul, klik Re-initialize dan pastikan inisialisasi berhasil.

