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_fdw
estensione, 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_fdw
estensione è 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_fwd
estensione in Aurora PostgreSQL compatibile, utilizza i seguenti passaggi di alto livello:
-
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.
-
Crea un oggetto server che rappresenti il database remoto compatibile con SQL Server o TDS a cui desideri connetterti.
-
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' );
-
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' );
-
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' );
-
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');
-
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
-
Importa la tabella da SQL Server a PostgreSQL:
IMPORT FOREIGN SCHEMA dbo LIMIT TO (emp) FROM SERVER my_remote_sql_server INTO public_fdw;
-
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
, DELETE
UPDATE
, e non TRUNCATE TABLE
avrà esito positivo sul server SQL remoto.