Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menggunakan AmazonOpenSearchService cluster sebagai targetAWS Database Migration Service
Anda dapat menggunakanAWS DMSuntuk memigrasi data ke AmazonOpenSearchLayanan (OpenSearchLayanan). OpenSearchLayanan adalah layanan terkelola yang membuatnya mudah untuk menyebarkan, mengoperasikan, dan menskalakanOpenSearchLayanan cluster.
DalamOpenSearchLayanan, Anda bekerja dengan indeks dan dokumen. Sebuahindeksadalah kumpulan dokumen, dandokumenadalah objek JSON yang berisi nilai-nilai skalar, array, dan benda-benda lainnya.OpenSearchmenyediakan bahasa query berbasis JSON, sehingga Anda dapat query data dalam indeks dan mengambil dokumen yang sesuai.
KapanAWS DMSmenciptakan indeks untuk endpoint target untukOpenSearchLayanan, itu menciptakan satu indeks untuk setiap tabel dari titik akhir sumber. Biaya untuk membuatOpenSearchIndeks layanan tergantung pada beberapa faktor. Ini adalah jumlah indeks yang dibuat, jumlah total data dalam indeks ini, dan sejumlah kecil metadata yangOpenSearchtoko untuk setiap dokumen.
KonfigurasikanOpenSearchKlaster layanan dengan sumber daya komputasi dan penyimpanan yang sesuai untuk ruang lingkup migrasi Anda. Kami menyarankan agar Anda mempertimbangkan faktor-faktor berikut, tergantung pada tugas replikasi yang ingin Anda gunakan:
-
Untuk beban data penuh, pertimbangkan jumlah total data yang ingin Anda migrasikan, dan juga kecepatan transfer.
-
Untuk mereplikasi perubahan yang sedang berlangsung, pertimbangkan frekuensi pembaruan, dan persyaratan latensi end-to-end Anda.
Juga, konfigurasikan pengaturan indeks padaOpenSearchcluster, memperhatikan jumlah dokumen.
Pengaturan tugas beban penuh multithread
Untuk membantu meningkatkan kecepatan transfer,AWS DMSmendukung beban penuh multithreaded keOpenSearchLayanan target cluster.AWS DMSmendukung multithreading ini dengan pengaturan tugas yang mencakup berikut ini:
-
MaxFullLoadSubTasks
- Gunakan pilihan ini untuk menunjukkan jumlah maksimum tabel sumber yang dimuat secara paralel. DMS memuat setiap tabel ke dalam yang sesuaiOpenSearchIndeks target layanan menggunakan subtugas khusus. Default adalah 8; nilai maksimum adalah 49. -
ParallelLoadThreads
- Gunakan opsi ini untuk menentukan jumlah utas yangAWS DMSmenggunakan untuk memuat setiap tabel ke dalamOpenSearchIndeks target layanan. Nilai maksimum untukOpenSearchTarget layanan adalah 32. Anda dapat meminta untuk meningkatkan batas maksimum ini.catatan
Jika Anda tidak mengubah
ParallelLoadThreads
dari default (0), AWS DMS mentransfer satu catatan pada satu waktu. Pendekatan ini menempatkan beban yang tidak semestinya pada AndaOpenSearchLayanan cluster. Pastikan bahwa Anda menetapkan pilihan ini ke 1 atau lebih. -
ParallelLoadBufferSize
- Gunakan opsi ini untuk menentukan jumlah maksimum catatan untuk disimpan dalam buffer yang digunakan benang beban paralel untuk memuat data keOpenSearchTarget layanan. Nilai default adalah 50. Nilai maksimumnya adalah 1.000. Gunakan pengaturan ini denganParallelLoadThreads
.ParallelLoadBufferSize
hanya berlaku bila ada lebih dari satu thread.
Untuk informasi lebih lanjut tentang bagaimana DMS memuatOpenSearchLayanan cluster menggunakan multithreading, lihatAWSposting blogSkala AmazonOpenSearchLayanan untukAWS Database Migration Servicemigrasi
Pengaturan beban tugas CDC multithread
Anda dapat meningkatkan kinerja pengambilan data perubahan (CDC) untukOpenSearchLayanan target cluster menggunakan pengaturan tugas untuk memodifikasi perilakuPutRecords
Panggilan API. Untuk melakukan ini, Anda dapat menentukan jumlah thread yang terjadi bersamaan, antrean per thread, dan jumlah catatan untuk disimpan dalam buffer menggunakan pengaturan tugas ParallelApply*
. Misalnya, Anda ingin melakukan beban CDC dan menerapkan 32 thread secara paralel. Anda juga ingin mengakses 64 antrean per thread, dengan 50 catatan disimpan per buffer.
catatan
Dukungan untuk penggunaanParallelApply*
pengaturan tugas selama CDC ke AmazonOpenSearchEndpoint target layanan tersedia diAWS DMSversi 3.4.0 dan yang lebih tinggi
Untuk mempromosikan performa CDC, AWS DMS mendukung pengaturan tugas ini:
-
ParallelApplyThreads
- Menentukan jumlah benang bersamaan yangAWS DMSmenggunakan selama beban CDC untuk mendorong catatan data keOpenSearchTitik akhir target layanan. Nilai default adalah nol (0) dan nilai maksimum adalah 32. -
ParallelApplyBufferSize
- Menentukan jumlah maksimum catatan untuk menyimpan di setiap antrian buffer untuk benang bersamaan untuk mendorong keOpenSearchTitik akhir target layanan selama beban CDC. Nilai default adalah 100 dan nilai maksimum adalah 1.000. Gunakan pilihan ini saatParallelApplyThreads
menentukan lebih dari satu thread. -
ParallelApplyQueuesPerThread
- Menentukan jumlah antrian yang setiap thread mengakses untuk mengambil catatan data dari antrian dan menghasilkan beban batch untukOpenSearchTitik akhir layanan selama CDC.
Saat menggunakan pengaturan tugas ParallelApply*
, default partition-key-type
-nya adalah primary-key
dari tabel, bukan schema-name.table-name
.
Migrasi dari tabel database relasional keOpenSearchIndeks layanan
AWS DMSmendukung migrasi data keOpenSearchJenis data skalar layanan. Saat bermigrasi dari database relasional seperti Oracle atau MySQL keOpenSearchLayanan, Anda mungkin ingin merestrukturisasi bagaimana Anda menyimpan data ini.
AWS DMSmendukung berikutOpenSearchJenis data skalar layanan:
-
Boolean
-
Date
-
Float
-
Int
-
String
AWS DMS mengonversi data dari tipe Date ke tipe String. Anda dapat menentukan pemetaan kustom untuk menafsirkan tanggal ini.
AWS DMS tidak mendukung migrasi tipe data LOB.
Prasyarat untuk menggunakan AmazonOpenSearchLayanan sebagai targetAWS Database Migration Service
Sebelum Anda mulai bekerja denganOpenSearchDatabase layanan sebagai targetAWS DMS, pastikan bahwa Anda membuatAWS Identity and Access Management(IAM) peran. Peran ini harus membiarkanAWS DMSmengaksesOpenSearchIndeks layanan pada titik akhir target. Kumpulan izin akses minimum ditampilkan dalam kebijakan IAM berikut.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "1", "Effect": "Allow", "Principal": { "Service": "dms.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
Peran yang Anda gunakan untuk migrasiOpenSearchLayanan harus memiliki izin berikut.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "es:ESHttpDelete", "es:ESHttpGet", "es:ESHttpHead", "es:ESHttpPost", "es:ESHttpPut" ], "Resource": "arn:aws:es:
region
:account-id
:domain/domain-name
/*" } ] }
Pada contoh sebelumnya, ganti
denganAWSPengenal wilayah,region
dengan AndaAWSID akun, danaccount-id
dengan nama Amazon AndaOpenSearchDomain layanan. Contohnya domain-name
arn:aws:es:us-west-2:123456789012:domain/my-es-domain
Pengaturan titik akhir saat menggunakanOpenSearchLayanan sebagai targetAWS DMS
Anda dapat menggunakan pengaturan titik akhir untuk mengonfigurasiOpenSearchTarget layanan database mirip dengan menggunakan atribut koneksi tambahan. Anda menentukan pengaturan saat Anda membuat titik akhir target menggunakanAWS DMSkonsol, atau dengan menggunakancreate-endpoint
perintah diAWS CLI, dengan--elasticsearch-settings '{"
sintaks JSON.EndpointSetting"
:
"value"
, ...
}'
Tabel berikut menunjukkan pengaturan titik akhir yang dapat Anda gunakanOpenSearchLayanan sebagai target.
Nama atribut | Nilai valid | Nilai dan deskripsi default |
---|---|---|
|
Sebuah integer positif lebih besar dari 0 tetapi tidak lebih besar dari 100. |
10 - Untuk tugas beban penuh, atribut ini menentukan ambang batas kesalahan yang diizinkan sebelum tugas gagal. Sebagai contoh, ada 1.500 baris di titik akhir sumber dan parameter ini diatur ke 10. Kemudian tugas gagal jika AWS DMS menemukan lebih dari 150 kesalahan (10 persen dari jumlah baris) saat menulis ke titik akhir target. |
|
Sebuah integer positif lebih besar dari 0. |
300 - Jika terjadi kesalahan pada titik akhir target, AWS DMS mencoba lagi selama beberapa detik ini. Jika tidak, tugas gagal. |
Batasan saat menggunakan AmazonOpenSearchLayanan sebagai targetAWS Database Migration Service
Batasan berikut berlaku saat menggunakan AmazonOpenSearchLayanan sebagai target:
-
OpenSearchLayanan menggunakan pemetaan dinamis (auto guess) untuk menentukan tipe data yang akan digunakan untuk data yang dimigrasi.
-
OpenSearchLayanan menyimpan setiap dokumen dengan ID unik. Berikut adalah contoh ID.
"_id": "D359F8B537F1888BC71FE20B3D79EAE6674BE7ACA9B645B0279C7015F6FF19FD"
Setiap ID dokumen adalah panjangnya 64 byte, jadi antisipasi ini sebagai syarat penyimpanan. Misalnya, jika Anda memigrasi 100.000 baris dariAWS DMSsumber, yang dihasilkanOpenSearchIndeks layanan memerlukan penyimpanan untuk tambahan 6.400.000 byte.
-
DenganOpenSearchLayanan, Anda tidak dapat membuat pembaruan untuk atribut kunci utama. Pembatasan ini penting ketika menggunakan replikasi berkelanjutan dengan perubahan pengambilan data (CDC) karena dapat mengakibatkan data yang tidak diinginkan dalam target. Dalam mode CDC, kunci primer dipetakan ke nilai SHA256, dengan panjang 32 byte. Ini diubah menjadi string 64-byte yang dapat dibaca manusia, dan digunakan sebagaiOpenSearchID dokumen layanan.
-
JikaAWS DMSmenemukan item yang tidak dapat dimigrasi, ia menulis pesan kesalahan ke AmazonCloudWatchLog. Perilaku ini berbeda dari titik akhir target AWS DMS lainnya, yang menulis kesalahan ke tabel pengecualian.
-
AWS DMS tidak mendukung koneksi ke klaster Amazon ES yang memiliki Fine-grained Access Control diaktifkan dengan pengguna master dan kata sandi.
-
AWS DMStidak mendukungOpenSearchLayanan tanpa server.
-
OpenSearchLayanan tidak mendukung penulisan data ke indeks yang sudah ada sebelumnya.
Jenis data target untuk AmazonOpenSearchLayanan
Saat AWS DMS memigrasikan data dari basis data heterogen, layanan memetakan jenis data dari basis data sumber ke tipe data perantara yang disebut tipe data AWS DMS. Layanan kemudian memetakan tipe data perantara ke tipe data target. Tabel berikut menunjukkan masing-masingAWS DMStipe data dan tipe data yang dipetakan ke dalamOpenSearchLayanan.
Tipe data AWS DMS | OpenSearchTipe data layanan |
---|---|
Boolean |
boolean |
Date |
string |
Time |
date |
Timestamp |
date |
INT4 |
Integer |
Real4 |
float |
UINT4 |
Integer |
Untuk informasi tambahan tentang tipe data AWS DMS, lihat Tipe data untuk AWS Database Migration Service.