View a markdown version of this page

Menggunakan cluster OpenSearch Layanan Amazon sebagai target untuk AWS 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 cluster OpenSearch Layanan Amazon sebagai target untuk AWS Database Migration Service

Anda dapat menggunakan AWS DMS untuk memigrasikan data ke Amazon OpenSearch Service (OpenSearch Service). OpenSearch Layanan adalah layanan terkelola yang membuatnya mudah untuk menerapkan, mengoperasikan, dan menskalakan cluster OpenSearch Layanan.

Dalam OpenSearch Layanan, Anda bekerja dengan indeks dan dokumen. Indeks adalah kumpulan dokumen, dan dokumen adalah objek JSON yang berisi nilai skalar, array, dan objek lainnya. OpenSearch menyediakan bahasa JSON-based query, sehingga Anda dapat menanyakan data dalam indeks dan mengambil dokumen yang sesuai.

Saat AWS DMS membuat indeks untuk titik akhir target untuk OpenSearch Layanan, itu membuat satu indeks untuk setiap tabel dari titik akhir sumber. Biaya untuk membuat indeks OpenSearch Layanan tergantung pada beberapa faktor. Ini adalah jumlah indeks yang dibuat, jumlah total data dalam indeks ini, dan sejumlah kecil metadata yang disimpan untuk OpenSearch setiap dokumen.

Konfigurasikan kluster OpenSearch Layanan Anda dengan sumber daya komputasi dan penyimpanan yang sesuai untuk 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 pada OpenSearch cluster Anda, perhatikan jumlah dokumen.

Pengaturan tugas beban penuh multithread

Untuk membantu meningkatkan kecepatan transfer, AWS DMS mendukung beban penuh multithread ke cluster target OpenSearch Layanan. AWS DMS mendukung multithreading ini dengan pengaturan tugas yang mencakup yang berikut:

  • MaxFullLoadSubTasks - Gunakan pilihan ini untuk menunjukkan jumlah maksimum tabel sumber yang dimuat secara paralel. DMS memuat setiap tabel ke indeks target OpenSearch Layanan yang sesuai menggunakan subtugas khusus. Default adalah 8; nilai maksimum adalah 49.

  • ParallelLoadThreadsGunakan opsi ini untuk menentukan jumlah thread yang digunakan AWS DMS untuk memuat setiap tabel ke indeks target OpenSearch Layanan. Nilai maksimum untuk target OpenSearch 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 cluster OpenSearch Layanan Anda. Pastikan bahwa Anda menetapkan pilihan ini ke 1 atau lebih.

  • ParallelLoadBufferSize— Gunakan opsi ini untuk menentukan jumlah maksimum catatan untuk disimpan di buffer yang digunakan utas beban paralel untuk memuat data ke target OpenSearch 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 selengkapnya tentang cara DMS memuat cluster OpenSearch Layanan menggunakan multithreading, lihat posting AWS blog Men skalakan OpenSearch Layanan Amazon untuk migrasi. AWS Database Migration Service

Pengaturan beban tugas CDC multithread

Anda dapat meningkatkan kinerja penangkapan data perubahan (CDC) untuk kluster target OpenSearch Layanan menggunakan pengaturan tugas untuk mengubah perilaku panggilan PutRecords API. Untuk melakukan ini, Anda dapat menentukan jumlah thread yang terjadi bersamaan, antrean per thread, dan jumlah catatan yang disimpan dalam buffer menggunakan pengaturan tugas ParallelApply*. Misalnya, Anda ingin melakukan pemuatan CDC dan menerapkan 32 utas secara paralel. Anda juga ingin mengakses 64 antrean per thread, dengan 50 catatan disimpan per buffer.

catatan

Dukungan untuk penggunaan pengaturan ParallelApply* tugas selama titik akhir target CDC ke Amazon OpenSearch Service tersedia dalam AWS DMS versi 3.4.0 dan yang lebih tinggi.

Untuk meningkatkan kinerja CDC, AWS DMS mendukung pengaturan tugas ini:

  • ParallelApplyThreads— Menentukan jumlah thread bersamaan yang digunakan selama AWS DMS pemuatan CDC untuk mendorong catatan data ke titik akhir target OpenSearch Layanan. Nilai default adalah nol (0) dan nilai maksimum adalah 32.

  • ParallelApplyBufferSize— Menentukan jumlah maksimum catatan yang akan disimpan di setiap antrian buffer untuk thread bersamaan untuk didorong ke titik akhir target OpenSearch Layanan selama pemuatan 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 diakses setiap utas untuk mengambil catatan data dari antrian dan menghasilkan pemuatan batch untuk titik akhir OpenSearch 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 ke indeks Layanan OpenSearch

AWS DMS mendukung migrasi data ke tipe data skalar OpenSearch Layanan. Saat bermigrasi dari database relasional seperti Oracle atau MySQL ke OpenSearch Service, Anda mungkin ingin merestrukturisasi bagaimana Anda menyimpan data ini.

AWS DMS mendukung jenis data skalar OpenSearch Layanan berikut:

  • Boolean

  • Date

  • Float

  • Int

  • String

AWS DMS mengubah data tipe Tanggal menjadi tipe String. Anda dapat menentukan pemetaan kustom untuk menafsirkan tanggal ini.

AWS DMS tidak mendukung migrasi tipe data LOB.

Prasyarat untuk menggunakan OpenSearch Layanan Amazon sebagai target AWS Database Migration Service

Sebelum Anda mulai bekerja dengan database OpenSearch Layanan sebagai target untuk AWS DMS, pastikan Anda membuat peran AWS Identity and Access Management (IAM). Peran ini harus memungkinkan AWS DMS akses indeks OpenSearch Layanan di titik akhir target. Kumpulan izin akses minimum ditampilkan dalam kebijakan IAM berikut.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "1", "Effect": "Allow", "Principal": { "Service": "dms.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

Peran yang Anda gunakan untuk migrasi ke OpenSearch Layanan harus memiliki izin berikut.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "es:ESHttpDelete", "es:ESHttpGet", "es:ESHttpHead", "es:ESHttpPost", "es:ESHttpPut" ], "Resource": "*" } ] }

Dalam contoh sebelumnya, ganti region dengan Pengi AWS dentifikasi Wilayah, account-id dengan ID AWS akun Anda, dan domain-name dengan nama domain OpenSearch Layanan Amazon Anda. Contohnya arn:aws:es:us-west-2:123456789012:domain/my-es-domain

Pengaturan titik akhir saat menggunakan OpenSearch Layanan sebagai target untuk AWS DMS

Anda dapat menggunakan pengaturan titik akhir untuk mengonfigurasi database target OpenSearch Layanan mirip dengan menggunakan atribut koneksi tambahan. Anda menentukan pengaturan saat membuat titik akhir target menggunakan AWS DMS konsol, atau dengan menggunakan create-endpoint perintah di AWS CLI, dengan sintaks --elasticsearch-settings '{"EndpointSetting": "value", ...}' JSON.

Tabel berikut menunjukkan pengaturan titik akhir yang dapat Anda gunakan dengan OpenSearch Layanan 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 menemukan AWS DMS 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 di titik akhir target, coba AWS DMS lagi selama beberapa detik ini. Jika tidak, tugas gagal.

UseNewMappingType

true atau false

false, tetapi untuk bekerja menggunakan opensearch v2.x itu harus disetel ke. true

Keterbatasan saat menggunakan OpenSearch Layanan Amazon sebagai target AWS Database Migration Service

Batasan berikut berlaku saat menggunakan OpenSearch Layanan Amazon sebagai target:

  • OpenSearch Layanan menggunakan pemetaan dinamis (tebakan otomatis) untuk menentukan tipe data yang akan digunakan untuk data yang dimigrasi.

  • OpenSearch Layanan 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 memigrasikan 100.000 baris dari AWS DMS sumber, indeks OpenSearch Layanan yang dihasilkan memerlukan penyimpanan untuk 6.400.000 byte tambahan.

  • Dengan OpenSearch Layanan, Anda tidak dapat melakukan pembaruan pada 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 dikonversi ke string 64-byte yang dapat dibaca manusia, dan digunakan sebagai ID dokumen OpenSearch Layanan.

  • Jika AWS DMS menemukan item apa pun yang tidak dapat dimigrasi, itu menulis pesan kesalahan ke Amazon CloudWatch Logs. Perilaku ini berbeda dari titik akhir AWS DMS target lainnya, yang menulis kesalahan ke tabel pengecualian.

  • AWS DMS tidak mendukung koneksi ke cluster Amazon ES yang mengaktifkan Kontrol Fine-grained Akses dengan pengguna utama dan kata sandi.

  • AWS DMS tidak mendukung OpenSearch Layanan tanpa server.

  • Dimulai dengan AWS DMS versi 3.1, OpenSearch Layanan mendukung penulisan data ke indeks yang sudah ada sebelumnya.

  • Pengaturan tugas replikasi, TargetTablePrepMode:TRUNCATE_BEFORE_LOAD tidak didukung untuk digunakan dengan titik akhir OpenSearch target.

  • Saat memigrasikan data ke Amazon Elasticsearch menggunakan AWS DMS, data sumber harus memiliki kunci utama atau kolom pengenal unik. Jika data sumber tidak memiliki kunci primer atau pengenal unik, Anda perlu mendefinisikannya menggunakan aturan transformasi define-primary-key.

Jenis data target untuk OpenSearch Layanan Amazon

Saat AWS DMS memigrasikan data dari database heterogen, layanan memetakan tipe data dari database sumber ke tipe data perantara yang disebut tipe AWS DMS data. Layanan kemudian memetakan tipe data perantara ke tipe data target. Tabel berikut menunjukkan setiap tipe AWS DMS data dan tipe data yang dipetakannya di OpenSearch Layanan.

AWS DMS tipe data OpenSearch Jenis data layanan

Boolean

boolean

Date

string

Time

date

Timestamp

date

INT4

Integer

Real4

float

UINT4

integer

Untuk informasi tambahan tentang AWS DMS tipe data, lihatTipe data untuk AWS Database Migration Service.