Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
A következőkre vonatkozik:
Azure Data Factory
Azure Synapse Analytics
Tipp.
Próbálja ki a Data Factoryt a Microsoft Fabricben, amely egy teljes körű elemzési megoldás a nagyvállalatok számára. A Microsoft Fabric az adattovábbítástól az adatelemzésig, a valós idejű elemzésig, az üzleti intelligenciáig és a jelentéskészítésig mindent lefed. Ismerje meg, hogyan indíthat új próbaverziót ingyenesen!
Ez a cikk azt ismerteti, hogyan használhatja a másolási tevékenységet az Azure Data Factoryben és a Synapse Analytics-folyamatokban az adatok PostgreSQL-adatbázisból való másolásához. A másolási tevékenység áttekintési cikkére épül, amely a másolási tevékenység általános áttekintését mutatja be.
Fontos
A PostgreSQL V1-összekötő eltávolítási fázisban van. Javasoljuk, hogy frissítse a PostgreSQL-összekötőt V1-ről V2-re.
Támogatott képességek
Ez a PostgreSQL-összekötő a következő képességekhez támogatott:
| Támogatott képességek | integrációs modul |
|---|---|
| Másolási tevékenység (forrás/-) | (1) (2) |
| Keresési tevékenység | (1) (2) |
(1) Azure-integrációs modul (2) Saját üzemeltetésű integrációs modul
A másolási tevékenység által forrásként/fogadóként támogatott adattárak listáját a Támogatott adattárak táblában találja.
Ez a PostgreSQL-összekötő támogatja a PostgreSQL 12-es vagy újabb verzióját.
Előfeltételek
Ha az adattár helyszíni hálózaton, Azure-beli virtuális hálózaton vagy Amazon Virtual Private Cloudon belül található, konfigurálnia kell egy saját üzemeltetésű integrációs modult a csatlakozáshoz.
Ha az adattár felügyelt felhőalapú adatszolgáltatás, használhatja az Azure Integration Runtime-ot. Ha a hozzáférés a tűzfalszabályokban jóváhagyott IP-címekre korlátozódik, hozzáadhat azure integration runtime IP-eket az engedélyezési listához.
Az Azure Data Factory felügyelt virtuális hálózati integrációs moduljával is elérheti a helyszíni hálózatot anélkül, hogy saját üzemeltetésű integrációs modult telepítene és konfigurálna.
A Data Factory által támogatott hálózati biztonsági mechanizmusokkal és lehetőségekkel kapcsolatos további információkért lásd az adathozzáférési stratégiákat.
Az Integrációs modul egy beépített PostgreSQL-illesztőt biztosít a 3.7-es verziótól kezdve, ezért nem kell manuálisan telepítenie az illesztőprogramokat.
Első lépések
A másolási tevékenység végrehajtásához egy folyamattal használhatja az alábbi eszközök vagy SDK-k egyikét:
- Adatok másolása eszköz
- Azure Portál
- .NET SDK
- Python SDK
- Azure PowerShell
- REST API
- Azure Resource Manager-sablon
Társított szolgáltatás létrehozása a PostgreSQL-hez felhasználói felülettel
Az alábbi lépésekkel létrehozhat egy társított szolgáltatást a PostgreSQL-hez az Azure Portal felhasználói felületén.
Keresse meg az Azure Data Factory vagy a Synapse-munkaterület Kezelés lapját, és válassza a Társított szolgáltatások lehetőséget, majd kattintson az Új gombra:
Keresse meg a Postgre-t, és válassza a PostgreSQL-összekötőt.
Konfigurálja a szolgáltatás részleteit, tesztelje a kapcsolatot, és hozza létre az új társított szolgáltatást.
Az összekötő konfigurációjának részletei
Az alábbi szakaszok a PostgreSQL-összekötőre jellemző Data Factory-entitások meghatározásához használt tulajdonságok részleteit ismertetik.
Társított szolgáltatás tulajdonságai
A PostgreSQL társított szolgáltatáshoz a következő tulajdonságok támogatottak:
| Tulajdonság | Leírás | Kötelező |
|---|---|---|
| típus | A típustulajdonságnak a következőnek kell lennie: PostgreSqlV2 | Igen |
| kiszolgáló | Megadja azt a gazdagépnevet – és opcionálisan portot –, amelyen a PostgreSQL fut. | Igen |
| átvisz | A PostgreSQL-kiszolgáló TCP-portja. | Nem |
| adatbázis | A PostgreSQL-adatbázis, amelyhez csatlakozni szeretne. | Igen |
| felhasználónév | A csatlakozáshoz használt felhasználónév. Az IntegratedSecurity használata esetén nem kötelező. | Igen |
| jelszó | A csatlakozáshoz használt jelszó. Az IntegratedSecurity használata esetén nem kötelező. | Igen |
| SSL mód | Az SSL használatát a kiszolgáló támogatásától függően szabályozza. - Letiltás: Az SSL le van tiltva. Ha a kiszolgáló SSL-t igényel, a kapcsolat sikertelen lesz. - Engedélyezés: Előnyben részesíti a nem SSL-kapcsolatokat, ha a kiszolgáló engedélyezi őket, de engedélyezze az SSL-kapcsolatokat. - Előnyben részesítjük az SSL-kapcsolatokat, ha a kiszolgáló engedélyezi őket, de ssl nélkül is engedélyezi a kapcsolatokat. - Kötelező: Sikertelen a kapcsolat, ha a kiszolgáló nem támogatja az SSL-t. - Ca ellenőrzése: Sikertelen a kapcsolat, ha a kiszolgáló nem támogatja az SSL-t. A kiszolgálótanúsítványt is ellenőrzi. - Verify-full: Sikertelen kapcsolat, ha a kiszolgáló nem támogatja az SSL-t. A kiszolgálótanúsítványt a gazdagép nevével is ellenőrzi. Beállítások: Letiltás (0) / Engedélyezés (1) / Prefer (2) (Alapértelmezett) / Kötelező (3) / Verify-ca (4) / Verify-full (5) |
Nem |
| hitelesítési típus | Az adatbázishoz való csatlakozás hitelesítési típusa. Csak az Alapszintű verziót támogatja. | Igen |
| connectVia | Az adattárhoz való csatlakozáshoz használandó integrációs modul . További információ az Előfeltételek szakaszból. Ha nincs megadva, az alapértelmezett Azure Integration Runtime-t használja. | Nem |
| További kapcsolati tulajdonságok: | ||
| séma | Beállítja a séma keresési útvonalát. | Nem |
| Összevonás | Használjuk-e a kapcsolatkészletezést? | Nem |
| Kapcsolatidőkorlát (connectionTimeout) | Az a várakozási idő (másodpercben), amikor megpróbál kapcsolatot létesíteni, mielőtt megszakítja a kísérletet, és hibát okozna. | Nem |
| parancskoridőzítés | Az a maximális várakozási idő (másodpercben), amelyet megengedünk egy parancs végrehajtására, mielőtt a próbálkozást megszakítanánk, és hibát generálnánk. Állítsa nullára a végtelenhez tartozó értéket. | Nem |
| Bizalom a szerver tanúsítványában | A kiszolgálótanúsítvány hitelesítés nélküli megbízhatósága. | Nem |
| SSL tanúsítvány | A kiszolgálónak küldendő ügyféltanúsítvány helye. | Nem |
| SSL kulcs | A kiszolgálónak küldendő ügyféltanúsítvány ügyfélkulcsának helye. | Nem |
| SSL jelszó | Ügyféltanúsítvány kulcsának jelszava. | Nem |
| readBufferSize | Meghatározza a belső puffer Npgsql olvasáskor használt méretét. A növekedés javíthatja a teljesítményt, ha nagy értékeket ad át az adatbázisból. | Nem |
| logParameters | Ha engedélyezve van, a parancsok végrehajtásakor a rendszer naplózza a paraméterértékeket. | Nem |
| időzóna | Lekéri vagy beállítja a munkamenet időzónát. | Nem |
| kódolás | Lekéri vagy beállítja a PostgreSQL-sztringadatok kódolásához/dekódolásához használt .NET-kódolást. | Nem |
Feljegyzés
Ahhoz, hogy az ODBC-kapcsolaton keresztül teljes KÖRŰ SSL-ellenőrzést lehessen végezni a saját üzemeltetésű integrációs modul használatakor, a PostgreSQL-összekötő helyett kifejezetten ODBC típusú kapcsolatot kell használnia, és végre kell hajtania a következő konfigurációt:
- Állítsa be a DSN-t bármely SHIR-kiszolgálón.
- Helyezze a Megfelelő tanúsítványt a PostgreSQL-hez a C:\Windows\ServiceProfiles\DIAHostService\AppData\Roaming\postgresql\root.crt fájlban az SHIR-kiszolgálókon. Itt keresi > az ODBC-illesztő az SSL-tanúsítványt, hogy ellenőrizze, mikor csatlakozik az adatbázishoz.
- Az adatgyári összekapcsolásban használjon ODBC típusú kapcsolatot, és a kapcsolati karakterlánc az SHIR-kiszolgálókon létrehozott DSN-re mutasson.
Példa:
{
"name": "PostgreSqlLinkedService",
"properties": {
"type": "PostgreSqlV2",
"typeProperties": {
"server": "<server>",
"port": 5432,
"database": "<database>",
"username": "<username>",
"password": {
"type": "SecureString",
"value": "<password>"
},
"sslmode": <sslmode>,
"authenticationType": "Basic"
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Példa: jelszó tárolása az Azure Key Vaultban
{
"name": "PostgreSqlLinkedService",
"properties": {
"type": "PostgreSqlV2",
"typeProperties": {
"server": "<server>",
"port": 5432,
"database": "<database>",
"username": "<username>",
"password": {
"type": "AzureKeyVaultSecret",
"store": {
"referenceName": "<Azure Key Vault linked service name>",
"type": "LinkedServiceReference"
},
"secretName": "<secretName>"
}
"sslmode": <sslmode>,
"authenticationType": "Basic"
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Adathalmaz tulajdonságai
Az adathalmazok meghatározásához elérhető szakaszok és tulajdonságok teljes listáját az adathalmazokról szóló cikkben találja. Ez a szakasz a PostgreSQL-adatkészlet által támogatott tulajdonságok listáját tartalmazza.
Az adatok PostgreSQL-ből való másolásához a következő tulajdonságok támogatottak:
| Tulajdonság | Leírás | Kötelező |
|---|---|---|
| típus | Az adathalmaz típustulajdonságának a következőnek kell lennie: PostgreSqlV2Table | Igen |
| séma | A séma neve. | Nem (ha "lekérdezés" van megadva a tevékenységforrásban) |
| tábla | A tábla neve. | Nem (ha "lekérdezés" van megadva a tevékenységforrásban) |
Példa
{
"name": "PostgreSQLDataset",
"properties":
{
"type": "PostgreSqlV2Table",
"linkedServiceName": {
"referenceName": "<PostgreSQL linked service name>",
"type": "LinkedServiceReference"
},
"annotations": [],
"schema": [],
"typeProperties": {
"schema": "<schema name>",
"table": "<table name>"
}
}
}
Ha a RelationalTable típusú adatkészletet használta, az továbbra is támogatott, míg javasolt, hogy az új adatkészletet használja a jövőben.
Másolási tevékenység tulajdonságai
A tevékenységek meghatározásához elérhető szakaszok és tulajdonságok teljes listáját a Folyamatok című cikkben találja. Ez a szakasz a PostgreSQL-forrás által támogatott tulajdonságok listáját tartalmazza.
PostgreSQL mint forrás
Ha adatokat szeretne másolni a PostgreSQL-ből, a másolási tevékenység forrás szakaszában az alábbi tulajdonságok támogatottak:
| Tulajdonság | Leírás | Kötelező |
|---|---|---|
| típus | A másolási tevékenység forrásának típustulajdonságának a következőnek kell lennie: PostgreSqlV2Source | Igen |
| lekérdezés | Az adatok olvasásához használja az egyéni SQL-lekérdezést. Például: "query": "SELECT * FROM \"MySchema\".\"MyTable\"" |
Nem (ha "tableName" van megadva az adathalmazban) |
| lekérdezési időkorlát | A parancs végrehajtására és a hiba generálására tett kísérlet befejezését megelőző várakozási idő alapértelmezés szerint 120 perc. Ha ennek a tulajdonságnak a paramétere be van állítva, az engedélyezett értékek időtartamok, például "02:00:00" (120 perc). További információ: CommandTimeout. Ha mindkettő commandTimeout és queryTimeout konfigurálva van, queryTimeout elsőbbséget élvez. |
Nem |
Feljegyzés
A séma és a táblanevek megkülönböztetik a kis- és nagybetűket. Csatolja őket "" (dupla idézőjelek) a lekérdezésbe.
Példa:
"activities":[
{
"name": "CopyFromPostgreSQL",
"type": "Copy",
"inputs": [
{
"referenceName": "<PostgreSQL input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "PostgreSqlV2Source",
"query": "SELECT * FROM \"MySchema\".\"MyTable\"",
"queryTimeout": "00:10:00"
},
"sink": {
"type": "<sink type>"
}
}
}
]
Ha RelationalSource gépelt forrást használt, azt továbbra is támogatják, de javasolt az új használata a jövőben.
Adattípus-leképezés a PostgreSQL-hez
Amikor adatokat másol a PostgreSQL-ből, a következő leképezéseket használja a PostgreSQL-adattípusoktól a szolgáltatás által belsőleg használt köztes adattípusokig. Lásd a séma- és adattípus-leképezéseket, hogy megtudja, a másolási tevékenység hogyan rendeli hozzá a forrássémát és adattípust a fogadósémához és adattípushoz.
| PostgreSQL-adattípus | Köztes szolgáltatás adattípusa a PostgreSQL V2-hez | Köztes szolgáltatás adattípusa a PostgreSQL V1-hez |
|---|---|---|
SmallInt |
Int16 |
Int16 |
Integer |
Int32 |
Int32 |
BigInt |
Int64 |
Int64 |
Decimal (Pontosság <= 28) |
Decimal |
Decimal |
Decimal (Pontosság > 28) |
Nem támogatott | String |
Numeric |
Decimal |
Decimal |
Real |
Single |
Single |
Double |
Double |
Double |
SmallSerial |
Int16 |
Int16 |
Serial |
Int32 |
Int32 |
BigSerial |
Int64 |
Int64 |
Money |
Decimal |
String |
Char |
String |
String |
Varchar |
String |
String |
Text |
String |
String |
Bytea |
Byte[] |
Byte[] |
Timestamp |
DateTime |
DateTime |
Timestamp with time zone |
DateTime |
String |
Date |
DateTime |
DateTime |
Time |
TimeSpan |
TimeSpan |
Time with time zone |
DateTimeOffset |
String |
Interval |
TimeSpan |
String |
Boolean |
Boolean |
Boolean |
Point |
String |
String |
Line |
String |
String |
Iseg |
String |
String |
Box |
String |
String |
Path |
String |
String |
Polygon |
String |
String |
Circle |
String |
String |
Cidr |
String |
String |
Inet |
String |
String |
Macaddr |
String |
String |
Macaddr8 |
String |
String |
Tsvector |
String |
String |
Tsquery |
String |
String |
UUID |
Guid |
Guid |
Json |
String |
String |
Jsonb |
String |
String |
Array |
String |
String |
Bit |
Byte[] |
Byte[] |
Bit varying |
Byte[] |
Byte[] |
XML |
String |
String |
IntArray |
String |
String |
TextArray |
String |
String |
NumericArray |
String |
String |
DateArray |
String |
String |
Range |
String |
String |
Bpchar |
String |
String |
Keresési tevékenység tulajdonságai
A tulajdonságok részleteinek megismeréséhez tekintse meg a keresési tevékenységet.
A PostgreSQL-összekötő frissítése
Az alábbi lépések segítenek a PostgreSQL-összekötő frissítésében:
Hozzon létre egy új PostgreSQL-társított szolgáltatást, és konfigurálja a társított szolgáltatás tulajdonságaira hivatkozva.
A PostgreSQL V2-összekötő adattípus-leképezése eltér az 1. A legújabb adattípus-megfeleltetés megismeréséhez tekintse meg a PostgreSQL adattípus-leképezését.
A PostgreSQL V2 és a V1 közötti különbségek
Az alábbi táblázat a PostgreSQL V2 és v1 közötti adattípus-leképezési különbségeket mutatja be.
| PostgreSQL-adattípus | Köztes szolgáltatás adattípusa a PostgreSQL V2-hez | Köztes szolgáltatás adattípusa a PostgreSQL V1-hez |
|---|---|---|
| Pénz | Decimális | Sztring |
| Időbélyeg időzónával | Dátum/idő | Sztring |
| Időzóna | IdőpontEltérés (DateTimeOffset) | Sztring |
| Intervallum | időtartam | Sztring |
| BigDecimal | Nem támogatott. Alternatív megoldásként használja to_char() a függvényt a BigDecimal sztringgé alakításához. |
Sztring |
Kapcsolódó tartalom
A másolási tevékenység által forrásként és fogadóként támogatott adattárak listáját a támogatott adattárakban találja.