ETLIntegración cero con Amazon OpenSearch Service - Amazon DocumentDB

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

ETLIntegración cero con Amazon OpenSearch Service

Amazon OpenSearch Service como destino

OpenSearch La integración de servicios con Amazon DocumentDB le permite transmitir eventos de carga completa y cambios de datos a OpenSearch los dominios. La infraestructura de ingestión se aloja como canalizaciones de OpenSearch ingestión y proporciona un mecanismo de alta escala y baja latencia para transmitir datos de forma continua desde las colecciones de Amazon DocumentDB.

Durante la carga completa, la ETL integración cero extrae primero los datos históricos a plena carga para OpenSearch utilizarlos en una canalización de ingestión. Una vez ingeridos los datos a plena carga, las canalizaciones de OpenSearch ingestión comenzarán a leer los datos de los flujos de cambios de Amazon DocumentDB y, finalmente, se pondrán al día para mantener la coherencia de los datos casi en tiempo real entre Amazon DocumentDB y. OpenSearch OpenSearch almacena los documentos en índices. Los datos entrantes de una colección de Amazon DocumentDB se pueden enviar a un índice o se pueden dividir en índices diferentes. Las canalizaciones de ingestión sincronizarán todos los eventos de creación, actualización y eliminación de una colección de Amazon DocumentDB según corresponda con la creación, actualización y eliminación OpenSearch de documentos para mantener ambos sistemas de datos sincronizados. Los canales de ingestión se pueden configurar para leer datos de una colección y escribirlos en un índice, o leer datos de una colección y enviarlos condicionalmente a varios índices.

Las canalizaciones de ingestión se pueden configurar para transmitir datos desde Amazon DocumentDB a OpenSearch Amazon Service mediante:

  • Solo a carga completa

  • Transmita eventos de transmisión de cambios desde Amazon DocumentDB sin carga completa

  • Carga completa seguida de secuencias de cambios desde Amazon DocumentDB

Para configurar su canalización de ingestión, lleve a cabo los siguientes pasos:

Paso 1: Crear un dominio de Amazon OpenSearch Service o una colección OpenSearch sin servidor

Se requiere una recopilación de Amazon OpenSearch Service con los permisos adecuados para leer los datos. Consulte Introducción a Amazon OpenSearch Service o Introducción a Amazon OpenSearch Serverless en la Guía para desarrolladores de Amazon OpenSearch Service para crear una colección. Consulte Amazon OpenSearch Ingestion en la Guía para desarrolladores de Amazon OpenSearch Service para crear un AIM rol con los permisos correctos para acceder a los datos de escritura en la colección o el dominio.

Paso 2: Habilitar los flujos de cambios en el clúster de Amazon DocumentDB

Asegúrese de que los flujos de cambios estén habilitados en las colecciones requeridas del clúster de Amazon DocumentDB. Para obtener más información, consulte Uso de flujos de cambios con Amazon DocumentDB.

Paso 3: Configure el rol de canalización con permisos para escribir en el bucket de Amazon S3 y en el dominio o colección de destino

Una vez creada la colección Amazon DocumentDB y habilitado el flujo de cambios, configure el rol de canalización que desee usar en la configuración de canalización y añada los siguientes permisos al rol:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "allowReadAndWriteToS3ForExport", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:AbortMultipartUpload", "s3:PutObject", "s3:PutObjectAcl" ], "Resource": [ "arn:aws:s3:::my-bucket/export/*" ] } ] }

Para que una OpenSearch canalización escriba datos en un OpenSearch dominio, el dominio debe tener una política de acceso a nivel de dominio que permita al rol de canalización sts_role_arn acceder a ellos. El siguiente ejemplo de política de acceso al dominio permite que el rol de canalización denominado pipeline-role, que creó en el paso anterior, escriba datos en el dominio denominado ingestion-domain:

{ "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::{your-account-id}:role/{pipeline-role}" }, "Action": ["es:DescribeDomain", "es:ESHttp*"], "Resource": "arn:aws:es:{region}:{your-account-id}:domain/{domain-name}/*" } ] }

Paso 4: Añada los permisos necesarios en el rol de canalización para crear X- ENI

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:AttachNetworkInterface", "ec2:CreateNetworkInterface", "ec2:CreateNetworkInterfacePermission", "ec2:DeleteNetworkInterface", "ec2:DeleteNetworkInterfacePermission", "ec2:DetachNetworkInterface", "ec2:DescribeNetworkInterfaces" ], "Resource": [ "arn:aws:ec2:*:420497401461:network-interface/*", "arn:aws:ec2:*:420497401461:subnet/*", "arn:aws:ec2:*:420497401461: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" } } } ] }

Paso 5: Crea la canalización

Configure una canalización OpenSearch de ingestión especificando Amazon DocumentDB como origen. En este ejemplo de configuración de canalización se presupone el uso de un mecanismo de obtención de flujos de cambios. Consulte Uso de una canalización OpenSearch de ingestión con Amazon DocumentDB en la Guía para desarrolladores de OpenSearch Amazon Service para obtener más información.

Limitaciones

Se aplican las siguientes limitaciones a la integración de Amazon DocumentDB: OpenSearch

  • Solo se admite una colección de Amazon DocumentDB como fuente por canalización.

  • No se admite la ingesta de datos entre regiones. El clúster y el OpenSearch dominio de Amazon DocumentDB deben estar en la misma AWS región.

  • No se admite la ingesta de datos entre cuentas. El clúster de Amazon DocumentDB y la canalización OpenSearch de ingestión deben estar en la misma cuenta. AWS

  • No se admiten los clústeres elásticos de Amazon DocumentDB. Solo se admiten los clústeres basados en instancias de Amazon DocumentDB.

  • Asegúrese de que el clúster de Amazon DocumentDB tenga habilitada la autenticación mediante AWS secretos. AWS los secretos son el único mecanismo de autenticación compatible.

  • La configuración de canalización existente no se puede actualizar para ingerir datos de una base de datos diferente o de una colección diferente. Para actualizar la base de datos o el nombre de la colección de una canalización, debe crear una canalización nueva.