Regras de seleção e ações - AWS Database Migration Service

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á.

Regras de seleção e ações

Usando o mapeamento de tabela, é possível especificar as tabelas, as exibições e os esquemas com os quais deseja trabalhar utilizando ações e regras de seleção. Os seguintes valores podem ser aplicados a regras de mapeamento de tabela que utilizam o tipo de regra de seleção.

Atenção

Não inclua dados confidenciais nessas regras.

Parameter Possíveis valores Descrição
rule-type selection Uma regra de seleção. Defina pelo menos uma regra de seleção ao especificar um mapeamento de tabelas.
rule-id Um valor numérico. Um valor numérico exclusivo para identificar a regra. Se você criar a regra usando o console, o console criará esse valor para você.
rule-name Um valor alfanumérico. Um nome exclusivo para identificar a regra. Se você criar a regra usando o console, o console criará esse valor para você.
rule-action include, exclude, explicit Um valor que inclui ou exclui o objeto ou objetos selecionados pela regra. Se explicit for especificado, será possível selecionar e incluir apenas um objeto que corresponda a uma tabela e a um esquema especificados explicitamente.
object-locator Um objeto com os seguintes parâmetros:
  • schema-name: o nome do esquema.

  • table-name: o nome da tabela.

  • (Opcional) table-type: table | view | all, para indicar se table-name se refere apenas a tabelas, visualizações ou ambas. O padrão é table.

    AWS DMS carrega visualizações somente em uma tarefa de carga completa. Se você tiver apenas tarefas de carga completa e captura de dados alterados (CDC), configure pelo menos uma full-load-only tarefa para carregar suas visualizações.

    Nem todos os endpoints de destino aceitam visualizações como fonte de replicação, mesmo com carga total (por exemplo, Amazon OpenSearch Service). Verifique as limitações do endpoint de destino.

O nome de cada esquema e tabela, ou exibição, aos quais a regra se aplica. Também é possível especificar se uma regra inclui apenas tabelas, somente visualizações ou ambas. Se rule-action for include ou exclude, será possível utilizar o sinal de porcentagem "%" como um curinga para todo ou parte do valor do parâmetro schema-name e table-name. Para obter informações sobre outros curingas que é possível utilizar, consulte Curingas no mapeamento de tabela. Assim, você pode corresponder estes itens:

  • Uma única tabela, visualização ou coleção em um único esquema

  • Uma única tabela, visualização ou coleção em alguns ou todos os esquemas

  • Algumas ou todas as tabelas e visualizações em um único esquema ou coleções em um único banco de dados

  • Algumas ou todas as tabelas e visualizações em alguns ou todos os esquemas ou coleções em alguns ou todos os bancos de dados

Se rule-action for explicit, você só poderá especificar o nome exato de uma única tabela e esquema (sem curingas).

As origens compatíveis com visualizações incluem:

  • Oracle

  • Microsoft SQL Server

  • PostgreSQL

  • IBM Db2 LUW

  • IBM Db2 z/OS

  • SAP Adaptive Server Enterprise (ASE)

  • MySQL

  • AURORA

  • AURORA Sem Servidor

  • MariaDB

nota

AWS DMS nunca carrega uma visualização de origem em uma visualização de destino. Uma exibição de origem é carregada em uma tabela equivalente no destino com o mesmo nome que a exibição na origem.

As origens compatíveis com bancos de dados que contêm coleções incluem:

  • MongoDB

  • Amazon DocumentDB

load-order Um inteiro positivo. O valor máximo é 2.147.483.647. Indica a prioridade para carregar tabelas e exibições. Tabelas e exibições com valores mais altos são carregadas primeiro.
filters Uma matriz de objetos . Um ou mais objetos para filtrar a origem. Você especifica parâmetros de objetos para filtragem em uma única coluna na origem. Você especifica vários objetos para filtragem em várias colunas. Para obter mais informações, consulte Usar filtros de origem.
exemplo Migrar todas as tabelas em um esquema

O exemplo a seguir migra todas as tabelas de um esquema chamado Test da origem para o endpoint de destino.

{ "rules": [ { "rule-type": "selection", "rule-id": "1", "rule-name": "1", "object-locator": { "schema-name": "Test", "table-name": "%" }, "rule-action": "include" } ] }
exemplo Migrar algumas tabelas em um esquema

O exemplo a seguir migra todas as tabelas, exceto as que começam com DMS, de um esquema chamado Test na origem para o endpoint de destino.

{ "rules": [ { "rule-type": "selection", "rule-id": "1", "rule-name": "1", "object-locator": { "schema-name": "Test", "table-name": "%" }, "rule-action": "include" }, { "rule-type": "selection", "rule-id": "2", "rule-name": "2", "object-locator": { "schema-name": "Test", "table-name": "DMS%" }, "rule-action": "exclude" } ] }
exemplo Migrar uma única tabela especificada em um único esquema

O exemplo a seguir migra a tabela Customer do esquema NewCust na origem para o endpoint de destino.

{ "rules": [ { "rule-type": "selection", "rule-id": "1", "rule-name": "1", "object-locator": { "schema-name": "NewCust", "table-name": "Customer" }, "rule-action": "explicit" } ] }
nota

É possível selecionar explicitamente várias tabelas e esquemas especificando várias regras de seleção.

exemplo Migrar tabelas em uma ordem definida

O exemplo a seguir migra duas tabelas. A tabela loadfirst (com prioridade 1) é inicializada antes da tabela loadsecond.

{ "rules": [ { "rule-type": "selection", "rule-id": "1", "rule-name": "1", "object-locator": { "schema-name": "Test", "table-name": "loadsecond" }, "rule-action": "include", "load-order": "1" }, { "rule-type": "selection", "rule-id": "2", "rule-name": "2", "object-locator": { "schema-name": "Test", "table-name": "loadfirst" }, "rule-action": "include", "load-order": "2" } ] }
nota

load-order é aplicável à inicialização da tabela. A carga de uma tabela sucessiva não aguardará a conclusão de uma carga de tabela anterior se MaxFullLoadSubTasks for maior que 1.

exemplo Migrar algumas exibições em um esquema

O exemplo a seguir migra algumas exibições de um esquema chamado Test na origem para tabelas equivalentes no destino.

{ "rules": [ { "rule-type": "selection", "rule-id": "2", "rule-name": "2", "object-locator": { "schema-name": "Test", "table-name": "view_DMS%", "table-type": "view" }, "rule-action": "include" } ] }
exemplo Migrar todas as tabelas e exibições em um esquema

O exemplo a seguir migra todas as tabelas e exibições de um esquema chamado report na origem para tabelas equivalentes no destino.

{ "rules": [ { "rule-type": "selection", "rule-id": "3", "rule-name": "3", "object-locator": { "schema-name": "report", "table-name": "%", "table-type": "all" }, "rule-action": "include" } ] }