Integrazione compatibile con Aurora PostgreSQL con database eterogenei - AWS Guida prescrittiva

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Integrazione compatibile con Aurora PostgreSQL con database eterogenei

Per integrare Aurora PostgreSQL compatibile con i database remoti di SQL Server, usa l'estensione Tabular Data Stream foreign data wrapper (). tds_fdw Utilizzando l'tds_fdwestensione, puoi implementare la funzionalità di query federata per interagire con qualsiasi database remoto basato su SQL Server, sia locale che gestito o autogestito su Amazon. EC2 L'tds_fdwestensione è disponibile in tutte le versioni attualmente supportate di Amazon RDS for PostgreSQL e Aurora PostgreSQL.

Casi d'uso e passaggi di alto livello di tds_fdw

L'integrazione di Aurora PostgreSQL compatibile con database eterogenei come SQL Server supporta i seguenti casi d'uso:

  • Architetture ibride ‒ L'organizzazione potrebbe disporre di database SQL Server esistenti che devono coesistere e integrarsi con Aurora PostgreSQL Compatible. In questi casi, Aurora PostgreSQL Compatible può far parte di un'architettura ibrida, in cui interagisce con database eterogenei per scambiare dati o eseguire operazioni specifiche. Grazie a questa integrazione, l'organizzazione può utilizzare i punti di forza di diverse piattaforme di database mantenendo al contempo gli investimenti esistenti.

  • Reporting e analisi ‒ È possibile utilizzare Aurora, compatibile con PostgreSQL, come database di reporting o analisi. È possibile consolidare i dati da più fonti, inclusi i database Oracle e SQL Server. Questo caso d'uso è comune negli scenari in cui le organizzazioni desiderano creare database di report o data mart specializzati su misura per unità aziendali o casi d'uso specifici.

Per configurare l'tds_fwdestensione in Aurora PostgreSQL compatibile, utilizza i seguenti passaggi di alto livello:

  1. Connect al cluster Aurora compatibile con PostgreSQL utilizzando un client PostgreSQL e crea l'estensione: tds_fdw

    CREATE EXTENSION tds_fdw;

    Questa estensione offre la funzionalità per accedere e interrogare i dati da database SQL Server remoti come se fossero tabelle locali.

  2. Crea un oggetto server che rappresenti il database remoto compatibile con SQL Server o TDS a cui desideri connetterti.

  3. Assicurati che siano presenti i gruppi di sicurezza e le configurazioni di rete necessari per consentire ad Aurora PostgreSQL Compatible di connettersi al database remoto di SQL Server.

    Se il database remoto è ospitato in locale, potrebbe essere necessario configurare una VPN o una connessione. AWS Direct Connect

    Esegui il comando seguente:

    CREATE SERVER my_remote_sql_server FOREIGN DATA WRAPPER tds_fdw OPTIONS ( servername 'your_server_name', port '1433', instance 'your_instance_name' );
  4. Definisci una mappatura utente che mappa un utente compatibile con Aurora PostgreSQL a un utente sul database remoto compatibile con SQL Server o TDS:

    CREATE USER MAPPING FOR postgres SERVER my_remote_sql_server OPTIONS ( username 'your_sql_server_username', password 'your_sql_server_password' );
  5. Crea una tabella esterna che rappresenti una tabella o una vista nel database remoto compatibile con SQL Server o 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. Crea una tabella esterna basata sulla query 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. Interroga la tabella esterna come faresti con qualsiasi altra tabella compatibile con Aurora PostgreSQL:

    SELECT * FROM sql_server_table;  SELECT * FROM mssql_people; -- Query based on table
  8. Importa la tabella da SQL Server a PostgreSQL:

    IMPORT FOREIGN SCHEMA dbo LIMIT TO (emp) FROM SERVER my_remote_sql_server INTO public_fdw;
  9. Per convalidare il piano di interrogazione, esegui: EXPLAIN SELECT

    EXPLAIN SELECT * FROM mssql_people;
Nota

Le operazioni DML (Data Manipulation Language) non sono disponibili tramite l'estensione. tds_fdw Il sistema non supporta l'esecuzione di operazioni DML su diversi motori di database. INSERT, DELETEUPDATE, e non TRUNCATE TABLE avrà esito positivo sul server SQL remoto.