Polyglot Persistence pada Database
Persistensi Polyglot (Polyglot Persistence) mengacu pada praktik penggunaan beberapa teknologi penyimpanan data (yaitu database) untuk kebutuhan aplikasi yang berbeda. Pendekatan ini mengakui bahwa jenis data yang berbeda mungkin memiliki persyaratan penyimpanan yang berbeda dan oleh karena itu mungkin lebih cocok untuk jenis database tertentu.
Konsep persistensi polyglot muncul sebagai tanggapan atas keterbatasan sistem manajemen basis data relasional tradisional (RDBMS). RDBMS telah menjadi teknologi basis data yang dominan selama beberapa dekade, tetapi persyaratan struktural dan skema yang kaku masih dapat menimbulkan masalah untuk aplikasi yang perlu menyimpan berbagai jenis data. Polyglot Persistence menawarkan pendekatan alternatif dengan memungkinkan pengembang memilih database yang paling tepat untuk setiap tipe data.
Misalnya, aplikasi dapat menggunakan database relasional untuk menyimpan data terstruktur, seperti profil pengguna dan transaksi, sementara menggunakan database berbasis dokumen untuk menyimpan data tidak terstruktur, seperti posting blog atau komentar. Dengan menggunakan database yang berbeda untuk jenis data yang berbeda, aplikasi dapat memanfaatkan kekuatan setiap database dan menghindari pemaksaan semua data ke dalam satu skema atau model data.
Polyglot Persistence, yang diperkenalkan Martin Fowler pada tahun 2012. Dia mengatakan bukan hanya menanyakan database relasional karena itulah yang dilakukan semua orang. Kita perlu memahami data apa yang kita kendalikan dan bagaimana kita ingin memprosesnya. Hasilnya adalah sebagian besar organisasi memiliki campuran repositori data. Teknologi untuk kondisi berbeda dan prediksi 11 tahun lalu itu menjadi kenyataan. Dan saat ini, di sebagian besar organisasi besar dan kompleks, informasi ini biasa disimpan dengan cara tertentu. Itu telah menjadi inspirasi besar bagi banyak arsitek data dan saya pribadi merekomendasikannya bahkan ketika ada banyak teknologi yang terlibat. Karena teknologi noSQL telah berkembang pesat dan menjadi arus utama, database yang berbeda telah dikembangkan untuk menyelesaikan masalah yang berbeda. Dan kita harus mengakui bahwa penerapannya rumit. Aplikasi yang kompleks melibatkan berbagai masalah. Ini akan menjadi ilusi untuk membayangkan bahwa ada satu model memori yang cocok untuk semua. Dan sekarang, jika tidak memanfaatkan teknologi yang tersedia di cloud akan menjadi peluang yang terlewatkan. Intinya adalah bahwa tidak semua masalah dapat diselesaikan secara elegan dengan memilih database sebagai alat terbaik untuk setiap kasus penggunaan.
*RDBMS: Relational Database Management System
Reference:
- https://www.dataversity.net/will-2023-be-the-year-of-the-polyglot-persistence/
- https://www.dbta.com/Categories/Database-Management-334.aspx
- https://martinfowler.com/bliki/PolyglotPersistence.html
- https://www.researchgate.net/publication/332491992_A_Review_of_Polyglot_Persistence_in_the_Big_Data_World
- https://www.baqend.com/paper/btw-polyglot.pdf
- https://thesai.org/Publications/ViewPaper?Volume=13&Issue=5&Code=IJACSA&SerialNo=99