Penguncian vendor didefinisikan sebagai "Penguncian eksklusif atau penguncian pelanggan, yang membuat pelanggan bergantung pada vendor untuk produk dan layanan mereka; tidak dapat menggunakan vendor lain tanpa biaya yang besar" ( wikipedia). Tidak dapat disangkal bagi banyak perusahaan perangkat lunak yang akan menjadi model bisnis yang diinginkan. Tapi apakah itu baik untuk pelanggan mereka?
Basis data berpemilik memiliki dukungan besar untuk migrasi dari solusi perangkat lunak basis data populer lainnya. Namun, itu hanya akan menyebabkan vendor lain terkunci. Apakah kemudian open source solusi?
Karena keterbatasan, open source telah bertahun-tahun lalu banyak memilih solusi database yang mahal. Sayangnya, bagi banyak sumber terbuka bukanlah pilihan.
Bahkan selama bertahun-tahun, database open-source telah mendapatkan dukungan dan kematangan Enterprise untuk menjalankan sistem transaksi data yang kritis dan kompleks.
Dengan database versi baru seperti Percona dan MariaDB telah menambahkan beberapa fitur baru yang hebat, baik kompatibilitas atau kebutuhan perusahaan seperti dukungan 24/7, keamanan, audit, pengelompokan, pencadangan online, atau pemulihan cepat. Semua itu membuat proses migrasi lebih mudah diakses daripada sebelumnya.
Migrasi mungkin merupakan langkah yang bijaksana, namun ada risikonya. Baik Anda berencana untuk bermigrasi dari kepemilikan ke migrasi dukungan terbuka secara manual atau dengan bantuan alat komersial untuk mengotomatiskan seluruh proses migrasi, Anda perlu mengetahui semua kemungkinan hambatan dan metode yang terlibat dalam proses dan validasi hasil.
Mengubah sistem database juga merupakan waktu yang tepat untuk mempertimbangkan risiko penguncian vendor lebih lanjut. Selama proses migrasi, Anda mungkin berpikir tentang cara menghindari terkunci dengan beberapa teknologi. Dalam artikel ini, kita akan fokus pada beberapa aspek utama dari penguncian vendor MySQL dan MariaDB.
Menghindari Lock-in untuk Pemantauan Database
Pengguna database open source sering kali harus menggunakan campuran alat dan skrip buatan sendiri untuk memantau lingkungan database produksi mereka. Namun, meskipun memiliki skrip buatan sendiri dalam solusi, sulit untuk mempertahankannya dan mengikuti fitur database baru.
Semoga ada banyak alat pemantauan gratis yang menarik untuk MySQL/MariaDB. Alat gratis yang paling direkomendasikan DBA adalah PMM, Zabbix, ClusterControl Community Edition, plugin Nagios MySQL. Meskipun PMM dan ClusterControl adalah solusi database khusus.
Percona Monitoring and Management (PMM) adalah solusi sumber terbuka sepenuhnya untuk mengelola kinerja platform MySQL dan menyetel kinerja kueri. PMM adalah solusi lokal yang mempertahankan semua kinerja dan data kueri Anda di dalam lingkungan Anda. Anda dapat menemukan demo PMM di bawah tautan di bawah ini.
Alat pemantauan server tradisional tidak dibuat untuk arsitektur basis data terdistribusi modern. Sebagian besar basis data produksi saat ini berjalan dalam beberapa penyiapan ketersediaan tinggi - mulai dari replikasi master-slave yang lebih mudah hingga kluster multi-master yang didukung oleh penyeimbang beban yang berlebihan. Tim operasi menangani lusinan, seringkali ratusan layanan yang membentuk lingkungan basis data.
Memiliki beberapa sistem basis data berarti organisasi Anda akan menjadi lebih gesit di sisi pengembangan dan memungkinkan pilihan untuk pengembang, tetapi juga membebankan pengetahuan tambahan di sisi operasi. Memperluas infrastruktur Anda dari hanya MySQL hingga menerapkan backend penyimpanan lain seperti MongoDB dan PostgreSQL, menyiratkan bahwa Anda juga harus memantau, mengelola, dan menskalakannya. Karena setiap backend penyimpanan unggul dalam kasus penggunaan yang berbeda, ini juga berarti Anda harus menemukan kembali roda untuk setiap kasus penggunaan.
ClusterControl dirancang untuk menangani penyiapan basis data modern yang sangat terdistribusi berdasarkan replikasi atau kekelompokan. Ini menunjukkan status seluruh solusi cluster namun dapat sangat digunakan untuk satu contoh. ClusterControl akan menunjukkan kepada Anda banyak metrik lanjutan, namun Anda juga dapat menemukan penasihat bawaan yang akan membantu Anda memahaminya. Anda dapat menemukan demo ClusterControl di bawah tautan di bawah ini.
Menghindari Lock-in untuk Solusi Pencadangan Database
Ada beberapa cara untuk mengambil cadangan, tetapi metode mana yang sesuai dengan kebutuhan spesifik Anda? Bagaimana cara menerapkan pemulihan titik dalam waktu?
Jika Anda bermigrasi dari Oracle atau SQL Server, kami ingin merekomendasikan Anda alat xtrabackup dari Percona atau mariabackup serupa dari Mark.
Percona XtraBackup adalah perangkat lunak pencadangan panas MySQL/MariaDB sumber terbuka paling populer yang melakukan pencadangan tanpa pemblokiran untuk basis data InnoDB dan XtraDB. Itu termasuk dalam kategori cadangan fisik, yang terdiri dari salinan persis direktori data MySQL dan file di bawahnya.
XtraBackup tidak mengunci database Anda selama proses pencadangan. Untuk database besar (100+ GB), ini memberikan waktu pemulihan yang jauh lebih baik dibandingkan dengan mysqldump. Proses pemulihan melibatkan penyiapan data MySQL dari file cadangan, sebelum mengganti atau mengalihkannya dengan direktori data saat ini pada node target.
Menghindari Lock-in untuk Ketersediaan dan Skalabilitas Tinggi Basis Data
Dikatakan bahwa jika Anda tidak mendesain untuk kegagalan, maka Anda sedang menuju crash. Bagaimana Anda membuat sistem database dari bawah ke atas untuk menahan kegagalan? Ini bisa menjadi tantangan karena kegagalan terjadi dalam berbagai cara, terkadang dengan cara yang sulit dibayangkan. Ini adalah konsekuensi dari kompleksitas lingkungan database saat ini.
Clustering adalah fitur mahal dari database seperti Oracle dan SQL Server. Ini membutuhkan lisensi tambahan.
Galera Cluster adalah opsi utama untuk MySQL dan MariaDB dengan ketersediaan tinggi. Dan meskipun telah memantapkan dirinya sebagai pengganti yang kredibel untuk arsitektur master-slave MySQL tradisional, itu bukan pengganti drop-in.
Galera Cluster adalah teknologi clustering database aktif-aktif sinkron untuk MySQL dan MariaDB. Galera Cluster berbeda dari apa yang dikenal sebagai Oracle's MySQL Cluster - NDB. Cluster MariaDB didasarkan pada plugin replikasi multi-master yang disediakan oleh Codership.
Meskipun Galera Cluster memiliki beberapa karakteristik yang membuatnya tidak cocok untuk kasus penggunaan tertentu, sebagian besar aplikasi masih dapat disesuaikan untuk dijalankan di dalamnya.
Manfaatnya jelas:penyiapan InnoDB multi-master dengan failover bawaan dan skalabilitas baca.
Menghindari Lock-in untuk Database Load Balancing
Proxy adalah blok penyusun penyiapan ketersediaan tinggi untuk MySQL. Mereka dapat mendeteksi node yang gagal dan merutekan kueri ke host yang masih tersedia. Jika master Anda gagal dan Anda harus mempromosikan salah satu budak Anda, proxy akan mendeteksi perubahan topologi tersebut dan mengarahkan lalu lintas Anda sesuai dengan itu.
Proxy yang lebih canggih dapat melakukan lebih banyak hal, seperti merutekan lalu lintas berdasarkan aturan kueri yang tepat, kueri cache, atau mencerminkannya. Mereka bahkan dapat digunakan untuk mengimplementasikan berbagai jenis sharding.
Yang paling berguna adalah ProxySQL, HAproxy, MaxScale (penggunaan gratis terbatas).
Menghindari Lock-in Saat Bermigrasi ke Cloud
Dalam sepuluh tahun terakhir, banyak bisnis telah beralih ke teknologi berbasis cloud untuk menghindari keterbatasan anggaran untuk pusat data dan pengembangan perangkat lunak yang gesit. Memanfaatkan awan memungkinkan perusahaan dan aplikasi Anda memperoleh keuntungan dari penghematan biaya dan keserbagunaan yang berasal dari komputasi awan.
Meskipun solusi cloud menawarkan banyak keuntungan bagi perusahaan, solusi tersebut tetap menimbulkan beberapa risiko. Misalnya, penguncian vendor di cloud sama tingginya dengan di pusat data.
Karena semakin banyak perusahaan menjalankan beban kerja mereka di cloud, layanan database cloud semakin banyak digunakan untuk mengelola data. Salah satu keuntungan menggunakan layanan basis data cloud daripada memelihara basis data Anda adalah bahwa hal itu mengurangi biaya manajemen. Layanan database dari vendor cloud terkemuka memiliki banyak kesamaan, tetapi mereka memiliki karakteristik individual yang mungkin membuatnya cocok atau tidak sesuai dengan beban kerja Anda.
Model Hibrida Hosting Basis Data
Seiring semakin banyak perusahaan yang beralih ke cloud, model hybrid sebenarnya menjadi lebih populer. Model hybrid dipandang sebagai model yang aman bagi banyak bisnis.
Faktanya, melakukan transplantasi jantung dan memindahkan semuanya dengan segera adalah hal yang menantang. Banyak perusahaan yang melakukan migrasi lambat yang biasanya memakan waktu satu tahun atau bahkan mungkin selamanya sampai semuanya dimigrasikan. Langkah itu harus dilakukan dalam perdamaian yang dapat diterima.
Model hibrid tidak hanya memungkinkan Anda membangun sistem skalabel yang sangat tersedia tetapi karena sifatnya merupakan langkah pertama yang bagus untuk menghindari penguncian. Dengan desain arsitektur, sistem Anda akan bekerja dalam mode campuran.
Contoh arsitektur tersebut dapat berupa cluster yang beroperasi di pusat data internal dan salinannya terletak di cloud.
Kesimpulan
Migrasi dari basis data berpemilik ke sumber terbuka dapat memberikan beberapa manfaat:biaya kepemilikan yang lebih rendah, akses ke dan penggunaan mesin basis data sumber terbuka, integrasi yang erat dengan web. Sumber terbuka memiliki banyak hal untuk ditawarkan dan karena sifatnya adalah pilihan yang bagus untuk menghindari penguncian vendor.