Apa itu Presto?

Apa itu Presto?

Presto, atau basis data Presto (PrestoDB), adalah mesin kueri SQL terdistribusi sumber terbuka yang dapat mengkueri kumpulan data besar dari berbagai sumber data, yang memungkinkan perusahaan untuk mengatasi masalah data dalam skala besar.

Presto memberi organisasi dari semua ukuran cara yang cepat dan efisien untuk menganalisis big data dari berbagai sumber termasuk sistem on premises dan cloud. Ini juga membantu bisnis melakukan kueri data berukuran petabyte dengan menggunakan kemampuan SQL yang ada saat ini, tanpa harus mempelajari bahasa baru.

Presto saat ini umumnya digunakan untuk menjalankan kueri pada Hadoop dan penyedia penyimpanan data umum lainnya, memungkinkan pengguna untuk mengelola banyak bahasa kueri dan antarmuka ke database dan penyimpanan.

Di era digital, analitik big data dengan cepat menjadi kompetensi inti bagi perusahaan terlepas dari ukuran atau industrinya. Kemampuan untuk mengumpulkan, menyimpan, dan menganalisis sejumlah besar data yang berkaitan dengan proses bisnis, preferensi pelanggan, dan tren pasar sangat berharga. Pentingnya Presto untuk analitik data adalah kemampuannya untuk menganalisis data di mana pun data disimpan, dan tanpa harus pindah ke sistem yang lebih terstruktur terlebih dahulu, seperti gudang data atau danau data.

Desain 3D bola yang menggelinding di lintasan

Berita + Insight AI terbaru 


Temukan insight dan berita yang dikurasi oleh para pakar tentang AI, cloud, dan lainnya di Buletin Think mingguan. 

Manfaat Presto

Presto telah menjadi alat yang populer bagi para ilmuwan data dan insinyur yang berurusan dengan berbagai bahasa kueri, database dengan silo, dan berbagai jenis penyimpanan. Kemampuan kinerjanya yang tinggi memungkinkan pengguna untuk meminta data dalam volume besar secara real-time, di mana pun data berada, menggunakan antarmuka ANSI SQL yang sederhana. Kecepatan dan kinerja Presto dalam mengeksekusi kueri pada volume data yang besar telah menjadikannya alat yang sangat diperlukan untuk beberapa perusahaan terbesar di dunia termasuk Facebook, Airbnb, Netflix, Microsoft, Apple (iOS) dan AWS (Athena dan Amazon s3).

Arsitektur Presto unik karena dibuat untuk melakukan kueri data di mana pun data tersebut disimpan, sehingga membuatnya lebih dapat diskalakan dan efisien daripada solusi serupa lainnya. Kueri presto memungkinkan para engineer untuk menggunakan data tanpa harus memindahkannya secara fisik dari satu lokasi ke lokasi lain. Ini adalah kemampuan yang penting untuk dimiliki karena organisasi berurusan dengan jumlah data yang terus meningkat yang perlu mereka simpan dan analisis.

Presto dibangun untuk memberdayakan para ilmuwan data dan teknisi untuk secara interaktif melakukan kueri sejumlah besar data terlepas dari sumber atau jenis penyimpanannya. Karena Presto tidak menyimpan data, melainkan berkomunikasi dengan database terpisah untuk kuerinya, Presto lebih fleksibel daripada pesaingnya dan dapat menskalakan kueri naik atau turun dengan cepat berdasarkan kebutuhan organisasi yang bergeser. Menurut whitepaper IBM, Presto, yang dioptimalkan untuk beban kerja intelijen bisnis (BI), dapat membantu perusahaan mengoptimalkan harga gudang data mereka dan mengurangi biaya hingga 50 persen.

Berikut ini beberapa manfaat utama menggunakan alur kerja Presto:

Biaya yang lebih rendah: Seiring bertambahnya ukuran gudang data dan jumlah pengguna yang melakukan kueri, tidak jarang perusahaan melihat biaya mereka meningkat dengan cepat. Presto, bagaimanapun, dioptimalkan untuk sejumlah besar kueri kecil, membuatnya mudah untuk melakukan kueri sejumlah data sambil juga menekan biaya. Ditambah lagi, karena Presto adalah sumber terbuka, tidak ada biaya yang terkait dengan penerapannya, yang dapat menghasilkan penghematan yang signifikan bagi perusahaan yang ingin memproses volume data yang besar.

Peningkatan skalabilitas: Sudah umum bagi para insinyur untuk menyiapkan beberapa mesin dan bahasa pada satu sistem penyimpanan data lake, yang dapat membuatnya perlu untuk melakukan platform ulang di masa mendatang dan membatasi skalabilitas solusi mereka. Dengan Presto, semua kueri dilakukan menggunakan bahasa dan antarmuka ANSI SQL universal, membuat platform ulang menjadi berlebihan. Selain itu, Presto dapat digunakan untuk data dalam jumlah kecil dan besar dan mudah ditingkatkan dari satu atau dua pengguna menjadi ribuan. PrestoDB menerapkan beberapa mesin komputasi dengan dialek SQL yang unik dan API, menjadikannya alat yang ideal untuk menskalakan beban kerja yang mungkin terlalu rumit dan memakan waktu untuk ditangani oleh tim insinyur dan ilmuwan data.

Performa yang lebih baik: Meskipun banyak mesin kueri yang menjalankan SQL di Hadoop dibatasi dalam performa komputasinya karena dibuat untuk menulis hasilnya ke disk, model in-memory terdistribusi dari Presto memungkinkannya untuk menjalankan kueri interaktif dalam jumlah besar sekaligus terhadap kumpulan data yang besar. Mengikuti desain pemrosesan paralel secara masif (MPP) klasik, Presto menjadwalkan sebanyak mungkin kueri pada satu node pekerja dan menggunakan pengacakan streaming dalam memori untuk meningkatkan kecepatan pemrosesan. Menjalankan tugas dalam memori membuat penulisan dan pembacaan dari disk di antara tahap-tahap menjadi berlebihan dan mempersingkat waktu eksekusi setiap kueri, sehingga Presto menjadi opsi latensi yang lebih rendah daripada pesaingnya.

Fleksibilitas yang lebih baik: Presto menggunakan model plug-and-play untuk semua sumber datanya termasuk Cassandra, Kafka, MySQL, sistem file terdistribusi Hadoop (HDFS), PostgreSQL, dan lainnya, membuat kueri pada semua sumber data ini lebih cepat dan mudah dibandingkan dengan alat lain yang sebanding yang tidak memiliki fungsionalitas ini. Selain itu, arsitektur Presto yang fleksibel berarti tidak terbatas pada satu vendor saja, tetapi dapat berjalan di sebagian besar distribusi Hadoop, menjadikannya salah satu alat yang paling portabel yang tersedia.

Meskipun Presto bukan satu-satunya opsi SQL-on-Hadoop yang tersedia untuk developer dan data engineer, arsitektur uniknya yang memisahkan fungsionalitas kueri dari penyimpanan data menjadikannya salah satu yang paling fleksibel. Tidak seperti alat lain, Presto memisahkan mesin kueri dari penyimpanan data dan menggunakan konektor untuk berkomunikasi di antara keduanya. Fungsionalitas tambahan ini memberikan para insinyur fleksibilitas yang lebih besar daripada alat lain dalam cara mereka membangun solusi menggunakan Presto.

Mixture of Experts | 25 April, episode 52

Decoding AI: Rangkuman Berita Mingguan

Bergabunglah dengan panel insinyur, peneliti, pemimpin produk, dan sosok kelas dunia lainnya selagi mereka mengupas tuntas tentang AI untuk menghadirkan berita dan insight terbaru seputar AI.

Bagaimana cara kerja Presto?

Presto menggunakan sistem manajemen database MPP dengan satu node koordinator yang bekerja bersama-sama dengan node lainnya. Ekosistem Presto terdiri dari tiga jenis server, yaitu server koordinator, server pekerja, dan server pengelola sumber daya.

Koordinator: Seorang koordinator dianggap sebagai "otak" dari instalasi Presto. Koordinator bertanggung jawab untuk beberapa tugas yang paling penting termasuk penguraian pernyataan, merencanakan kueri dan mengelola node pekerja Presto. Pada akhirnya, ia bertanggung jawab untuk mengambil data dari node pekerja dan mengirimkan hasil ke klien.

Pekerja: Pekerja bertanggung jawab untuk mengumpulkan data dari node pekerja dan memastikan kelancaran pertukaran data antara dirinya dan konektor.

Resource manager: Resource manager mengumpulkan data dari semua node koordinator dan pekerja dan membuat tampilan global, atau "Presto cluster".

Ketika SQL server koordinator Presto menerima SQL query dari pengguna, hal pertama yang dilakukannya adalah menggunakan kueri khusus untuk mengurai, merencanakan, dan menjadwalkan rencana terdistribusi di seluruh node lainnya. Presto REST API digunakan untuk mengirimkan pernyataan kueri untuk dieksekusi di server dan mengambil hasilnya bagi klien. Presto mendukung makna ANSI SQL standar, termasuk penggabungan, kueri, sub-kueri, dan agregasi. Setelah menyusun kueri, Presto menguraikan permintaan ke dalam beberapa tahap yang berbeda di antara node pekerja.

Karena Presto dibangun di atas konsep abstraksi data, Presto dapat diperluas ke sumber data apa pun dan dapat dengan mudah melakukan kueri ke sumber data seperti data lake, gudang data, dan database relasional. Abstraksi data adalah proses pemrograman yang memungkinkan data disimpan dan dimanipulasi secara lebih efisien dengan memisahkan representasinya dari penyimpanan fisik. Abstraksi ini memungkinkan mesin kueri untuk fokus secara eksklusif pada aspek data yang relevan dengan kuerinya. Dengan menggunakan proses abstraksi data, data dilakukan kueri di mana pun data tersebut disimpan, bukan setelah data tersebut dipindahkan ke sistem analitik lain.

Sejarah singkat Presto

Awalnya dikembangkan di Facebook untuk menjalankan kueri interaktif pada gudang data Apache Hadoop yang sangat besar, para pengembang Presto selalu membayangkannya sebagai perangkat lunak sumber terbuka dan berusaha membuatnya gratis untuk penggunaan komersial sehingga siapa pun dapat menggunakannya untuk analisis data dan manajemen data. Pada tahun 2013, aplikasi ini tersedia secara sumber terbuka di GitHub untuk diunduh oleh siapa saja di bawah lisensi Perangkat Lunak Apache. Pada tahun 2019, tiga anggota asli tim pengembangan Presto meninggalkan proyek dan mendirikan "fork" Presto yang dikenal sebagai Presto Software Foundation, atau lebih umum, sebagai prestosql.

Yayasan Linux dan komunitas sumber terbuka lainnya menawarkan webinar dan pelatihan tentang Presto dalam bahasa Inggris dan bahasa lainnya untuk para insinyur dan pengembang yang ingin mendapatkan sertifikasi. Forum-forum ini juga merupakan tempat yang baik untuk dikunjungi untuk mengetahui apa yang baru di Presto.

Contoh penggunaan Presto

Presto memungkinkan organisasi untuk melakukan kueri terhadap repositori data berskala besar dan database NoSQL dengan cepat dan efisien untuk berbagai tujuan bisnis. Berikut adalah beberapa contoh penggunaan yang paling umum:

Kueri ad-hoc

Presto memungkinkan eksplorasi data yang cepat dan pelaporan langsung untuk berbagai tujuan bisnis. Menggunakan konektor Presto populer, seperti Hive, MongoDB atau Cassandra, pengguna dapat menanyakan data yang mereka minati dan mendapatkan hasil dalam hitungan detik. Dengan kecepatan dan fleksibilitasnya, Presto memberdayakan pengguna untuk mengulangi dan mengeksplorasi lebih lanjut kumpulan data, di mana pun mereka berada.

Berikut ini adalah beberapa repositori data yang paling banyak digunakan yang dapat dihubungkan dengan Presto:

  • BigQuery
  • HDFS
  • Penyimpanan Cloud
  • Cloud SQL untuk MySQL
  • Apache Cassandra atau Kafka
Penerapan cloud dan cloud hybrid

Menurut penilaian kinerja tahun 2021 oleh RedHat, meningkatnya penggunaan lingkungan cloud hybrid oleh perusahaan memberikan tekanan yang meningkat pada penyimpanan cloud native, di mana Presto, "mesin kueri terdistribusi tercepat yang tersedia saat ini" sangat ideal. 1 Memindahkan beban kerja dari lingkungan lokal ke infrastruktur cloud atau cloud hybrid memiliki banyak manfaat, termasuk peningkatan performa dan skalabilitas. Arsitektur Presto membuatnya pilihan yang kuat untuk penerapan seperti itu karena dapat diluncurkan dalam beberapa menit tanpa penyediaan, konfigurasi atau penyetelan tambahan.

Machine Learning (ML)

Presto membantu para insinyur menyiapkan data dan melakukan rekayasa dan ekstraksi fitur dengan cara yang sangat efisien yang memastikan data siap untuk machine learning (ML). Jumlah konektor, mesin SQL dan kemampuan kueri menjadikannya ideal bagi para insinyur yang mencari akses cepat dan mudah ke volume data yang besar. Selain itu, Presto memiliki alat yang dirancang khusus untuk fungsi ML seperti agregasi, yang memungkinkan para ilmuwan data untuk melatih pengklasifikasi dan regressor mesin vektor pendukung (SVM) untuk mengatasi masalah pembelajaran yang diawasi.

Pelaporan

Presto memungkinkan data untuk ditanyakan dari berbagai sumber yang menghasilkan satu laporan atau dasbor yang mudah diakses untuk tujuan BI. Presto sederhana dan cukup mudah digunakan sehingga analis dapat melakukan kueri dan membuat laporan tanpa bantuan teknisi.

Analytics

Presto memungkinkan analis untuk melakukan kueri pada data terstruktur dan tidak terstruktur secara langsung pada data lake tanpa melalui proses transformasi data.

Persiapan data

Proses pengumpulan dan penyiapan data bisa jadi mahal dan tidak efisien. Ilmuwan data dapat menghabiskan waktu berjam-jam setiap harinya untuk mengumpulkan dan menyiapkan data sebelum data tersebut dianalisis. Presto mengotomatiskan proses ini dengan kecepatan dan akurasi sehingga para ilmuwan data dan insinyur dapat memfokuskan lebih banyak waktu mereka pada tugas-tugas yang bernilai lebih tinggi.

Solusi terkait
Perangkat lunak dan solusi database

Gunakan solusi database IBM untuk memenuhi berbagai kebutuhan beban kerja di hybrid cloud.

Jelajahi solusi database
Database cloud native dengan IBM Db2

Jelajahi IBM Db2, database relasional yang menghadirkan kinerja tinggi, skalabilitas, dan keandalan untuk menyimpan dan mengelola data terstruktur. Database ini tersedia sebagai SaaS di IBM Cloud atau untuk hosting mandiri.

Jelajahi Db2
Layanan konsultasi data dan analitik

Buka nilai data perusahaan dengan IBM Consulting, membangun organisasi berbasis insight yang memberikan keuntungan bisnis.

Temukan layanan analitik
Ambil langkah selanjutnya

Gunakan solusi database IBM untuk memenuhi berbagai kebutuhan beban kerja di hybrid cloud.

Jelajahi solusi database Jelajahi IBM Db2