As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Usando um cluster OpenSearch do Amazon Service como destino para AWS Database Migration Service
Você pode usar AWS DMS para migrar dados para o Amazon OpenSearch Service (OpenSearch Service). OpenSearch O serviço é um serviço gerenciado que facilita a implantação, a operação e a escalabilidade de um cluster OpenSearch de serviços.
No OpenSearch Service, você trabalha com índices e documentos. Um índice é uma coleção de documentos e um documento é um objeto JSON contendo valores escalares, matrizes e outros objetos. OpenSearch fornece uma linguagem de JSON-based consulta, para que você possa consultar dados em um índice e recuperar os documentos correspondentes.
Quando AWS DMS cria índices para um endpoint de destino para OpenSearch Service, ele cria um índice para cada tabela a partir do endpoint de origem. O custo da criação de um índice OpenSearch de serviços depende de vários fatores. Esses são o número de índices criados, a quantidade total de dados nesses índices e a pequena quantidade de metadados que são OpenSearch armazenados para cada documento.
Configure seu cluster de OpenSearch serviços com recursos de computação e armazenamento apropriados para o escopo de sua migração. É recomendável considerar os seguintes fatores, dependendo da tarefa de replicação a ser utilizada:
-
Para uma carga máxima de dados, considere a quantidade total de dados a ser migrada e a velocidade da transferência.
-
Para replicar alterações contínuas, considere a frequência das atualizações e os requisitos de latência para todo o processo.
Além disso, defina as configurações de índice em seu OpenSearch cluster, prestando muita atenção à contagem de documentos.
Configurações da tarefa de carga máxima com vários threads
Para ajudar a aumentar a velocidade da transferência, AWS DMS oferece suporte a uma carga completa de vários segmentos para um cluster de destino do OpenSearch Service. AWS DMS suporta esse multithreading com configurações de tarefas que incluem o seguinte:
-
MaxFullLoadSubTasks: utilize esta opção para indicar o número máximo de tabelas de origem a serem carregadas em paralelo. O DMS carrega cada tabela em seu índice de destino OpenSearch de serviço correspondente usando uma subtarefa dedicada. O padrão é 8; o valor máximo é 49. -
ParallelLoadThreads— Use essa opção para especificar o número de segmentos AWS DMS usados para carregar cada tabela em seu índice OpenSearch de destino de serviço. O valor máximo para uma meta OpenSearch de serviço é 32. Você pode solicitar o aumento desse limite máximo.nota
Se você não alterar
ParallelLoadThreadsde seu padrão (0), o AWS DMS transferirá um único registro por vez. Essa abordagem coloca uma carga indevida em seu cluster OpenSearch de serviços. Defina essa opção como 1 ou mais. -
ParallelLoadBufferSize— Use essa opção para especificar o número máximo de registros a serem armazenados no buffer que os threads de carregamento paralelo usam para carregar dados no destino do OpenSearch serviço. O valor padrão é 50. Valor máximo de 1.000. Use essa configuração comParallelLoadThreads;ParallelLoadBufferSizeé válido somente quando há mais de um thread.
Para obter mais informações sobre como o DMS carrega um cluster de OpenSearch serviços usando multithreading, consulte a postagem do AWS blog Scale Amazon OpenSearch Service for migrations. AWS Database Migration Service
Configurações da tarefa de carga de CDC multithread
Você pode melhorar o desempenho da captura de dados de alteração (CDC) para um cluster OpenSearch de destino de serviço usando configurações de tarefas para modificar o comportamento da chamada de PutRecords API. Para fazer isso, especifique o número de threads simultâneos, filas por thread e o número de registros a serem armazenados em um buffer usando as configurações da tarefa ParallelApply*. Por exemplo, suponha que você queira executar uma carga de CDC e aplicar 32 threads em paralelo. Você também quer acessar 64 filas por thread, com 50 registros armazenados por buffer.
nota
O suporte para o uso de configurações de ParallelApply* tarefas durante o CDC para endpoints OpenSearch de destino do Amazon Service está disponível nas AWS DMS versões 3.4.0 e superiores.
Para promover o desempenho do CDC, AWS DMS oferece suporte às seguintes configurações de tarefas:
-
ParallelApplyThreads— Especifica o número de threads simultâneos que são AWS DMS usados durante um carregamento de CDC para enviar registros de dados para um endpoint de destino do OpenSearch Serviço. O valor padrão é zero (0) e o valor máximo é 32. -
ParallelApplyBufferSize— Especifica o número máximo de registros a serem armazenados em cada fila de buffer para que threads simultâneos sejam enviados a um endpoint de destino de OpenSearch serviço durante um carregamento de CDC. O valor padrão é 100 e o valor máximo é 1.000. Use essa opção quandoParallelApplyThreadsespecificar mais de um thread. -
ParallelApplyQueuesPerThread— Especifica o número de filas que cada thread acessa para retirar registros de dados das filas e gerar uma carga em lote para um endpoint de OpenSearch serviço durante o CDC.
Ao usar configurações da tarefa ParallelApply*, o partition-key-type padrão é a primary-key da tabela, não o schema-name.table-name.
Migrando de uma tabela de banco de dados relacional para um índice de serviço OpenSearch
AWS DMS suporta a migração de dados para os tipos OpenSearch de dados escalares do Service. Ao migrar de um banco de dados relacional como Oracle ou MySQL para o OpenSearch Service, talvez você queira reestruturar a forma como armazena esses dados.
AWS DMS oferece suporte aos seguintes tipos de dados escalares de OpenSearch serviço:
-
Booleano
-
Data
-
Float
-
Int
-
String
AWS DMS converte dados do tipo Date em tipo String. É possível especificar o mapeamento personalizado para interpretar essas datas.
AWS DMS não oferece suporte à migração de tipos de dados LOB.
Pré-requisitos para usar o Amazon OpenSearch Service como alvo para AWS Database Migration Service
Antes de começar a trabalhar com um banco de dados de OpenSearch serviços como destino para AWS DMS, certifique-se de criar uma função AWS Identity and Access Management (IAM). Essa função deve permitir AWS DMS acessar os índices OpenSearch de serviço no endpoint de destino. O conjunto mínimo de permissões de acesso é mostrado na seguinte política do IAM.
A função que você usa para a migração para o OpenSearch Serviço deve ter as seguintes permissões.
No exemplo anterior, substitua pelo identificador de AWS região, region pelo ID AWS da sua conta e account-id pelo nome do seu domínio do Amazon OpenSearch Service. Um exemplo é domain-namearn:aws:es:us-west-2:123456789012:domain/my-es-domain
Configurações de endpoint ao usar o OpenSearch Serviço como destino para AWS DMS
Você pode usar as configurações do endpoint para configurar seu banco de dados OpenSearch de destino de serviço de forma semelhante ao uso de atributos de conexão extras. Você especifica as configurações ao criar o endpoint de destino usando o AWS DMS console ou usando o create-endpoint comando no AWS CLI, com a sintaxe --elasticsearch-settings '{" JSON.EndpointSetting":
"value", ...}'
A tabela a seguir mostra as configurações de endpoint que você pode usar com o OpenSearch Service como alvo.
| Nome do atributo | Valores válidos | Valor padrão e descrição |
|---|---|---|
|
|
Um inteiro positivo maior que 0, mas não maior que 100. |
10: para uma tarefa de carga máxima, esse atributo determina o limite de erros permitidos antes que ocorra uma falha na tarefa. Por exemplo, suponha que haja 1.500 linhas no endpoint de origem e o parâmetro foi definido como 10. Em seguida, a tarefa falhará AWS DMS se encontrar mais de 150 erros (10% da contagem de linhas) ao gravar no endpoint de destino. |
|
|
Um inteiro positivo maior do que 0. |
300 — Se ocorrer um erro no endpoint de destino, AWS DMS tente novamente por tantos segundos. Caso contrário, a tarefa apresentará falha. |
|
|
true ou false |
|
Limitações ao usar o Amazon OpenSearch Service como alvo para AWS Database Migration Service
As seguintes limitações se aplicam ao usar o Amazon OpenSearch Service como alvo:
-
OpenSearch O serviço usa mapeamento dinâmico (estimativa automática) para determinar os tipos de dados a serem usados nos dados migrados.
-
OpenSearch O serviço armazena cada documento com uma ID exclusiva. Veja um exemplo a seguir:
"_id": "D359F8B537F1888BC71FE20B3D79EAE6674BE7ACA9B645B0279C7015F6FF19FD"Cada ID de documento tem 64 bytes de comprimento; lembre-se de que você precisará desse espaço para armazenamento. Por exemplo, se você migrar 100.000 linhas de uma AWS DMS fonte, o índice de OpenSearch serviço resultante exigirá armazenamento para mais 6.400.000 bytes.
-
Com o OpenSearch Service, você não pode fazer atualizações nos atributos da chave primária. Essa restrição é importante quando se usa a replicação contínua com captura de dados de alterações (CDC), pois ela pode gerar dados indesejados no destino. No modo CDC, as chaves primárias são mapeadas para os valores de SHA256, que têm 32 bytes de comprimento. Eles são convertidos em cadeias de caracteres de 64 bytes legíveis por humanos e são usados como IDs de documentos de serviço. OpenSearch
-
Se AWS DMS encontrar algum item que não possa ser migrado, ele grava mensagens de erro no Amazon CloudWatch Logs. Esse comportamento difere do de outros endpoints de AWS DMS destino, que gravam erros em uma tabela de exceções.
-
AWS DMS não oferece suporte à conexão com um cluster do Amazon ES que tenha o controle de Fine-grained acesso habilitado com usuário principal e senha.
-
AWS DMS não oferece suporte ao OpenSearch Service serverless.
-
A partir da AWS DMS versão 3.1, o OpenSearch Service oferece suporte à gravação de dados em índices preexistentes.
-
A configuração da tarefa de replicação não
TargetTablePrepMode:TRUNCATE_BEFORE_LOADé suportada para uso com um endpoint de OpenSearch destino. -
Ao migrar dados para o Amazon Elasticsearch usando AWS DMS, os dados de origem devem ter uma chave primária ou uma coluna de identificador exclusivo. Se os dados de origem não tiverem uma chave primária ou um identificador exclusivo, será necessário definir um usando a regra de transformação define-primary-key.
Tipos de dados de destino para o Amazon OpenSearch Service
Quando AWS DMS migra dados de bancos de dados heterogêneos, o serviço mapeia os tipos de dados do banco de dados de origem para os tipos de dados intermediários chamados AWS DMS tipos de dados. Em seguida, o serviço mapeia os tipos de dados intermediários para os tipos de dados de destino. A tabela a seguir mostra cada tipo de AWS DMS dados e o tipo de dados para o qual ele é mapeado no OpenSearch Serviço.
| AWS DMS tipo de dados | OpenSearch Tipo de dados de serviço |
|---|---|
|
Booleano |
booleano |
|
Data |
string |
|
Time |
date |
|
Marca de data e hora |
date |
|
INT4 |
integer |
|
Real4 |
float |
|
UINT4 |
integer |
Para obter mais informações sobre AWS DMS os tipos de dados, consulteTipos de dados do AWS Database Migration Service.