Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memigrasi database Oracle lokal ke Amazon OpenSearch Service menggunakan Logstash
Aditya Goteti, Amazon Web Services
Ringkasan
Pola ini menjelaskan cara memindahkan data dari database Oracle lokal ke Amazon OpenSearch Service menggunakan Logstash. Ini mencakup pertimbangan arsitektur dan beberapa keahlian dan rekomendasi yang diperlukan. Data dapat dari satu tabel atau dari beberapa tabel di mana pencarian teks lengkap perlu dilakukan.
OpenSearch Layanan dapat dikonfigurasi dalam virtual private cloud (VPC), atau dapat ditempatkan secara publik dengan pembatasan berbasis IP. Pola ini menjelaskan skenario di mana OpenSearch Layanan dikonfigurasi dalam VPC. Logstash digunakan untuk mengumpulkan data dari database Oracle, menguraikannya ke format JSON, dan kemudian memasukkan data ke dalam Layanan. OpenSearch
Prasyarat dan batasan
Prasyarat
Akun AWS yang aktif
Java 8 (diperlukan oleh Logstash 6.4.3)
Konektivitas antara server database lokal dan instans Amazon Elastic Compute Cloud EC2 (Amazon) dalam VPC, dibuat menggunakan AWS Virtual Private Network (AWS VPN)
Sebuah query untuk mengambil data yang diperlukan untuk didorong ke OpenSearch Service dari database
Driver Konektivitas Database Oracle Java (JDBC)
Batasan
Logstash tidak dapat mengidentifikasi catatan yang dihapus dari database
Versi produk
Oracle Database 12c
OpenSearch Layanan 6,3
Logstash 6.4.3
Arsitektur
Tumpukan teknologi sumber
Database Oracle lokal
AWS VPN lokal
Tumpukan teknologi target
VPC
EC2 contoh
OpenSearch Layanan
Logstash
NAT Gateway (untuk pembaruan sistem operasi pada EC2 instance dan untuk menginstal Java 8, Logstash, dan plugin)
Arsitektur migrasi data

Alat
Logstash 6.4.3
Plugin masukan JDBC (unduh dan informasi lebih lanjut
) Oracle JDBC driver
Epik
| Tugas | Deskripsi | Keterampilan yang dibutuhkan |
|---|---|---|
Identifikasi ukuran data sumber. | Ukuran data sumber adalah salah satu parameter yang Anda gunakan untuk menentukan jumlah pecahan yang akan dikonfigurasi dalam indeks. | DBA, Pengembang basis data |
Menganalisis tipe data dari setiap kolom dan data yang sesuai. | OpenSearch Layanan secara dinamis memetakan tipe data ketika bidang yang sebelumnya tidak terlihat ditemukan dalam dokumen. Jika ada tipe atau format data tertentu (misalnya, bidang tanggal) yang perlu dideklarasikan secara eksplisit, identifikasi bidang dan tentukan pemetaan untuk bidang tersebut selama pembuatan indeks. | Pemilik aplikasi, Pengembang, Pengembang Basis Data |
Tentukan apakah ada kolom dengan kunci primer atau unik. | Untuk menghindari duplikasi catatan di OpenSearch Layanan Amazon selama pembaruan atau penyisipan, Anda perlu mengkonfigurasi | Pemilik aplikasi, Pengembang |
Analisis jumlah dan frekuensi catatan baru yang ditambahkan; periksa seberapa sering catatan dihapus. | Tugas ini diperlukan untuk memahami tingkat pertumbuhan data sumber. Jika data dibaca secara intensif dan penyisipan jarang terjadi, Anda dapat memiliki satu indeks. Jika catatan baru sering dimasukkan dan tidak ada penghapusan, ukuran pecahan dapat dengan mudah melebihi ukuran maksimum yang disarankan 50 GB. Dalam hal ini, Anda dapat secara dinamis membuat indeks dengan mengkonfigurasi pola indeks di Logstash dan dalam kode di mana Anda dapat mengaksesnya dengan menggunakan alias. | Pemilik aplikasi, Pengembang |
Tentukan berapa banyak replika yang dibutuhkan. | Pemilik aplikasi, Pengembang | |
Tentukan jumlah pecahan yang akan dikonfigurasi pada indeks. | Pemilik aplikasi, Pengembang | |
Identifikasi jenis instance untuk node master khusus, node data, dan EC2 instance. | Untuk informasi selengkapnya, lihat bagian Sumber daya terkait. | Pemilik aplikasi, Pengembang |
Tentukan jumlah node master khusus dan node data yang diperlukan. | Untuk informasi selengkapnya, lihat bagian Sumber daya terkait. |
| Tugas | Deskripsi | Keterampilan yang dibutuhkan |
|---|---|---|
Luncurkan sebuah EC2 instance. | Luncurkan EC2 instance dalam VPC yang terhubung dengan AWS VPN. | Konstruksi Amazon VPC, AWS VPN |
Instal Logstash pada instance. EC2 | Developer | |
Instal plugin Logstash. | Instal plugin | Developer |
Konfigurasikan Logstash. | Buat keystore Logstash untuk menyimpan informasi sensitif seperti kunci AWS Secrets Manager dan kredensyal database, lalu tempatkan referensi dalam file konfigurasi Logstash. | Developer |
Konfigurasikan antrian huruf mati dan antrian persisten. | Secara default, ketika Logstash menemukan peristiwa yang tidak dapat diproses karena data berisi kesalahan pemetaan atau masalah lainnya, pipeline Logstash akan menggantung atau menghentikan peristiwa yang gagal. Untuk melindungi dari kehilangan data dalam situasi ini, Anda dapat mengonfigurasi Logstash untuk menulis peristiwa yang gagal ke antrian huruf mati alih-alih menjatuhkannya. Untuk melindungi dari kehilangan data selama penghentian abnormal, Logstash memiliki fitur antrian persisten yang akan menyimpan antrian pesan pada disk. Antrian persisten memberikan daya tahan data di Logstash. | Developer |
Buat domain OpenSearch Layanan Amazon. | Buat domain Amazon OpenSearch Service dengan kebijakan akses yang tidak memerlukan permintaan penandatanganan dengan kredensyal AWS Identity and Access Management (IAM). Domain OpenSearch Layanan Amazon harus dibuat dalam VPC yang sama. Anda juga harus memilih jenis instance dan mengatur jumlah node khusus dan master berdasarkan analisis Anda. | Developer |
Konfigurasikan log OpenSearch Layanan Amazon yang diperlukan. | Untuk informasi selengkapnya, lihat dokumentasi OpenSearch Layanan. | |
Buat indeks. | Developer | |
Mulai Logstash. | Jalankan Logstash sebagai layanan latar belakang. Logstash menjalankan kueri SQL yang dikonfigurasi, menarik data, mengubahnya menjadi format JSON, dan mengumpankannya ke Layanan. OpenSearch Untuk pemuatan awal, jangan konfigurasikan penjadwal dalam file konfigurasi Logstash. | Developer |
Periksa dokumen. | Periksa jumlah dokumen pada indeks dan apakah semua dokumen ada dalam database sumber. Selama pemuatan awal, mereka ditambahkan ke indeks dan digunakan untuk menghentikan Logstash. Ubah konfigurasi Logstash untuk menambahkan penjadwal yang berjalan pada interval tetap tergantung pada kebutuhan klien, dan mulai ulang Logstash. Logstash hanya akan memilih catatan yang diperbarui atau ditambahkan setelah proses terakhir, dan stempel waktu proses terakhir disimpan dalam file yang dikonfigurasi dengan properti | Developer |