Untuk menjalankan kueri kompleks pada RDS PostgreSQL dan memperoleh hasil dengan cepat, gunakan mesin akselerasi analisis rds_duckdb.
Ikhtisar
Secara default, RDS PostgreSQL menggunakan penyimpanan berbasis baris, yang ideal untuk pencarian titik (point lookups) dan pembaruan berfrekuensi tinggi dalam skenario Pemrosesan Transaksional Online (OLTP). Namun, performanya terbatas dalam skenario Pemrosesan Analitik Online (OLAP) yang memerlukan pemindaian data dalam jumlah besar. Ekstensi rds_duckdb mengintegrasikan mesin analisis DuckDB ke dalam RDS PostgreSQL dan mempercepat kueri kompleks melalui kemampuan berikut:
Penyimpanan berorientasi kolom: Data diorganisasi dan disimpan berdasarkan kolom. Untuk kueri yang melakukan agregasi pada sebagian kolom, metode ini hanya membaca kolom yang relevan sehingga secara signifikan mengurangi beban I/O.
Eksekusi vektorisasi: Mesin memproses data dalam batch, memanfaatkan sepenuhnya instruksi SIMD CPU dan lokalitas cache. Pendekatan ini meningkatkan performa hingga beberapa hingga puluhan kali lipat dibandingkan eksekusi tradisional per-tupel (model Volcano).
Penggunaan non-intrusif: Pernyataan SQL asli Anda tidak memerlukan modifikasi, sehingga memungkinkan migrasi aplikasi ke jalur akselerasi secara mulus.
Kasus penggunaan
Pelaporan kompleks dan kueri ad-hoc yang melibatkan JOIN antar banyak tabel, klausa GROUP BY, serta komputasi agregat.
Skema analisis data dan statistik di mana satu tabel berukuran besar dan kueri hanya melibatkan sebagian kolomnya.
Skema workload Hybrid Transactional/Analytical Processing (HTAP) yang mendukung transaksi online dan kueri analitik pada set data yang sama.
Opsi pengaktifan
Sebelum menggunakan fitur akselerasi analisis, Anda harus mengonfigurasi instans Anda. Pilih salah satu dari dua opsi berikut berdasarkan karakteristik workload Anda:
Metode pengaktifan | Resource Mode | Skenario yang Direkomendasikan | Dokumentasi |
Aktifkan akselerasi analisis pada instans primary | PostgreSQL dan DuckDB berbagi resource instans primary. Opsi ini mudah diterapkan dan hemat biaya. | Untuk bisnis dengan workload TP ringan atau yang dapat mengizinkan kueri AP menggunakan sebagian resource instans primary. Opsi ini juga ideal untuk memvalidasi performa akselerasi secara cepat. | |
Instans analisis berbasis DuckDB | Instans analisis berbasis DuckDB yang didedikasikan ditempatkan secara terpisah dan melakukan sinkronisasi data dengan instans primary. Pendekatan ini memberikan isolasi resource fisik penuh antara workload AP dan TP. | Untuk bisnis inti yang sensitif terhadap latensi layanan online dan memerlukan stabilitas TP yang terjamin saat menangani kueri AP berskala besar. |
Jika Anda ragu memilih opsi mana, kami merekomendasikan untuk memulai dengan Instans analisis berbasis DuckDB. Pendekatan ini mengisolasi workload analitik dari transaksi online, sehingga mencegah kueri AP memengaruhi performa dan stabilitas bisnis inti Anda.
Cara menggunakan
Setelah mengaktifkan fitur akselerasi HTAP, gunakan ekstensi rds_duckdb untuk membuat tabel berorientasi kolom, mengimpor data, dan menjalankan kueri. Untuk sintaks detail, operasi manajemen tabel, dan instruksi kueri, lihat AP acceleration engine (rds_duckdb).
Pengujian performa
Untuk mengevaluasi secara kuantitatif akselerasi yang diberikan oleh rds_duckdb terhadap kueri kompleks, rujuk benchmark standar TPC-H. Benchmark ini menyediakan langkah-langkah lengkap untuk menyiapkan data uji, menjalankan kueri, dan membandingkan hasilnya. Untuk informasi lebih lanjut, lihat AP acceleration engine (rds_duckdb) performance test.
Uji coba gratis
Untuk segera mencoba fitur inti rds_duckdb, gunakan uji coba gratis. Uji coba ini memungkinkan Anda memvalidasi kueri AP sederhana tanpa perlu membeli resource tambahan. Untuk informasi lebih lanjut, lihat Free trial of RDS PostgreSQL AP acceleration engine (rds_duckdb).