Menggunakan AmazonOpenSearchService cluster sebagai targetAWS Database Migration Service - AWS Layanan Migrasi Database

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 dengan ParallelLoadThreads. 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 perilakuPutRecordsPanggilan 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 saat ParallelApplyThreads 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, gantiregiondenganAWSPengenal wilayah,account-iddengan AndaAWSID akun, dandomain-namedengan nama Amazon AndaOpenSearchDomain layanan. Contohnya 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-endpointperintah diAWS CLI, dengan--elasticsearch-settings '{"EndpointSetting": "value", ...}'sintaks JSON.

Tabel berikut menunjukkan pengaturan titik akhir yang dapat Anda gunakanOpenSearchLayanan sebagai target.

Nama atribut Nilai valid Nilai dan deskripsi default

FullLoadErrorPercentage

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.

ErrorRetryDuration

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.