Integração compatível com o Aurora PostgreSQL com bancos de dados heterogêneos - AWS Orientação prescritiva

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

Integração compatível com o Aurora PostgreSQL com bancos de dados heterogêneos

Para integrar o Aurora PostgreSQL compatível com bancos de dados remotos do SQL Server, use a extensão tabular Data Stream foreign data wrapper (). tds_fdw Ao usar a tds_fdw extensão, você pode implementar o recurso de consulta federada para interagir com qualquer banco de dados remoto baseado no SQL Server, tanto no local quanto gerenciado ou autogerenciado na Amazon. EC2 A tds_fdw extensão está disponível em todas as versões atualmente suportadas do Amazon RDS for PostgreSQL e Aurora PostgreSQL compatíveis.

Casos de uso e etapas de alto nível do tds_fdw

A integração do Aurora PostgreSQL compatível com bancos de dados heterogêneos, como o SQL Server, oferece suporte aos seguintes casos de uso:

  • Arquiteturas híbridas ‒ Sua organização pode ter bancos de dados SQL Server existentes que devem coexistir e se integrar com o Aurora PostgreSQL compatível. Nesses casos, o Aurora compatível com PostgreSQL pode fazer parte de uma arquitetura híbrida, na qual ele interage com bancos de dados heterogêneos para trocar dados ou realizar operações específicas. Com essa integração, sua organização pode usar os pontos fortes de diferentes plataformas de banco de dados enquanto mantém seus investimentos existentes.

  • Relatórios e análises ‒ Você pode usar o Aurora compatível com PostgreSQL como um banco de dados de relatórios ou análises. Você pode consolidar dados de várias fontes, incluindo bancos de dados Oracle e SQL Server. Esse caso de uso é comum em cenários em que as organizações desejam criar bancos de dados de relatórios especializados ou data marts personalizados para unidades de negócios ou casos de uso específicos.

Para configurar a tds_fwd extensão no Aurora compatível com PostgreSQL, use as seguintes etapas de alto nível:

  1. Conecte-se ao seu cluster compatível com o Aurora PostgreSQL usando um cliente PostgreSQL e crie a extensão: tds_fdw

    CREATE EXTENSION tds_fdw;

    Essa extensão fornece a funcionalidade de acessar e consultar dados de bancos de dados remotos do SQL Server como se fossem tabelas locais.

  2. Crie um objeto de servidor que represente o banco de dados remoto compatível com SQL Server ou TDS ao qual você deseja se conectar.

  3. Certifique-se de que os grupos de segurança e as configurações de rede necessários estejam prontos para permitir que o Aurora, compatível com o PostgreSQL, se conecte ao banco de dados remoto do SQL Server.

    Se o banco de dados remoto estiver hospedado no local, talvez seja necessário configurar uma VPN ou uma AWS Direct Connect conexão.

    Execute o seguinte comando:

    CREATE SERVER my_remote_sql_server FOREIGN DATA WRAPPER tds_fdw OPTIONS ( servername 'your_server_name', port '1433', instance 'your_instance_name' );
  4. Defina um mapeamento de usuário que mapeie um usuário compatível com o Aurora PostgreSQL para um usuário no banco de dados remoto compatível com SQL Server ou TDS:

    CREATE USER MAPPING FOR postgres SERVER my_remote_sql_server OPTIONS ( username 'your_sql_server_username', password 'your_sql_server_password' );
  5. Crie uma tabela externa que represente uma tabela ou exibição no banco de dados remoto compatível com SQL Server ou TDS:

    CREATE FOREIGN TABLE sql_server_table ( column1 INTEGER, column2 VARCHAR(50) ) SERVER my_remote_sql_server OPTIONS ( schema_name 'your_schema_name', table_name 'your_table_name' );
  6. Crie uma tabela externa com base na consulta SQL:

    CREATE FOREIGN TABLE mssql_people ( empno INT NOT NULL , ename VARCHAR(10) NULL, dept INT) SERVER my_remote_sql_server OPTIONS (  query 'SELECT empno, ename, dept FROM dbo.emp');
  7. Consulte a tabela externa como você consultaria qualquer outra tabela compatível com o Aurora PostgreSQL:

    SELECT * FROM sql_server_table;  SELECT * FROM mssql_people; -- Query based on table
  8. Importe a tabela do SQL Server para o PostgreSQL:

    IMPORT FOREIGN SCHEMA dbo LIMIT TO (emp) FROM SERVER my_remote_sql_server INTO public_fdw;
  9. Para validar o plano de consulta, executeEXPLAIN SELECT:

    EXPLAIN SELECT * FROM mssql_people;
nota

As operações de linguagem de manipulação de dados (DML) não estão disponíveis por meio da tds_fdw extensão. O sistema não suporta a execução de operações de DML em diferentes mecanismos de banco de dados. INSERT,DELETE,UPDATE, e não TRUNCATE TABLE terá êxito no servidor SQL remoto.