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:
AtençãoAs regras de seleção do DMS diferenciam maiúsculas de minúsculas. No entanto, o resultado da seleção também depende da configuração do banco de dados do endpoint de origem. Se o endpoint de origem estiver configurado como sem distinção entre maiúsculas e minúsculas, as maiúsculas e minúsculas do valor do localizador de objetos não importam. Os identificadores de objetos corretos devem ser usados nas regras de seleção do DMS em um endpoint que não diferencia maiúsculas de minúsculas. |
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
Se As origens compatíveis com visualizações incluem:
notaAWS DMSO nunca carrega uma exibição de origem em uma exibiçã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:
|
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
As tabelas e visualizações são migradas de acordo com os respectivos valores de ordem de carregamento, e os valores mais altos têm prioridade na sequência da migração. O exemplo a seguir migra duas tabelas, loadfirst com um valor de prioridade 2 e loadsecond com um valor de prioridade 1. A tarefa de migração primeiro processa a tabela loadfirst para prosseguir para a tabela loadsecond. Esse mecanismo de priorização garante que as dependências entre os objetos do banco de dados sejam respeitadas durante o processo da migração.
{ "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" } ] }