Como usar o data warehouse do Oracle como origem para a AWS SCT - AWS Schema Conversion Tool

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

Como usar o data warehouse do Oracle como origem para a AWS SCT

Você pode usar AWS SCT para converter esquemas, objetos de código e código de aplicativo do data warehouse do Oracle para o Amazon Redshift ou o Amazon Redshift e AWS Glue usados em combinação.

Privilégios do data warehouse do Oracle como origem

Os privilégios obrigatórios para data warehouse do Oracle como origem são listados a seguir:

  • connect

  • select_catalog_role

  • select any dictionary

Conectando-se a um data warehouse Oracle de origem

Use o procedimento a seguir para se conectar ao banco de dados de origem do data warehouse do Oracle com a AWS Schema Conversion Tool.

Para se conectar a um banco de dados de origem do data warehouse do Oracle
  1. Na AWS Schema Conversion Tool, escolha Adicionar origem.

  2. Escolha Oracle e, em seguida, escolha Avançar.

    A caixa de diálogo Adicionar origem é exibida.

  3. Em Nome da conexão, insira um nome para o banco de dados. A AWS SCT exibe esse nome na árvore no painel esquerdo.

  4. Use as credenciais do banco de dados da AWS Secrets Manager ou insira-as manualmente:

    • Para usar as credenciais do banco de dados do Secrets Manager, use as instruções a seguir:

      1. Em Segredo da AWS, escolha o nome do seu segredo.

      2. Escolha Preencher para preencher automaticamente todos os valores na caixa de diálogo de conexão do banco de dados do Secrets Manager.

      Para obter informações sobre o uso de credenciais de banco de dados do Secrets Manager, consulte a Usar o AWS Secrets Manager.

    • Para inserir manualmente as informações de conexão do data warehouse do Oracle de origem, use as instruções a seguir:

      Parâmetro Ação
      Type

      Escolha o tipo de conexão ao seu banco de dados. Dependendo do tipo, forneça as informações adicionais seguintes:

      • SID

        • Nome do servidor: o nome Sistema de Nomes de Domínio (DNS) ou o endereço IP do servidor de banco de dados de origem.

        • Porta do servidor: a porta usada para se conectar ao servidor de banco de dados de origem.

        • Oracle SID: o ID do sistema da Oracle (SID). Para encontrar o Oracle SID, envie a consulta a seguir para seu banco de dados Oracle:

          SELECT sys_context('userenv','instance_name') AS SID FROM dual;

      • Nome do serviço

        • Nome do servidor: o nome DNS ou o endereço IP do servidor de banco de dados de origem.

        • Porta do servidor: a porta usada para se conectar ao servidor de banco de dados de origem.

        • Nome do serviço: o nome do serviço Oracle ao qual se conectar.

      • Alias TNS

        • Caminho do arquivo TNS: o caminho para o arquivo que contém as informações de conexão do nome Transparent Network Substrate (TNS).

        • Caminho do arquivo TNS: o alias TNS do arquivo a ser usado para a conexão com o banco de dados de origem.

      • Identificador de conexão TNS

        • Identificador de conexão TNS: o identificador das informações de conexão TNS registradas.

      Nome de usuário e Senha

      Insira as credenciais do banco de dados para se conectar ao seu servidor de banco de dados de origem.

      A AWS SCT usa a senha para se conectar ao seu banco de dados de origem somente quando você escolhe se conectar ao seu banco de dados em um projeto. Para proteger-se contra a exposição da senha do banco de dados de origem, a AWS SCT não armazena a senha por padrão. Se fechar o projeto da AWS SCT e abri-lo novamente, você será solicitado a informar a senha para se conectar ao banco de dados de origem, conforme necessário.

      Usar SSL

      Escolha essa opção para usar Secure Sockets Layer (SSL) para se conectar ao banco de dados. Forneça as seguintes informações adicionais, conforme aplicável, na guia SSL:

      • Autenticação SSL: selecione esta opção para usar a autenticação SSL para conexão.

      • Armazenamento de confiança: a localização de um armazenamento de confiança que contém certificados.

      • Armazenamento de chaves: a localização de um armazenamento de chaves que contém uma chave privada e certificados. Este valor será obrigatório se a autenticação SSL estiver selecionada. Caso contrário, é opcional.

      Armazenar senha

      A AWS SCT cria um cofre seguro para armazenar certificados SSL e senhas do banco de dados. Ao habilitar essa opção, você pode armazenar a senha do banco de dados e se conectar rapidamente a ele sem a necessidade de informar a senha.

      Caminho do driver Oracle

      Digite o caminho para o driver a ser usado para a conexão com o banco de dados de origem. Para obter mais informações, consulte Baixar os drivers de banco de dados necessários.

      Se você armazenar o caminho do driver nas configurações globais do projeto, o caminho do driver não aparecerá na caixa de diálogo de conexão. Para obter mais informações, consulte Armazenamento de caminhos do driver nas configurações globais.

  5. Escolha Testar conexão para verificar se a AWS SCT pode se conectar ao banco de dados de origem.

  6. Escolha Conectar para se conectar ao banco de dados de origem.

Configurações de conversão do data warehouse Oracle para o Amazon Redshift

Para editar as configurações de conversão do data warehouse do Oracle para o Amazon Redshift, escolha Configurações em AWS SCT e, em seguida, escolha Configurações de conversão. Na lista superior, escolha Oracle e, em seguida, escolha Oracle — Amazon Redshift. A AWS SCT exibe todas as configurações disponíveis para conversão do data warehouse do Oracle para o Amazon Redshift.

As configurações de conversão do data warehouse do Oracle para o Amazon Redshift em AWS SCT incluem opções para o seguinte:

  • Para limitar o número de comentários com itens de ação no código convertido.

    Em Adicionar comentários no código convertido para os itens de ação de severidade selecionada e superior, escolha a severidade dos itens de ação. A AWS SCT adiciona comentários no código convertido para itens de ação da severidade selecionada e superior.

    Por exemplo, para minimizar o número de comentários em seu código convertido, escolha Somente erros. Para incluir comentários para todos os itens de ação em seu código convertido, escolha Todas as mensagens.

  • Para definir o número máximo de tabelas que a AWS SCT pode aplicar ao seu cluster do Amazon Redshift de destino.

    Em O número máximo de tabelas para o cluster do Amazon Redshift de destino, escolha o número de tabelas que a AWS SCT pode aplicar ao seu cluster do Amazon Redshift.

    O Amazon Redshift tem cotas que limitam as tabelas de uso para diferentes tipos de nós de cluster. Se você escolher Auto, a AWS SCT determinará o número de tabelas a serem aplicadas ao seu cluster do Amazon Redshift de destino, dependendo do tipo de nó. Opcionalmente, escolha o valor manualmente. Para obter mais informações, consulte “Cotas e limites no Amazon Redshift” no Guia de gerenciamento de clusters do Amazon Redshift.

    A AWS SCT converte todas as suas tabelas de origem, mesmo que isso seja mais do que o seu cluster do Amazon Redshift pode armazenar. A AWS SCT armazena o código convertido em seu projeto e não o aplica ao banco de dados de destino. Se você atingir a cota de cluster do Amazon Redshift para as tabelas ao aplicar o código convertido, a AWS SCT exibirá uma mensagem de aviso. Além disso, a AWS SCT aplica tabelas ao seu cluster do Amazon Redshift de destino até que o número de tabelas atinja o limite.

  • Para migrar partições da tabela de origem para tabelas separadas no Amazon Redshift. Para fazer isso, selecione Usar a exibição UNION ALL e insira o número máximo de tabelas de destino que a AWS SCT pode criar para uma única tabela de origem.

    O Amazon Redshift não oferece suporte ao particionamento de tabelas. Para emular esse comportamento e acelerar a execução das consultas, a AWS SCT pode migrar cada partição da sua tabela de origem para uma tabela separada no Amazon Redshift. Em seguida, a AWS SCT cria uma exibição que inclui dados de todas essas tabelas.

    A AWS SCT determina automaticamente o número de partições na tabela de origem. Dependendo do tipo de particionamento da tabela de origem, esse número pode exceder a cota das tabelas que você pode aplicar ao seu cluster do Amazon Redshift. Para evitar atingir essa cota, insira o número máximo de tabelas de destino que a AWS SCT pode criar para partições de uma única tabela de origem. A opção padrão é 368 tabelas, que representam uma partição para 366 dias do ano e duas tabelas para partições NO RANGE e UNKNOWN.

  • Para converter as funções de formatação de tipo de dados como TO_CHAR, TO_DATE e TO_NUMBER com elementos de formato de data e hora que o Amazon Redshift não suporta. Por padrão, a AWS SCT usa as funções do pacote de extensão para emular o uso desses elementos de formato não suportados no código convertido.

    O modelo de formato de data e hora no Oracle inclui mais elementos em comparação com strings de formato de data e hora no Amazon Redshift. Quando seu código-fonte inclui somente elementos de formato de data e hora compatíveis com o Amazon Redshift, você não precisa das funções do pacote de extensões no código convertido. Para evitar o uso das funções do pacote de extensões no código convertido, selecione Elementos do formato Datetype que você usa no código Oracle são semelhantes às strings de formato de data e hora no Amazon Redshift. Nesse caso, o código convertido funciona mais rápido.

    O modelo de formato numérico no Oracle inclui mais elementos em comparação com strings de formato numérico no Amazon Redshift. Quando seu código-fonte inclui somente elementos de formato numérico compatíveis com o Amazon Redshift, você não precisa das funções do pacote de extensões no código convertido. Para evitar o uso das funções do pacote de extensões no código convertido, selecione Elementos de formato numérico que você usa no código Oracle são semelhantes às strings de formato numérico no Amazon Redshift. Nesse caso, o código convertido funciona mais rápido.

  • Para converter funções analíticas LEAD e LAG do Oracle. Por padrão, a AWS SCT gera um item de ação para cada função LEAD e LAG.

    Quando seu código-fonte não usa os valores padrão para offset nessas funções, a AWS SCT pode emular o uso dessas funções com a função NVL. Para fazer isso, selecione Usar a função NVL para emular o comportamento das funções LEAD e LAG do Oracle.

  • Para emular o comportamento das chaves primárias e exclusivas em seu cluster do Amazon Redshift, selecione Emular o comportamento das chaves primárias e exclusivas.

    O Amazon Redshift não impõe chaves exclusivas e primárias e as usa apenas para fins informativos. Se você usar essas restrições em seu código, certifique-se de que a AWS SCT emula o comportamento delas no código convertido.

  • Para aplicar compactação às colunas da tabela do Amazon Redshift. Para fazer isso, selecione Usar codificação de compressão.

    A AWS SCT atribui a codificação de compactação às colunas automaticamente usando o algoritmo padrão do Amazon Redshift. Para obter mais informações, consulte Codificações de compactação no Guia do desenvolvedor de banco de dados do Amazon Redshift.

    Por padrão, o Amazon Redshift não aplica compactação a colunas definidas como chaves de classificação e distribuição. É possível alterar esse comportamento e aplicar compactação a essas colunas. Para fazer isso, selecione Usar codificação de compactação para colunas KEY. Você pode selecionar essa opção somente ao selecionar a opção Usar codificação de compactação.

Configurações de otimização de conversão do data warehouse Oracle para o Amazon Redshift

Para editar as configurações de otimização de conversão do data warehouse do Oracle para o Amazon Redshift, escolha Configurações em AWS SCT e, em seguida, escolha Configurações de conversão. Na lista superior, escolha Oracle e, em seguida, escolha Oracle — Amazon Redshift. No painel esquerdo, escolha Estratégias de otimização. A AWS SCT exibe as configurações de otimização de conversão para conversão do data warehouse do Oracle para o Amazon Redshift.

As configurações de otimização de conversão do data warehouse do Oracle para o Amazon Redshift em AWS SCT incluem opções para o seguinte:

  • Para trabalhar com otimização automática de tabelas. Para fazer isso, selecione Usar o ajuste automático da tabela do Amazon Redshift.

    A otimização automática de tabelas é um processo de autoajuste no Amazon Redshift que otimiza automaticamente o design de tabelas. Para obter mais informações, consulte Como trabalhar com a otimização automática de tabelas no Guia do desenvolvedor do banco de dados Amazon Redshift.

    Para confiar somente na otimização automática da tabela, escolha Nenhuma para a Estratégia inicial de seleção de chave.

  • Para escolher chaves de classificação e distribuição usando sua estratégia.

    Você pode escolher chaves de classificação e distribuição usando metadados, informações estatísticas ou ambas as opções do Amazon Redshift. Para Estratégia inicial de seleção de chave na guia Estratégias de otimização, escolha uma das seguintes opções:

    • Use metadados, ignore informações estatísticas

    • Ignore metadados, use informações estatísticas

    • Use metadados e informações estatísticas

    Dependendo da opção escolhida, você pode selecionar estratégias de otimização. Em seguida, para cada estratégia, insira o valor (0-100). Esses valores definem o peso de cada estratégia. Usando esses valores de peso, a AWS SCT define como cada regra influencia na escolha das chaves de distribuição e classificação. Os valores padrão são baseados nas melhores práticas de migração da AWS.

    Você pode definir o tamanho de tabelas pequenas para a estratégia Localizar tabelas pequenas. Em Contagem mínima de linhas da tabela e Contagem máxima de linhas da tabela, insira o número mínimo e máximo de linhas em uma tabela para defini-la como uma tabela pequena. A AWS SCT aplica o estilo de distribuição ALL a tabelas pequenas. Nesse caso, uma cópia de toda a tabela é distribuída para cada nó.

  • Para configurar os detalhes da estratégia.

    Além de definir o peso de cada estratégia de otimização, você pode definir as configurações de otimização. Para fazer isso, escolha Otimização de conversões.

    • Em Limite de colunas da chave de classificação, insira o número máximo de colunas na chave de classificação.

    • Em Valor limite distorcido, insira a porcentagem (0-100) de um valor distorcido para uma coluna. A AWS SCT exclui colunas com o valor de inclinação maior que o limite da lista de candidatos para a chave de distribuição. A AWS SCT define o valor distorcido de uma coluna como a proporção percentual entre o número de ocorrências do valor mais comum e o número total de registros.

    • Para as N principais consultas da tabela do histórico de consultas, insira o número (1-100) das consultas usadas com mais frequência para análise.

    • Em Selecionar usuário de estatísticas, escolha o usuário do banco de dados para o qual você deseja analisar as estatísticas de consulta.

    Além disso, na guia Estratégias de otimização, você pode definir o tamanho das tabelas pequenas para a estratégia Localizar tabelas pequenas. Em Contagem mínima de linhas da tabela e Contagem máxima de linhas da tabela, insira o número mínimo e máximo de linhas em uma tabela para considerá-la como uma tabela pequena. A AWS SCT aplica o estilo de distribuição ALL a tabelas pequenas. Nesse caso, uma cópia de toda a tabela é distribuída para cada nó.