Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
VZTAHUJE SE NA:
Azure Data Factory
Azure Synapse Analytics
Návod
Data Factory v Microsoft Fabric je nová generace Azure Data Factory s jednodušší architekturou, integrovanou AI a novými funkcemi. Pokud s integrací dat začínáte, začněte Fabric Data Factory. Stávající úlohy ADF lze upgradovat na Fabric pro přístup k novým funkcím v oblastech datové vědy, analýz v reálném čase a vytváření sestav.
Tento článek popisuje, jak pomocí aktivity kopírování v kanálech Azure Data Factory a Synapse Analytics kopírovat data z databáze PostgreSQL. Vychází z článku přehled činnosti kopírování, který představuje obecný přehled této činnosti.
Poznámka:
Tento konektor je také k dispozici ve službě Data Factory v Microsoft Fabric. Informace o konfiguraci a funkcích specifických pro Fabric najdete v dokumentaci ke konektoru Fabric PostgreSQL.
Důležité
Konektor PostgreSQL V1 je ve fázi odebrání. Doporučujeme upgradovat konektor PostgreSQL z V1 na V2.
Podporované funkce
Tento konektor PostgreSQL je podporovaný pro následující funkce:
| Podporované funkce | IR |
|---|---|
| aktivita Copy (zdroj/-) | (1) (2) |
| Vyhledávací aktivita | (1) (2) |
(1) Azure Integration Runtime (2) Lokálně hostované Integration Runtime
Seznam úložišť dat podporovaných jako zdroje nebo jímky aktivitou kopírování najdete v tabulce Podporované úložiště dat.
Konkrétně tento konektor PostgreSQL podporuje PostgreSQL verze 12 a vyšší.
Požadavky
Pokud se vaše úložiště dat nachází uvnitř místní sítě, Azure virtuální sítě, nebo Amazon Virtual Private Cloud, musíte pro připojení nakonfigurovat self-hosted Integration Runtime.
Pokud je vaše úložiště dat spravovanou cloudovou datovou službou, můžete použít Azure Integration Runtime. Pokud je přístup omezený na IP adresy schválené v pravidlech brány firewall, můžete do seznamu povolených přidat ip adresy Azure Integration Runtime.
Funkci managed virtual network Integration Runtime můžete také použít v Azure Data Factory pro přístup k místní síti bez nutnosti instalace a konfigurace místního prostředí Integration Runtime.
Další informace o mechanismech zabezpečení sítě a možnostech podporovaných službou Data Factory najdete v tématu Strategie přístupu k datům.
Integration Runtime poskytuje integrovaný ovladač PostgreSQL od verze 3.7, takže nemusíte ručně instalovat žádný ovladač.
Začínáme
K provedení kopírovací činnosti s datovým tokem můžete použít jeden z následujících nástrojů nebo sady SDK:
- Nástroj pro kopírování dat
- portál Azure
- .NET SDK
- Python SDK
- Azure PowerShell
- REST API
- šablona Azure Resource Manager
Vytvoření propojené služby do PostgreSQL pomocí uživatelského rozhraní
Pomocí následujícího postupu vytvořte propojenou službu postgreSQL v uživatelském rozhraní portálu Azure.
Přejděte na kartu Spravovat v pracovním prostoru Azure Data Factory nebo Synapse a vyberte Propojené služby a potom klikněte na Nový:
Vyhledejte Postgre a vyberte konektor PostgreSQL.
Nakonfigurujte podrobnosti o službě, otestujte připojení a vytvořte novou propojenou službu.
Podrobnosti konfigurace konektoru
Následující části obsahují podrobnosti o vlastnostech, které slouží k definování entit služby Data Factory specifických pro konektor PostgreSQL.
Vlastnosti propojené služby
Propojená služba PostgreSQL podporuje následující vlastnosti:
| Vlastnost | Popis | Požadováno |
|---|---|---|
| typ | Vlastnost typu musí být nastavená na: PostgreSqlV2. | Ano |
| server | Určuje název hostitele a volitelně port, na kterém je PostgreSQL spuštěný. | Ano |
| port | Port TCP serveru PostgreSQL. | Ne |
| databáze | Databáze PostgreSQL, ke které se chcete připojit. | Ano |
| uživatelské jméno | Uživatelské jméno, se kterým se chcete spojit. | Ano |
| heslo | Heslo pro připojení. | Ano |
| režim SSL | Určuje, jestli se používá protokol SSL, v závislosti na podpoře serveru. - Zakázáno: Protokol SSL je zakázaný. Pokud server vyžaduje protokol SSL, připojení se nezdaří. - Povolit: Preferujte připojení bez SSL, pokud je server povoluje, ale povolte připojení SSL. - Upřednostňovaný: Pokud je server umožňuje, upřednostňujte připojení SSL, ale povolte připojení bez SSL. - Povinné: Selhání připojení, pokud server nepodporuje PROTOKOL SSL. - Verify_ca: Selhání připojení, pokud server nepodporuje protokol SSL. Ověřuje také certifikát serveru. - Verify_full: Selhání připojení, pokud server nepodporuje protokol SSL. Ověřuje také certifikát serveru s názvem hostitele. Možnosti: Zakázáno (0) / Povolit (1) / Preferovaný (2) (Výchozí) / Povinné (3) / Verify_ca (4) / Verify_full (5) |
Ne |
| typ autentizace | Typ ověřování pro připojení k databázi. Podporuje pouze Basic. | Ano |
| connectVia | Integration Runtime pro připojení k úložišti dat. Další informace najdete v části Požadavky . Pokud není zadaný, použije výchozí Azure Integration Runtime. | Ne |
| Další vlastnosti připojení: | ||
| schéma | Nastaví cestu hledání schématu. | Ne |
| sdružování | Určuje, jestli se má použít sdružování připojení. | Ne |
| časový limit spojení | Doba čekání (v sekundách) při pokusu o navázání připojení před ukončením pokusu a vygenerováním chyby | Ne |
| časový limit příkazu | Doba čekání (v sekundách) při pokusu o spuštění příkazu před ukončením pokusu a vygenerováním chyby. Nastavte na nulu pro nekonečno. | Ne |
| důvěřovatServerovémuCertifikátu | Zda důvěřovat certifikátu serveru, aniž by byl ověřen. | Ne |
| SSL certifikát | Umístění klientského certifikátu, který se má odeslat na server. | Ne |
| SSL klíč | Umístění klientského klíče pro klientský certifikát, který se má odeslat na server. | Ne |
| heslo SSL | Heslo pro klíč pro klientský certifikát. | Ne |
| velikost čtecího bufferu | Určuje velikost interní vyrovnávací paměti, kterou Npgsql používá při čtení. Zvýšení může zvýšit výkon při přenosu velkých hodnot z databáze. | Ne |
| parametry logování | Pokud je tato možnost povolená, zaprotokolují se hodnoty parametrů při spuštění příkazů. | Ne |
| časové pásmo | Získá nebo nastaví časové pásmo relace. | Ne |
| kódování | Získá nebo nastaví .NET kódování, které se použije ke kódování a dekódování dat řetězce PostgreSQL. | Ne |
Poznámka:
Pokud chcete mít úplné ověření SSL prostřednictvím připojení ODBC při použití místního Integration Runtime musíte místo konektoru PostgreSQL explicitně použít připojení typu ODBC a dokončit následující konfiguraci:
- Nastavte DSN na všech serverech SHIR.
- Vložte správný certifikát pro PostgreSQL do složky C:\Windows\ServiceProfiles\DIAHostService\AppData\Roaming\postgresql\root.crt na serverech SHIR. V tomto případě ovladač ODBC hledá > certifikát SSL k ověření, když se připojí k databázi.
- V připojení vaší datové továrny použijte připojení typu ODBC s připojovacím řetězcem, který odkazuje na DSN, který jste vytvořili na serverech SHIR.
Příklad:
{
"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"
}
}
}
Example: uložení hesla do Azure Key Vault
{
"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"
}
}
}
Vlastnosti datové sady
Úplný seznam oddílů a vlastností dostupných pro definování datových sad najdete v článku o datových sadách . Tato část obsahuje seznam vlastností podporovaných datovou sadou PostgreSQL.
Pokud chcete kopírovat data z PostgreSQL, podporují se následující vlastnosti:
| Vlastnost | Popis | Požadováno |
|---|---|---|
| typ | Vlastnost typu datové sady musí být nastavená na: PostgreSqlV2Table. | Ano |
| schéma | Název schématu | Ne (pokud je zadán dotaz ve zdroji aktivity) |
| tabulka | Název tabulky. | Ne (pokud je zadán dotaz ve zdroji aktivity) |
Příklad
{
"name": "PostgreSQLDataset",
"properties":
{
"type": "PostgreSqlV2Table",
"linkedServiceName": {
"referenceName": "<PostgreSQL linked service name>",
"type": "LinkedServiceReference"
},
"annotations": [],
"schema": [],
"typeProperties": {
"schema": "<schema name>",
"table": "<table name>"
}
}
}
Pokud jste používali RelationalTable typovanou datovou sadu, je stále podporována ve své současné podobě, přičemž se doporučuje používat novou datovou sadu.
Vlastnosti kopírovací aktivity
Úplný seznam oddílů a vlastností dostupných pro definování aktivit najdete v článku Pipelines . Tato část obsahuje seznam vlastností podporovaných zdrojem PostgreSQL.
PostgreSQL jako zdroj
Pokud chcete kopírovat data z PostgreSQL, v sekci zdroje aktivity kopírování se podporují následující vlastnosti:
| Vlastnost | Popis | Požadováno |
|---|---|---|
| typ | Vlastnost typu zdroje aktivity kopírování musí být nastavená na: PostgreSqlV2Source. | Ano |
| dotaz | Ke čtení dat použijte vlastní dotaz SQL. Například: "query": "SELECT * FROM \"MySchema\".\"MyTable\"". |
Ne (pokud je v datové sadě zadán název tabulky) |
| časový limit dotazu | Doba čekání před ukončením pokusu o spuštění příkazu a vygenerováním chyby je výchozí 120 minut. Pokud je pro tuto vlastnost nastaven parametr, jsou povolené hodnoty časový rozsah, například 02:00:00 (120 minut). Další informace najdete v tématu CommandTimeout. commandTimeout Pokud je obojí i queryTimeout nakonfigurované, queryTimeout má přednost. |
Ne |
Poznámka:
V názvech schémat a tabulek se rozlišují malá a velká písmena. Uzavřete je do "" dotazu (dvojité uvozovky).
Příklad:
"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>"
}
}
}
]
Pokud jste používali RelationalSource typovaný zdroj, je stále podporovaný tak, jak je, zatímco se navrhuje používat nový zdroj.
Mapování datových typů pro PostgreSQL
Při kopírování dat z PostgreSQL se z datových typů PostgreSQL používají následující mapování k dočasným datovým typům používaným službou interně. Podívejte se na mapování schémat a datových typů, kde se dozvíte, jak aktivita kopírování mapuje zdrojové schéma a datový typ na cíl.
| Datový typ PostgreSQL | Dočasný datový typ služby pro PostgreSQL V2 | Dočasný datový typ služby pro PostgreSQL V1 |
|---|---|---|
SmallInt |
Int16 |
Int16 |
Integer |
Int32 |
Int32 |
BigInt |
Int64 |
Int64 |
Decimal (Přesnost <= 28) |
Decimal |
Decimal |
Decimal (Přesnost > 28) |
Nepodporované | 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 |
Vlastnosti aktivity vyhledávání
Podrobnosti o vlastnostech najdete v aktivitě Lookup.
Upgrade konektoru PostgreSQL
Tady jsou kroky, které vám pomůžou upgradovat konektor PostgreSQL:
Vytvořte novou propojenou službu PostgreSQL a nakonfigurujte ji pomocí odkazů na vlastnosti propojené služby.
Mapování datových typů pro konektor PostgreSQL V2 se liší od mapování datového typu pro V1. Informace o nejnovějším mapování datových typů najdete v tématu Mapování datových typů pro PostgreSQL.
Rozdíly mezi PostgreSQL V2 a V1
Následující tabulka ukazuje rozdíly v mapování datových typů mezi PostgreSQL V2 a V1.
| Datový typ PostgreSQL | Dočasný datový typ služby pro PostgreSQL V2 | Dočasný datový typ služby pro PostgreSQL V1 |
|---|---|---|
| Peníze | Desítková soustava | Řetězec |
| Časové razítko s časovým pásmem | Datum a čas | Řetězec |
| Čas s časovým pásmem | Posun data a času | Řetězec |
| Rozmezí | Časový rozsah | Řetězec |
| BigDecimal | Nepodporováno Jako alternativu použijte to_char() funkci k převodu BigDecimal na String. |
Řetězec |
Související obsah
Seznam úložišť dat podporovaných jako zdroje a jímky aktivitou kopírování najdete v podporovaných úložištích dat.