

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Menggunakan pipeline OpenSearch Ingestion dengan Amazon DocumentDB
<a name="configure-client-docdb"></a>

Anda dapat menggunakan plugin [DocumentDB](https://opensearch.org/docs/latest/data-prepper/pipelines/configuration/sources/documentdb/) untuk melakukan streaming perubahan dokumen, seperti membuat, memperbarui, dan menghapus, ke Amazon Service. OpenSearch Pipeline mendukung pengambilan data perubahan (CDC), jika tersedia, atau polling API untuk streaming latensi rendah skala tinggi.

Anda dapat memproses data dengan atau tanpa snapshot awal penuh. Snapshot lengkap menangkap seluruh koleksi Amazon DocumentDB dan mengunggahnya ke Amazon S3. Pipeline kemudian mengirimkan data ke satu atau lebih OpenSearch indeks. Setelah menyerap snapshot, pipeline menyinkronkan perubahan yang sedang berlangsung untuk menjaga konsistensi dan akhirnya mengejar pembaruan hampir real-time.

Jika Anda sudah memiliki snapshot lengkap dari sumber lain, atau hanya perlu memproses peristiwa baru, Anda dapat melakukan streaming tanpa snapshot. Dalam hal ini, pipeline membaca langsung dari aliran perubahan Amazon DocumentDB tanpa beban massal awal.

Jika Anda mengaktifkan streaming, Anda harus [mengaktifkan aliran perubahan](https://docs.aws.amazon.com/documentdb/latest/developerguide/change_streams.html#change_streams-enabling) pada koleksi Amazon DocumentDB Anda. Namun, jika Anda hanya melakukan pemuatan penuh atau ekspor, Anda tidak memerlukan aliran perubahan.

## Prasyarat
<a name="s3-prereqs"></a>

Sebelum Anda membuat pipeline OpenSearch Ingestion, lakukan langkah-langkah berikut:

1. *Buat klaster Amazon DocumentDB dengan izin untuk membaca data dengan mengikuti langkah-langkah [dalam Membuat klaster Amazon DocumentDB di Panduan Pengembang Amazon DocumentDB](https://docs.aws.amazon.com/documentdb/latest/developerguide/get-started-guide.html#cloud9-cluster).* Jika Anda menggunakan infrastruktur CDC, konfigurasikan klaster Amazon DocumentDB Anda untuk mempublikasikan aliran perubahan. 

1. Aktifkan TLS di klaster Amazon DocumentDB Anda.

1. Siapkan CIDR VPC dari ruang alamat pribadi untuk digunakan dengan Ingestion. OpenSearch 

1. Siapkan autentikasi di klaster Amazon AWS Secrets Manager DocumentDB Anda dengan. Aktifkan rotasi rahasia dengan mengikuti langkah-langkah dalam [Memutar kata sandi secara otomatis untuk Amazon DocumentDB](https://docs.aws.amazon.com/documentdb/latest/developerguide/security.managing-users.html#security.managing-users-rotating-passwords). Untuk informasi selengkapnya, lihat [Akses database menggunakan Kontrol Akses Berbasis Peran](https://docs.aws.amazon.com/documentdb/latest/developerguide/role_based_access_control.html) dan [Keamanan di Amazon DocumentDB](https://docs.aws.amazon.com/documentdb/latest/developerguide/security.html).

1. Jika Anda menggunakan aliran perubahan untuk berlangganan perubahan data pada koleksi Amazon DocumentDB Anda, hindari kehilangan data dengan memperpanjang periode retensi hingga 7 hari menggunakan parameter. `change_stream_log_retention_duration` Peristiwa aliran perubahan disimpan selama 3 jam, secara default, setelah acara direkam, yang tidak cukup waktu untuk koleksi besar. Untuk mengubah periode retensi aliran perubahan, lihat [Memodifikasi durasi retensi log aliran perubahan](https://docs.aws.amazon.com/documentdb/latest/developerguide/change_streams.html#change_streams-modifying_log_retention).

1. Buat domain OpenSearch Layanan atau koleksi OpenSearch Tanpa Server. Untuk informasi selengkapnya, lihat [Membuat domain OpenSearch Layanan](createupdatedomains.md#createdomains) dan [Membuat koleksi](serverless-create.md).

1. Lampirkan [kebijakan berbasis sumber daya ke domain Anda atau kebijakan](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/ac.html#ac-types-resource) [akses data ke koleksi](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/serverless-data-access.html) Anda. Kebijakan akses ini memungkinkan OpenSearch Ingestion untuk menulis data dari klaster Amazon DocumentDB Anda ke domain atau koleksi Anda. 

   Contoh kebijakan akses domain berikut memungkinkan peran pipeline, yang Anda buat pada langkah berikutnya, untuk menulis data ke domain. Pastikan Anda memperbarui `resource` dengan ARN Anda sendiri. 

------
#### [ JSON ]

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Principal": {
           "AWS": "arn:aws:iam::{{444455556666}}:role/{{pipeline-role}}"
         },
         "Action": [
           "es:DescribeDomain",
           "es:ESHttp*"
         ],
         "Resource": [
           "arn:aws:es:{{us-east-1}}:{{111122223333}}:domain/{{domain-name}}"
         ]
       }
     ]
   }
   ```

------

   Untuk membuat peran IAM dengan izin yang benar untuk mengakses data tulis ke koleksi atau domain, lihat. [Menyiapkan peran dan pengguna di Amazon OpenSearch Ingestion](pipeline-security-overview.md)

## Langkah 1: Konfigurasikan peran pipeline
<a name="docdb-pipeline-role"></a>

Setelah Anda menyiapkan prasyarat pipeline Amazon DocumentDB, konfigurasikan peran [pipeline yang ingin Anda gunakan dalam konfigurasi pipeline,](pipeline-security-overview.md#pipeline-security-sink) dan tambahkan izin Amazon DocumentDB berikut dalam peran:

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "allowS3ListObjectAccess",
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket"
            ],
            "Resource": [
                "arn:aws:s3:::{{s3-bucket}}"
            ],
            "Condition": {
                "StringLike": {
                    "s3:prefix": "{{s3-prefix}}/*"
                }
            }
        },
        {
            "Sid": "allowReadAndWriteToS3ForExportStream",
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:GetObject",
                "s3:DeleteObject"
            ],
            "Resource": [
                "arn:aws:s3:::{{s3-bucket}}/{{s3-prefix}}/*"
            ]
        },
        {
            "Sid": "SecretsManagerReadAccess",
            "Effect": "Allow",
            "Action": [
                "secretsmanager:GetSecretValue"
            ],
            "Resource": [
                "arn:aws:secretsmanager:{{us-east-1}}:{{111122223333}}:secret:{{secret-name}}"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "ec2:AttachNetworkInterface",
                "ec2:CreateNetworkInterface",
                "ec2:CreateNetworkInterfacePermission",
                "ec2:DeleteNetworkInterface",
                "ec2:DeleteNetworkInterfacePermission",
                "ec2:DetachNetworkInterface",
                "ec2:DescribeNetworkInterfaces"
            ],
            "Resource": [
                "arn:aws:ec2:*:{{111122223333}}:network-interface/*",
                "arn:aws:ec2:*:{{111122223333}}:subnet/*",
                "arn:aws:ec2:*:{{111122223333}}:security-group/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "ec2:DescribeDhcpOptions",
                "ec2:DescribeRouteTables",
                "ec2:DescribeSecurityGroups",
                "ec2:DescribeSubnets",
                "ec2:DescribeVpcs",
                "ec2:Describe*"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "ec2:CreateTags"
            ],
            "Resource": "arn:aws:ec2:*:*:network-interface/*",
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/OSISManaged": "true"
                }
            }
        }
    ]
}
```

------

Anda harus memberikan izin Amazon EC2 di atas pada peran IAM yang Anda gunakan untuk membuat pipeline OpenSearch Ingestion karena pipeline menggunakan izin ini untuk membuat dan menghapus antarmuka jaringan di VPC Anda. Pipeline hanya dapat mengakses cluster Amazon DocumentDB melalui antarmuka jaringan ini.

## Langkah 2: Buat pipa
<a name="docdb-pipeline"></a>

Anda kemudian dapat mengonfigurasi pipeline OpenSearch Ingestion seperti berikut ini, yang menentukan Amazon DocumentDB sebagai sumbernya. Perhatikan bahwa untuk mengisi nama indeks, `getMetadata` fungsi menggunakan `{{documentdb_collection}}` sebagai kunci metadata. Jika Anda ingin menggunakan nama indeks yang berbeda tanpa `getMetadata` metode, Anda dapat menggunakan konfigurasi`index: "{{my_index_name}}"`.

```
version: "2"
documentdb-pipeline:
  source:
    documentdb:
      acknowledgments: true
      host: "https://{{docdb-cluster-id}}.{{us-east-1}}.docdb.amazonaws.com"
      port: 27017
      authentication:
        username: ${aws_secrets:secret:{{username}}}
        password: ${aws_secrets:secret:{{password}}}
      aws:
      s3_bucket: "{{bucket-name}}"
      s3_region: "{{bucket-region}}" 
      s3_prefix: "{{path}}" #optional path for storing the temporary data
      collections:
        - collection: "{{dbname.collection}}"
          export: true
          stream: true
  sink:
  - opensearch:
      hosts: ["{{https://search-mydomain.us-east-1.es.amazonaws.com}}"]
      index: "${getMetadata(\"{{documentdb_collection}}\")}"
      index_type: custom
      document_id: "${getMetadata(\"primary_key\")}"
      action: "${getMetadata(\"opensearch_action\")}"
      document_version: "${getMetadata(\"document_version\")}"
      document_version_type: "external"
extension:
  aws:
    secrets:
      secret:
        secret_id: "{{my-docdb-secret}}"
        region: "{{us-east-1}}"
        refresh_interval: PT1H
```

Anda dapat menggunakan cetak biru Amazon DocumentDB yang telah dikonfigurasi sebelumnya untuk membuat pipeline ini. Untuk informasi selengkapnya, lihat [Bekerja dengan cetak biru](pipeline-blueprint.md).

Jika Anda menggunakan file Konsol Manajemen AWS untuk membuat pipeline, Anda juga harus melampirkan pipeline ke VPC agar dapat menggunakan Amazon DocumentDB sebagai sumber. Untuk melakukannya, temukan bagian **Opsi jaringan sumber**, pilih kotak centang **Lampirkan ke VPC**, dan pilih CIDR Anda dari salah satu opsi default yang disediakan. Anda dapat menggunakan CIDR apa pun dari ruang alamat pribadi seperti yang didefinisikan dalam Praktik Terkini [Terbaik RFC 1918](https://datatracker.ietf.org/doc/html/rfc1918).

Untuk menyediakan CIDR khusus, pilih **Lainnya** dari menu tarik-turun. Untuk menghindari tabrakan di alamat IP antara OpenSearch Ingestion dan Amazon DocumentDB, pastikan bahwa Amazon DocumentDB VPC CIDR berbeda dari CIDR untuk Ingestion. OpenSearch 

Untuk informasi selengkapnya, lihat [Mengonfigurasi akses VPC untuk pipeline](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/pipeline-security.html#pipeline-vpc-configure).

## Konsistensi data
<a name="docdb-pipeline-consistency"></a>

Pipeline memastikan konsistensi data dengan terus melakukan polling atau menerima perubahan dari klaster Amazon DocumentDB dan memperbarui dokumen terkait dalam indeks. OpenSearch

OpenSearch Ingestion mendukung end-to-end pengakuan untuk memastikan daya tahan data. Ketika pipeline membaca snapshot atau stream, ia secara dinamis membuat partisi untuk pemrosesan paralel. Pipeline menandai partisi sebagai lengkap ketika menerima pengakuan setelah menelan semua catatan dalam OpenSearch domain atau koleksi. 

Jika Anda ingin memasukkan ke dalam koleksi *pencarian OpenSearch * Tanpa Server, Anda dapat membuat ID dokumen di pipeline. Jika Anda ingin memasukkan koleksi *deret waktu OpenSearch * Tanpa Server, perhatikan bahwa pipeline tidak menghasilkan ID dokumen, jadi Anda harus menghilangkan `document_id: "${getMetadata(\"primary_key\")}"` konfigurasi sink pipeline Anda. 

Pipeline OpenSearch Ingestion juga memetakan tindakan peristiwa yang masuk ke dalam tindakan pengindeksan massal yang sesuai untuk membantu menyerap dokumen. Ini membuat data tetap konsisten, sehingga setiap perubahan data di Amazon DocumentDB direkonsiliasi dengan perubahan dokumen terkait. OpenSearch

## Pemetaan tipe data
<a name="docdb-pipeline-mapping"></a>

OpenSearch Layanan secara dinamis memetakan tipe data di setiap dokumen yang masuk ke tipe data yang sesuai di Amazon DocumentDB. Tabel berikut menunjukkan bagaimana OpenSearch Layanan secara otomatis memetakan berbagai tipe data.


| Jenis data | OpenSearch | Amazon DocumentDB | 
| --- | --- | --- | 
| Bilangan Bulat | OpenSearch secara otomatis memetakan nilai bilangan bulat Amazon DocumentDB ke bilangan bulat. OpenSearch<br />OpenSearch secara dinamis memetakan bidang berdasarkan dokumen terkirim pertama. Jika Anda memiliki campuran tipe data untuk atribut yang sama di Amazon DocumentDB, pemetaan otomatis mungkin gagal. <br />Misalnya, jika dokumen pertama Anda memiliki atribut yang panjang, dan dokumen selanjutnya memiliki atribut yang sama dengan bilangan bulat, OpenSearch gagal untuk menelan dokumen kedua. Dalam kasus ini, Anda harus menyediakan template pemetaan eksplisit yang memilih jenis nomor paling fleksibel, seperti berikut ini:<pre>{<br /> "template": {<br />  "mappings": {<br />   "properties": {<br />    "MixedNumberField": {<br />     "type": "float"<br />    }<br />   }<br />  }<br /> }<br />}</pre> | [Amazon DocumentDB mendukung bilangan bulat.](https://docs.aws.amazon.com/documentdb/latest/developerguide/mongo-apis.html#mongo-apis-data-types) | 
| Panjang | OpenSearch secara otomatis memetakan nilai panjang Amazon DocumentDB ke long. OpenSearch<br />OpenSearch secara dinamis memetakan bidang berdasarkan dokumen terkirim pertama. Jika Anda memiliki campuran tipe data untuk atribut yang sama di Amazon DocumentDB, pemetaan otomatis mungkin gagal. <br />Misalnya, jika dokumen pertama Anda memiliki atribut yang panjang, dan dokumen selanjutnya memiliki atribut yang sama dengan bilangan bulat, OpenSearch gagal untuk menelan dokumen kedua. Dalam kasus ini, Anda harus menyediakan template pemetaan eksplisit yang memilih jenis nomor paling fleksibel, seperti berikut ini:<pre>{<br /> "template": {<br />  "mappings": {<br />   "properties": {<br />    "MixedNumberField": {<br />     "type": "float"<br />    }<br />   }<br />  }<br /> }<br />}</pre> | [Amazon DocumentDB mendukung long.](https://docs.aws.amazon.com/documentdb/latest/developerguide/mongo-apis.html#mongo-apis-data-types) | 
| String | OpenSearch secara otomatis memetakan nilai string sebagai teks. Dalam beberapa situasi, seperti nilai yang disebutkan, Anda dapat memetakan ke jenis kata kunci.<br />Contoh berikut menunjukkan cara memetakan atribut Amazon DocumentDB `PartType` bernama ke kata kunci. OpenSearch <pre>{<br /> "template": {<br />  "mappings": {<br />   "properties": {<br />    "PartType": {<br />     "type": "keyword"<br />    }<br />   }<br />  }<br /> }<br />}</pre> | [Amazon DocumentDB mendukung string.](https://docs.aws.amazon.com/documentdb/latest/developerguide/mongo-apis.html#mongo-apis-data-types) | 
| Ganda | OpenSearch secara otomatis memetakan Amazon DocumentDB nilai ganda menjadi dua kali lipat. OpenSearch<br />OpenSearch secara dinamis memetakan bidang berdasarkan dokumen terkirim pertama. Jika Anda memiliki campuran tipe data untuk atribut yang sama di Amazon DocumentDB, pemetaan otomatis mungkin gagal. <br />Misalnya, jika dokumen pertama Anda memiliki atribut yang panjang, dan dokumen selanjutnya memiliki atribut yang sama dengan bilangan bulat, OpenSearch gagal untuk menelan dokumen kedua. Dalam kasus ini, Anda harus menyediakan template pemetaan eksplisit yang memilih jenis nomor paling fleksibel, seperti berikut ini:<pre>{<br /> "template": {<br />  "mappings": {<br />   "properties": {<br />    "MixedNumberField": {<br />     "type": "float"<br />    }<br />   }<br />  }<br /> }<br />}</pre> | [Amazon DocumentDB mendukung ganda.](https://docs.aws.amazon.com/documentdb/latest/developerguide/mongo-apis.html#mongo-apis-data-types) | 
| Date | Secara default, tanggal memetakan ke bilangan bulat di OpenSearch. Anda dapat menentukan template pemetaan khusus untuk memetakan tanggal ke OpenSearch tanggal.<pre>{<br /> "template": {<br />  "mappings": {<br />   "properties": {<br />    "myDateField": {<br />     "type": "date",<br />     "format": "epoch_second"<br />    }<br />   }<br />  }<br /> }<br />}</pre> | [Amazon DocumentDB mendukung tanggal.](https://docs.aws.amazon.com/documentdb/latest/developerguide/mongo-apis.html#mongo-apis-data-types) | 
| Stempel waktu | Secara default, stempel waktu memetakan ke bilangan bulat di. OpenSearch Anda dapat menentukan template pemetaan khusus untuk memetakan tanggal ke OpenSearch tanggal.<pre>{<br /> "template": {<br />  "mappings": {<br />   "properties": {<br />    "myTimestampField": {<br />     "type": "date",<br />     "format": "epoch_second"<br />    }<br />   }<br />  }<br /> }<br />}</pre> | [Amazon DocumentDB mendukung stempel waktu.](https://docs.aws.amazon.com/documentdb/latest/developerguide/mongo-apis.html#mongo-apis-data-types) | 
| Boolean | OpenSearch memetakan jenis Boolean Amazon DocumentDB menjadi tipe Boolean. OpenSearch  | Amazon DocumentDB [mendukung](https://docs.aws.amazon.com/documentdb/latest/developerguide/mongo-apis.html#mongo-apis-data-types) atribut tipe Boolean. | 
| Decimal | OpenSearch memetakan atribut peta Amazon DocumentDB ke bidang bersarang. Pemetaan yang sama berlaku dalam bidang bersarang.<br />Contoh berikut memetakan string dalam bidang bersarang ke jenis kata kunci di OpenSearch:<pre>{<br /> "template": {<br />  "mappings": {<br />   "properties": {<br />    "myDecimalField": {<br />     "type": "double"<br />    }<br />   }<br />  }<br /> }<br />}</pre><br />Dengan pemetaan khusus ini, Anda dapat menanyakan dan menggabungkan bidang dengan presisi tingkat ganda. Nilai asli mempertahankan presisi penuh dalam `_source` properti OpenSearch dokumen. Tanpa pemetaan ini, OpenSearch gunakan teks secara default. | [Amazon DocumentDB mendukung desimal.](https://docs.aws.amazon.com/documentdb/latest/developerguide/mongo-apis.html#mongo-apis-data-types) | 
| Ekspresi reguler | Tipe regex membuat bidang bersarang. Ini termasuk {{<myFieldName>}}.pattern dan{{<myFieldName>}}.options. | [Amazon DocumentDB mendukung ekspresi reguler.](https://docs.aws.amazon.com/documentdb/latest/developerguide/mongo-apis.html#mongo-apis-data-types) | 
| Data Biner | OpenSearch secara otomatis memetakan data biner Amazon DocumentDB ke teks. OpenSearch Anda dapat memberikan pemetaan untuk menulis ini sebagai bidang OpenSearch biner. <br />Contoh berikut menunjukkan cara memetakan bidang Amazon DocumentDB `imageData` bernama ke OpenSearch bidang biner.<pre>{<br /> "template": {<br />  "mappings": {<br />   "properties": {<br />    "imageData": {<br />     "type": "binary"<br />    }<br />   }<br />  }<br /> }<br />}</pre> | Amazon DocumentDB [mendukung](https://docs.aws.amazon.com/documentdb/latest/developerguide/mongo-apis.html#mongo-apis-data-types) bidang data biner. | 
| ObjectId | Bidang dengan jenis peta ObjectId ke bidang OpenSearch teks. Nilai akan menjadi representasi string dari ObjectId.  | [Amazon DocumentDB mendukung ObjectIds.](https://docs.aws.amazon.com/documentdb/latest/developerguide/mongo-apis.html#mongo-apis-data-types) | 
| Null | OpenSearch dapat menelan dokumen dengan jenis null Amazon DocumentDB. Ini menyimpan nilai sebagai nilai nol dalam dokumen. Tidak ada pemetaan untuk jenis ini, dan bidang ini tidak diindeks atau dicari.<br />Jika nama atribut yang sama digunakan untuk tipe null dan kemudian berubah ke tipe yang berbeda seperti string, OpenSearch membuat pemetaan dinamis untuk nilai non-null pertama. Nilai selanjutnya masih bisa berupa nilai null Amazon DocumentDB. | Amazon DocumentDB [mendukung](https://docs.aws.amazon.com/documentdb/latest/developerguide/mongo-apis.html#mongo-apis-data-types) bidang tipe null. | 
| Tidak terdefinisi | OpenSearch dapat menelan dokumen dengan jenis Amazon DocumentDB yang tidak ditentukan. Ini menyimpan nilai sebagai nilai nol dalam dokumen. Tidak ada pemetaan untuk jenis ini, dan bidang ini tidak diindeks atau dicari.<br />Jika nama bidang yang sama digunakan untuk tipe yang tidak ditentukan dan kemudian berubah menjadi tipe yang berbeda seperti string, OpenSearch membuat pemetaan dinamis untuk nilai non-undefined pertama. Nilai selanjutnya masih dapat berupa nilai Amazon DocumentDB yang tidak ditentukan. | Amazon DocumentDB [mendukung](https://docs.aws.amazon.com/documentdb/latest/developerguide/mongo-apis.html#mongo-apis-data-types) bidang tipe yang tidak ditentukan. | 
| MinKey | OpenSearch dapat menelan dokumen dengan jenis Amazon DocumentDB MinKey. Ini menyimpan nilai sebagai nilai nol dalam dokumen. Tidak ada pemetaan untuk jenis ini, dan bidang ini tidak diindeks atau dicari.<br />Jika nama bidang yang sama digunakan untuk tipe MinKey dan kemudian berubah menjadi tipe yang berbeda seperti string, OpenSearch membuat pemetaan dinamis untuk nilai non-MinKey pertama. Nilai selanjutnya masih bisa berupa nilai MinKey Amazon DocumentDB. | Amazon DocumentDB [mendukung](https://docs.aws.amazon.com/documentdb/latest/developerguide/mongo-apis.html#mongo-apis-data-types) bidang tipe MinKey. | 
| MaxKey | OpenSearch dapat menelan dokumen dengan jenis Amazon DocumentDB MaxKey. Ini menyimpan nilai sebagai nilai nol dalam dokumen. Tidak ada pemetaan untuk jenis ini, dan bidang ini tidak diindeks atau dicari.<br />Jika nama bidang yang sama digunakan untuk tipe maxKey dan kemudian berubah ke jenis yang berbeda seperti string, OpenSearch membuat pemetaan dinamis untuk nilai non-MaxKey pertama. Nilai selanjutnya masih bisa berupa nilai Amazon DocumentDB MaxKey. | Amazon DocumentDB [mendukung](https://docs.aws.amazon.com/documentdb/latest/developerguide/mongo-apis.html#mongo-apis-data-types) bidang tipe MaxKey. | 

Kami menyarankan Anda mengonfigurasi antrian huruf mati (DLQ) di pipeline Ingestion Anda. OpenSearch Jika Anda telah mengonfigurasi antrian, OpenSearch Layanan mengirimkan semua dokumen gagal yang tidak dapat dicerna karena kegagalan pemetaan dinamis ke antrian. 

Jika pemetaan otomatis gagal, Anda dapat menggunakan `template_type` dan `template_content` dalam konfigurasi pipeline untuk menentukan aturan pemetaan eksplisit. Atau, Anda dapat membuat template pemetaan langsung di domain pencarian atau koleksi sebelum memulai pipeline. 

## Batasan
<a name="docdb-pipeline-limitations"></a>

Pertimbangkan batasan berikut saat menyiapkan pipeline OpenSearch Ingestion untuk Amazon DocumentDB:
+ Integrasi OpenSearch Ingestion dengan Amazon DocumentDB saat ini tidak mendukung konsumsi lintas wilayah. Cluster Amazon DocumentDB OpenSearch dan pipeline Ingestion Anda harus sama. AWS Region
+ Integrasi OpenSearch Ingestion dengan Amazon DocumentDB saat ini tidak mendukung konsumsi lintas akun. Cluster Amazon DocumentDB OpenSearch dan pipeline Ingestion Anda harus sama. Akun AWS
+ Pipeline OpenSearch Ingestion hanya mendukung satu cluster Amazon DocumentDB sebagai sumbernya. 
+ Integrasi OpenSearch Ingestion dengan Amazon DocumentDB secara khusus mendukung cluster berbasis instans Amazon DocumentDB. Itu tidak mendukung cluster elastis Amazon DocumentDB.
+ Integrasi OpenSearch Ingestion hanya mendukung AWS Secrets Manager sebagai mekanisme otentikasi untuk cluster Amazon DocumentDB Anda.
+ Anda tidak dapat memperbarui konfigurasi pipeline yang ada untuk menyerap data dari database atau koleksi yang berbeda. Sebagai gantinya, Anda harus membuat pipeline baru. 

## CloudWatch Alarm yang direkomendasikan
<a name="cloudwatch-metrics-docdb"></a>

Untuk performa terbaik, sebaiknya gunakan CloudWatch alarm berikut saat membuat pipeline OpenSearch Ingestion untuk mengakses klaster Amazon DocumentDB sebagai sumber.


| CloudWatch Alarm | Deskripsi | 
| --- | --- | 
| {{<pipeline-name>}}.doucmentdb.credentialsChanged | Metrik ini menunjukkan seberapa sering AWS rahasia diputar. | 
| {{<pipeline-name>}}.doucmentdb. executorRefreshErrors | Metrik ini menunjukkan kegagalan untuk menyegarkan AWS rahasia. | 
| {{<pipeline-name>}}.doucmentdb. exportRecordsTotal | Metrik ini menunjukkan jumlah catatan yang diekspor dari Amazon DocumentDB. | 
| {{<pipeline-name>}}.doucmentdb. exportRecordsProcessed | Metrik ini menunjukkan jumlah catatan yang diproses oleh pipa OpenSearch Ingestion. | 
| {{<pipeline-name>}}.doucmentdb. exportRecordProcessingKesalahan | Metrik ini menunjukkan jumlah kesalahan pemrosesan dalam pipeline OpenSearch Ingestion saat membaca data dari klaster Amazon DocumentDB. | 
| {{<pipeline-name>}}.doucmentdb. exportRecordsSuccessJumlah | Metrik ini menunjukkan jumlah total catatan ekspor yang berhasil diproses. | 
| {{<pipeline-name>}}.doucmentdb. exportRecordsFailedJumlah | Metrik ini menunjukkan jumlah total catatan ekspor yang gagal diproses. | 
| {{<pipeline-name>}}.doucmentdb.bytesditerima | Metrik ini menunjukkan jumlah total byte yang diterima oleh pipeline OpenSearch Ingestion. | 
| {{<pipeline-name>}}.doucmentdb.bytesdiproses | Metrik ini menunjukkan jumlah total byte yang diproses oleh pipeline OpenSearch Ingestion. | 
| {{<pipeline-name>}}.doucmentdb. exportPartitionQueryJumlah | Metrik ini menunjukkan total partisi ekspor. | 
| {{<pipeline-name>}}.doucmentdb. streamRecordsSuccessJumlah | Metrik ini menunjukkan jumlah catatan yang berhasil diproses dari aliran. | 
| {{<pipeline-name>}}.doucmentdb. streamRecordsFailedJumlah | Metrik ini menunjukkan jumlah total rekaman yang gagal diproses dari aliran. | 