Apa itu Migrasi Basis Data?
Apa itu Migrasi Basis Data?
Migrasi basis data adalah proses pemindahan basis data dari satu lingkungan ke lingkungan lainnya. Saat perusahaan berusaha untuk memodernisasi aplikasi mereka, mereka memindahkan basis data yang terkait dari server on-premise ke cloud.
Migrasi basis data ke cloud membuat perusahaan untuk meningkatkan keandalan layanan, skalabilitas, dan kinerja. Selain itu, migrasi data ke cloud dapat mengurangi biaya infrastruktur yang terkait dengan pemeliharaan pusat data on-premise.
Memindahkan volume data ke cloud sangat penting untuk memastikan integritas data, kepatuhan, dan kelangsungan bisnis. Pertimbangkan hal berikut.
Anggaran
Migrasi data melibatkan tugas-tugas seperti audit data, pemetaan, pengujian, dan pemantauan pasca-migrasi. Terkadang, aplikasi yang mengakses basis data memerlukan modifikasi sebelum dapat membaca data dari basis data yang telah dipindahkan. Perusahaan harus mengalokasikan anggaran untuk waktu, biaya, dan sumber daya yang diperlukan untuk tugas-tugas tersebut.
Waktu henti
Saat melakukan migrasi basis data, rencanakan waktu henti saat beralih antara sumber dan tujuan. Meskipun waktu henti nol tidak mungkin dicapai, Anda dapat meminimalkan gangguan bisnis dengan merencanakan migrasi dan menggunakan alat migrasi basis data yang sesuai. Misalnya, Anda dapat menguji basis data cloud jauh sebelum migrasi untuk memastikan keandalan aplikasi dan keakuratan data.
Sistem sumber dan sistem tujuan
Transfer homogen memindahkan data dari sistem sumber ke sistem tujuan yang menggunakan mesin basis data serupa. Sebaliknya, perpindahan data ke platform target yang berbeda disebut sebagai transfer heterogen. Sebagai contoh, memigrasikan basis data MySQL ke basis data MySQL adalah migrasi homogen, sedangkan memindahkan Postgres SQL ke Amazon Aurora adalah migrasi heterogen. Transfer homogen lebih sederhana karena basis data dapat dipindahkan ke tujuan tanpa perlu manipulasi tambahan. Namun, jika migrasi heterogen terlibat, arsitek basis data harus membersihkan dan mentransformasi data sebelum mentransfernya.
Jenis Migrasi
Migrasi basis data dapat berupa jenis-jenis berikut.
- Migrasi parsial hanya memindahkan sebagian dari seluruh set data dari basis data asli ke cloud.
- Migrasi basis data yang lengkap memindahkan semua data dari platform sumber ke platform tujuan.
Setelah salah satu transfer selesai, basis data sumber akan terputus dari aplikasi. Jenis migrasi lainnya adalah migrasi berkelanjutan atau replikasi data. Ini menyalin data dari basis data sumber ke basis data tujuan secara terus-menerus.
Apa saja jenis-jenis migrasi basis data?
Sebelum melakukan migrasi, pertimbangkan jenis migrasi mana yang paling sesuai dengan kebutuhan Anda.
Migrasi offline
Migrasi offline cocok untuk memindahkan basis data yang tidak penting dan dapat mentoleransi waktu henti yang signifikan. Saat melakukan migrasi offline, Anda harus menghentikan aplikasi dari menulis ke basis data selama periode tertentu. Jeda waktu memungkinkan arsitek basis data untuk memindahkan basis data ke cloud dan memodifikasi aplikasi. Biasanya, perusahaan memilih migrasi offline saat memodernisasi sistem warisan yang tidak didukung oleh alat migrasi cloud. Demikian pula, migrasi basis data offline sangat cocok untuk proyek pengujian dan pengembangan di mana pembaruan data yang tepat waktu tidak menjadi prioritas utama.
Mari kita ambil contoh migrasi database Oracle yang berada di lingkungan on-premise ke Amazon RDS for Oracle. Meskipun dihosting di infrastruktur yang berbeda, kedua basis data tersebut menggunakan mesin yang sama. Oleh karena itu, proses migrasi data cukup sederhana, seperti yang kami jelaskan di bawah ini.
Langkah 1 — Membangun koneksi jaringan
Hubungkan basis data on-premise ke AWS cloud menggunakan jaringan yang aman. Anda dapat menyiapkan jaringan pribadi virtual atau menggunakan AWS Direct Connect untuk mengaktifkan konektivitas dari on-premise ke cloud. Dengan AWS Direct Connect, Anda dapat menghubungkan basis data secara langsung tanpa harus melewati internet publik.
Langkah 2 — Hentikan penulisan aplikasi
Untuk mencegah perubahan yang tidak terduga pada basis data tujuan, hentikan aplikasi dari menulis ke basis data sumber.
Langkah 3 — Transfer data dari on-prem ke cloud
Selanjutnya, deploy alat transfer data asli pada server cloud. Untuk mengurangi biaya, kami merekomendasikan untuk menyiapkan alat-alat tersebut di Amazon EC2. Dengan cara ini, Anda hanya membayar untuk sumber daya yang digunakan untuk menjalankan alat basis data asli. Kemudian, alat-alat tersebut digunakan untuk mengekstrak data dari basis data sumber dan memulihkannya ke basis data awan.
Langkah 4 — Melakukan peralihan basis data
Setelah memindahkan seluruh basis data ke cloud, validasi basis data tersebut untuk memastikan konsistensi data. Kemudian, alihkan semua permintaan data dari aplikasi ke basis data baru.
Migrasi beban kerja produksi
Migrasi beban kerja produksi memerlukan pendekatan yang berbeda dibandingkan dengan pemindahan basis data yang tidak kritis. Beban kerja produksi dan sumber data nya tidak dapat dimatikan. Pengguna harus dapat mengakses layanan seperti biasa, bahkan saat transfer data sedang berlangsung. Oleh karena itu, perencanaan yang matang dan koordinasi yang baik diperlukan untuk memastikan migrasi dapat dilakukan tanpa menghentikan operasi aplikasi.
Arsitek menggunakan skrip buatan sendiri atau alat replikasi data pihak ketiga untuk migrasi basis data untuk beban kerja produksi. Skrip atau alat tersebut menyalin data dari basis data on-premise ke basis data cloud. Selama proses replikasi data berlangsung, basis data on-premise tetap beroperasi.
Tantangan muncul ketika pengembang perangkat lunak merevisi skrip untuk mengakomodasi persyaratan data baru dan yang sedang berlangsung. Selain itu, alat basis data pihak ketiga yang mereka gunakan mungkin memerlukan pembaruan untuk migrasi basis data yang berhasil.
Penggandaan basis data online
Menggandakan basis data melibatkan penulisan skrip yang mengatur skema basis data di mesin basis data baru, kemudian mentransfer data dari basis data sumber ke basis data tujuan. Skema berisi definisi untuk menyimpan dan mengatur data dalam basis data yang terhubung. Insinyur dapat menggunakan alat replikasi data pihak ketiga untuk membuat dan memelihara beberapa salinan data di berbagai server. Kedua pendekatan tersebut sama-sama menantang karena keduanya memerlukan intervensi manual yang signifikan, rentan terhadap kesalahan, dan dapat tidak efisien.
Jika Anda ingin cara yang lebih efisien dan aman untuk migrasi basis data secara online, pertimbangkan AWS Database Migration Service (DMS). Ini adalah layanan cloud yang mengotomatisasi migrasi basis data di berbagai mesin basis data. Alih-alih melakukan penulisan skrip secara manual untuk transfer data, Anda dapat menggunakan DMS untuk secara otomatis memindai skema basis data asli dan membuat skema baru untuk basis data tujuan. Hal ini membuat pengembang untuk fokus pada pengembangan aplikasi inovatif daripada mengelola basis data yang rumit.
Di bawah ini, kami berbagi cara untuk menggandakan basis data on-premise Anda ke cloud.
Langkah 1 — Inventarisasi data yang ada
Analisis basis data yang saat ini dihosting di on-premise. Untuk mempercepat proses, gunakan AWS DMS Fleet Advisor. Alat ini menganalisis basis data dan server analitik yang ada, serta mengidentifikasi jalur migrasi yang potensial. Ini juga mengumpulkan data kinerja, skema, pola penggunaan, dan metrik lainnya.
Langkah 2 — Pindahkan basis data ke cloud
Gunakan AWS DMS untuk memigrasikan seluruh basis data dari pusat data on-premise ke cloud. Selain itu, Anda dapat mengaktifkan mode penangkapan perubahan data (CDC) DMS untuk memfasilitasi penggandaan data secara hampir waktu nyata. Dengan CDC, DMS menangkap perubahan data saat terjadi pada basis data asli dan menerapkan perubahan tersebut ke semua basis data replika.
Refaktor basis data
Dalam beberapa kasus, strategi migrasi basis data melibatkan refaktor atau transfer heterogen. Perusahaan melakukan refaktorisasi basis data saat memodernisasi aplikasi karena beberapa alasan, termasuk mengurangi biaya lisensi, mengakses kemampuan cloud, dan meningkatkan kualitas data. Dalam migrasi heterogen, informasi yang disimpan dalam basis data sumber tidak dapat dipindahkan secara langsung. Data harus dibersihkan, diubah, dan disusun sesuai dengan skema baru yang didukung oleh basis data tujuan.
Berikut adalah langkah-langkah yang membantu Anda melakukan refactor basis data.
Langkah 1 — Audit basis data
Analisis basis data on-premise dan identifikasi skema yang digunakan untuk menyimpan data. Rencanakan cara penyimpanan data saat ini dalam basis data baru. Terkadang, refaktor basis data melibatkan penggabungan beberapa basis data menjadi satu atau mendistribusikan data dari satu basis data ke beberapa basis data.
Langkah 2 — Ubah skema basis data
Ubah skema yang dikompilasi dari basis data sumber ke dalam format yang diperlukan untuk basis data tujuan. Anda dapat menggunakan AWS DMS Schema Conversion untuk mempermudah proses tersebut.
Catatan: Insinyur basis data mungkin perlu membuat atau memodifikasi skema baru secara manual, terutama untuk set data yang sangat rumit.
Langkah 3 — Mulai migrasi basis data
Migrasikan data dari on-premise ke basis data cloud dengan AWS DMS. Untuk memastikan basis data cloud mencatat semua perubahan selama migrasi, aktifkan mode CDC. Setelah mentransfer semua data, alihkan layanan aplikasi ke basis data cloud.
Bagaimana dukungan AWS dapat menunjang kebutuhan migrasi basis data Anda?
Bisnis memigrasikan basis data ke cloud untuk mengurangi biaya infrastruktur, meningkatkan keandalan layanan, dan memanfaatkan kemampuan cloud lainnya. Migrasi basis data dapat sesederhana memindahkan seluruh basis data apa adanya atau membangun ulang seluruh skema untuk memenuhi persyaratan data baru. Terlepas dari rumitnya migrasi, memastikan data dipindahkan dengan aman, akurat, dan tepat waktu adalah hal yang penting. Jelajahi AWS Database Migration Service untuk alat yang dikelola yang memungkinkan peralihan hampir secara waktu nyata, analisis basis data, transfer data otomatis, dan fitur lainnya.