Paypal Rilis JunoDB sebagai Distributed Key-Value Store Open-Source

PayPal, sebuah perusahaan fintech global, baru-baru ini secara terbuka membagikan JunoDB, sebuah distributed key-value store yang dibangun di atas RocksDB. JunoDB memproses 350 miliar permintaan setiap harinya. JunoDB adalah suatu database yang sangat tersedia dan fokus pada keamanan yang digunakan PayPal untuk hampir semua layanan backend kritisnya, termasuk otentikasi, penilaian risiko, dan penyelesaian transaksi.

JunoDB juga dapat mengelola banyak pengguna dan koneksi secara bersamaan tanpa mengalami penurunan kinerja. Awalnya dibangun dalam bahasa pemrograman C++ single-threaded, JunoDB telah ditulis ulang dalam bahasa Golang untuk memanfaatkan pemrosesan paralel dan banyak inti. Arsitektur JunoDB adalah sistem yang dapat diandalkan dan dapat diperluas, yang memprioritaskan kemudahan penggunaan, skalabilitas, keamanan, dan fleksibilitas. Desain berbasis proxy menyederhanakan pengembangan dengan mengabstraksi logika dan pengaturan yang kompleks dari aplikasi dan memungkinkan skalabilitas koneksi horizontal linear. JunoDB menggunakan hashing yang konsisten untuk membagi data dan mengurangi jumlah data yang harus dipindahkan ketika memperluas atau mengontraksi cluster. JunoDB menggunakan protokol berbasis kuorum dan dua tahap untuk menjamin konsistensi data dan memastikan tidak ada waktu tidak aktif untuk database.

Dalam hal keamanan, JunoDB mendukung TLS dan enkripsi payload. Kemampuan fleksibilitas dan adaptasi JunoDB dijamin oleh desain mesin penyimpanan yang dapat dipasang, yang memudahkan beralih ke teknologi penyimpanan baru seiring dengan tersedianya.

Keuntungan JunoDB

Manfaat utama menggunakan JunoDB sebagai database adalah karena JunoDB merupakan database yang sangat tersedia dan fokus pada keamanan, yang dapat mengelola banyak pengguna dan koneksi secara bersamaan tanpa mengalami penurunan kinerja. Selain itu, keuntungan lain dari JunoDB adalah kemampuan fleksibilitas dan adaptasi dengan menyediakan mesin penyimpanan yang dapat dipasang dan mudah beralih ke teknologi penyimpanan baru seiring dengan tersedianya.

Dalam konteks pengembangan aplikasi, JunoDB memudahkan pengembangan dengan mengabstraksi logika dan pengaturan yang kompleks dari aplikasi dan memungkinkan skalabilitas koneksi horizontal linear. Dalam hal ketersediaan, JunoDB menggunakan protokol berbasis kuorum dan dua tahap untuk menjamin konsistensi data dan memastikan tidak ada waktu tidak aktif untuk database. Dalam hal performa, JunoDB menyediakan kinerja yang cepat walaupun dalam skala besar, dengan waktu respon dalam kisaran milidetik dan tanpa mengganggu pengalaman pengguna.

Penggunaan JunoDB pada PayPal

PayPal menggunakan JunoDB sebagai database untuk hampir semua layanan backend kritisnya, termasuk otentikasi, penilaian risiko, dan penyelesaian transaksi. JunoDB memungkinkan data untuk di-cache dan diakses dengan cepat dari aplikasi, mengurangi beban pada layanan backend dan database relasional.

Dalam hal pengembangan aplikasi, PayPal menggunakan JunoDB untuk memudahkan pengembangan dengan mengabstraksi logika dan pengaturan yang kompleks dari aplikasi dan memungkinkan skalabilitas koneksi horizontal linear. Dalam hal ketersediaan, PayPal menggunakan JunoDB untuk memastikan tidak ada waktu tidak aktif untuk database dengan protokol berbasis kuorum dan dua tahap. Dalam hal performa, PayPal menggunakan JunoDB untuk menyediakan kinerja yang cepat walaupun dalam skala besar, dengan waktu respon dalam kisaran milidetik dan tanpa mengganggu pengalaman pengguna.

Dalam pengembangan masa depan, PayPal berencana untuk menyertakan klien Golang dan operator JunoDB untuk Kubernetes. Pengembangan ini akan memudahkan penggunaan JunoDB pada lingkungan Kubernetes dan mempermudah integrasi dengan program-program yang dibangun menggunakan bahasa pemrograman Golang.

Dalam kesimpulannya, JunoDB merupakan solusi database yang sangat tersedia dan fokus pada keamanan, yang memungkinkan pengolahan data dengan cepat dan responsif, serta dapat mengelola banyak pengguna dan koneksi secara bersamaan tanpa mengalami penurunan kinerja. PayPal, sebagai perusahaan fintech global, menggunakan JunoDB untuk hampir semua layanan backend kritisnya, dan berencana untuk mengembangkan lebih lanjut dengan menyertakan klien Golang dan operator JunoDB untuk Kubernetes.

Disarikan dari: Citation