Migrazione dei dati tra domini e raccolte utilizzando Amazon Ingestion OpenSearch - OpenSearch Servizio Amazon

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Migrazione dei dati tra domini e raccolte utilizzando Amazon Ingestion OpenSearch

Puoi utilizzare le pipeline OpenSearch di Ingestion per migrare i dati tra domini Amazon OpenSearch Service o OpenSearch raccolte VPC Serverless. A tale scopo, configuri una pipeline in cui configuri un dominio o una raccolta come origine e un altro dominio o raccolta come sink. Questo consente di migrare efficacemente i dati da un dominio o una raccolta all'altra.

Per migrare i dati, è necessario disporre delle seguenti risorse:

  • Un dominio di OpenSearch servizio di origine o una raccolta VPC OpenSearch Serverless. Questo dominio o raccolta contiene i dati che desideri migrare. Se utilizzi un dominio, deve eseguire la OpenSearch versione 1.0 o successiva oppure Elasticsearch versione 7.4 o successiva. Il dominio deve inoltre avere una politica di accesso che conceda le autorizzazioni appropriate al tuo ruolo di pipeline.

  • Un dominio o una raccolta VPC separata verso cui migrare i dati. Questo dominio o raccolta fungerà da serbatoio della pipeline.

  • Un ruolo della pipeline che OpenSearch Ingestion utilizzerà per leggere e scrivere nella raccolta o nel dominio. Includi l'Amazon Resource Name (ARN) di questo ruolo nella configurazione della pipeline. Per ulteriori informazioni, consulta le seguenti risorse:

Limitazioni

Le seguenti limitazioni si applicano quando si designano domini di OpenSearch servizio o raccolte OpenSearch Serverless come sink:

  • Una pipeline non può scrivere su più di un dominio VPC.

  • Puoi migrare i dati solo da o verso raccolte OpenSearch Serverless che utilizzano l'accesso VPC. Le raccolte pubbliche non sono supportate.

  • Non è possibile specificare una combinazione di VPC e domini pubblici in una configurazione a pipeline singola.

  • È possibile avere un massimo di 20 sink non collegati alla pipeline all'interno di una singola configurazione di pipeline.

  • È possibile specificare i sink scegliendo tra un massimo di tre tipi diversi Regioni AWS in una configurazione a tubazione singola.

  • Una pipeline con più sink potrebbe subire una riduzione della velocità di elaborazione nel tempo se uno dei sink rimane inattivo per troppo tempo o non dispone di una capacità sufficiente per ricevere i dati in entrata.

OpenSearch Il servizio come fonte

Il dominio o la raccolta che specifichi come origine è il luogo da cui vengono migrati i dati.

Creazione di un ruolo di pipeline in IAM

Per creare la pipeline di OpenSearch Ingestion, devi prima creare un ruolo di pipeline per concedere l'accesso in lettura e scrittura tra domini o raccolte. A tale scopo, effettuate le seguenti operazioni:

  1. Crea una nuova politica di autorizzazioni in IAM da collegare al ruolo della pipeline. Assicurati di consentire le autorizzazioni per leggere dalla fonte e scrivere nel sink. Per ulteriori informazioni sull'impostazione delle autorizzazioni della pipeline IAM per i domini di OpenSearch servizio, consulta e. Concedere alle pipeline OpenSearch di Amazon Ingestion l'accesso ai domini Concedere alle pipeline OpenSearch di Amazon Ingestion l'accesso alle raccolte

  2. Specificate le seguenti autorizzazioni all'interno del ruolo della pipeline da leggere dalla fonte:

    { "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":"es:ESHttpGet", "Resource":[ "arn:aws:es:us-east-1:{account-id}:domain/{domain-name}/", "arn:aws:es:us-east-1:{account-id}:domain/{domain-name}/_cat/indices", "arn:aws:es:us-east-1:{account-id}:domain/{domain-name}/_search", "arn:aws:es:us-east-1:{account-id}:domain/{domain-name}/_search/scroll", "arn:aws:es:us-east-1:{account-id}:domain/{domain-name}/*/_search" ] }, { "Effect":"Allow", "Action":"es:ESHttpPost", "Resource":[ "arn:aws:es:us-east-1:{account-id}:domain/{domain-name}/*/_search/point_in_time", "arn:aws:es:us-east-1:{account-id}:domain/{domain-name}/*/_search/scroll" ] }, { "Effect":"Allow", "Action":"es:ESHttpDelete", "Resource":[ "arn:aws:es:us-east-1:{account-id}:domain/{domain-name}/_search/point_in_time", "arn:aws:es:us-east-1:{account-id}:domain/{domain-name}/_search/scroll" ] } ] }

Creare una pipeline

Dopo aver associato la policy al ruolo della pipeline, utilizza il blueprint di AWSOpenSearchDataMigrationPipelinemigrazione per creare la pipeline. Questo blueprint include una configurazione predefinita per la migrazione dei dati tra OpenSearch domini o raccolte di servizi. Per ulteriori informazioni, consulta Utilizzo dei blueprint per creare una pipeline.

Nota

OpenSearch Ingestion utilizza la versione e la distribuzione del dominio di origine per determinare il meccanismo da utilizzare per la migrazione. Alcune versioni supportano l'opzione. point_in_time OpenSearch Serverless utilizza l'search_afteropzione perché non supporta point_in_time oscroll.

È possibile che durante il processo di migrazione siano in corso di creazione nuovi indici oppure che i documenti vengano aggiornati durante la migrazione. Per questo motivo, potrebbe essere necessario eseguire una scansione singola o più scansioni dei dati dell'indice di dominio per raccogliere dati nuovi o aggiornati.

Specificate il numero di scansioni da eseguire configurando la configurazione index_read_count e interval nella pipeline. L'esempio seguente mostra come eseguire scansioni multiple:

scheduling: interval: "PT2H" index_read_count: 3 start_time: "2023-06-02T22:01:30.00Z"

OpenSearch Ingestion utilizza la seguente configurazione per garantire che i dati vengano scritti nello stesso indice e mantengano lo stesso ID del documento:

index: "${getMetadata(\"opensearch-index\")}" document_id: "${getMetadata(\"opensearch-document_id\")}"

Specificazione di più sink di dominio di servizio OpenSearch

È possibile specificare più domini di OpenSearch servizio pubblici come destinazioni per i dati. È possibile utilizzare questa funzionalità per eseguire il routing condizionale o replicare i dati in entrata in più domini di servizio. OpenSearch È possibile specificare fino a 10 diversi domini di servizio pubblici OpenSearch come sink.

Nell'esempio seguente, i dati in entrata vengono instradati in modo condizionale a diversi domini di servizio: OpenSearch

... route: - 2xx_status: "/response >= 200 and /response < 300" - 5xx_status: "/response >= 500 and /response < 600" sink: - opensearch: hosts: [ "https://search-response-2xx.us-east-1.es.amazonaws.com" ] aws: sts_role_arn: "arn:aws:iam::123456789012:role/Example-Role" region: "us-east-1" index: "response-2xx" routes: - 2xx_status - opensearch: hosts: [ "https://search-response-5xx.us-east-1.es.amazonaws.com" ] aws: sts_role_arn: "arn:aws:iam::123456789012:role/Example-Role" region: "us-east-1" index: "response-5xx" routes: - 5xx_status

Migrazione dei dati verso una raccolta OpenSearch VPC serverless

È possibile utilizzare OpenSearch Ingestion per migrare i dati da un dominio di OpenSearch servizio di origine o da una raccolta OpenSearch Serverless a un sink di raccolta VPC. È necessario fornire una politica di accesso alla rete all'interno della configurazione della pipeline. Per ulteriori informazioni sull'inserimento di dati nelle raccolte VPC OpenSearch serverless, vedere. Tutorial: Inserimento di dati in una raccolta con Amazon Ingestion OpenSearch

Per migrare i dati in una raccolta VPC
  1. Crea una raccolta OpenSearch serverless. Per istruzioni, consulta Tutorial: Inserimento di dati in una raccolta con Amazon Ingestion OpenSearch .

  2. Crea una politica di rete per la raccolta che specifichi l'accesso VPC sia all'endpoint di raccolta che all'endpoint Dashboards. Per istruzioni, consulta Accesso alla rete per Amazon OpenSearch Serverless.

  3. Crea il ruolo pipeline se non ne hai già uno. Per istruzioni, consulta Ruolo Pipeline.

  4. Crea la pipeline. Per istruzioni, consultare Utilizzo dei blueprint per creare una pipeline.