Kopírování dat z Amazon RDS pro Oracle pomocí Azure Data Factory nebo Azure Synapse Analytics
PLATÍ PRO: Azure Data Factory Azure Synapse Analytics
Tip
Vyzkoušejte si službu Data Factory v Microsoft Fabric, řešení pro analýzy typu all-in-one pro podniky. Microsoft Fabric zahrnuje všechno od přesunu dat až po datové vědy, analýzy v reálném čase, business intelligence a vytváření sestav. Přečtěte si, jak začít používat novou zkušební verzi zdarma.
Tento článek popisuje, jak pomocí aktivity kopírování ve službě Azure Data Factory kopírovat data z databáze Amazon RDS for Oracle. Vychází z přehledu aktivity kopírování.
Podporované funkce
Tento konektor Amazon RDS pro Oracle je podporovaný pro následující funkce:
Podporované funkce | IR |
---|---|
aktivita Copy (zdroj/-) | (1) (2) |
Aktivita Lookup | (1) (2) |
(1) Prostředí Azure Integration Runtime (2) Místní prostředí 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 Amazon RDS pro Oracle podporuje:
- Následující verze databáze Amazon RDS for Oracle:
- Amazon RDS pro Oracle 19c R1 (19.1) a novější
- Amazon RDS pro Oracle 18c R1 (18.1) a novější
- Amazon RDS pro Oracle 12c R1 (12.1) a vyšší
- Amazon RDS pro Oracle 11g R1 (11.1) a novější
- Paralelní kopírování ze zdroje Amazon RDS pro Oracle Podrobnosti najdete v části Paralelní kopie z Amazon RDS for Oracle .
Poznámka:
Amazon RDS pro proxy server Oracle se nepodporuje.
Požadavky
Pokud se vaše úložiště dat nachází uvnitř místní sítě, virtuální sítě Azure nebo amazonového privátního cloudu, musíte nakonfigurovat místní prostředí Integration Runtime pro připojení k němu.
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 prostředí Azure Integration Runtime.
K přístupu k místní síti bez nutnosti instalace a konfigurace místního prostředí Integration Runtime můžete také použít funkci Runtime integrace spravované virtuální sítě ve službě Azure Data Factory.
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.
Prostředí Integration Runtime poskytuje integrovaný ovladač Amazon RDS pro Oracle. Proto při kopírování dat z Amazon RDS pro Oracle nemusíte ručně instalovat ovladač.
Začínáme
K provedení aktivita Copy s kanálem můžete použít jeden z následujících nástrojů nebo sad SDK:
- Nástroj pro kopírování dat
- Azure Portal
- Sada .NET SDK
- Sada Python SDK
- Azure PowerShell
- Rozhraní REST API
- Šablona Azure Resource Manageru
Vytvoření propojené služby s Amazon RDS pro Oracle pomocí uživatelského rozhraní
Pomocí následujícího postupu vytvořte propojenou službu s Amazon RDS for Oracle v uživatelském rozhraní webu Azure Portal.
Přejděte na kartu Správa v pracovním prostoru Azure Data Factory nebo Synapse a vyberte Propojené služby a pak klikněte na Nový:
Vyhledejte Amazon RDS pro Oracle a vyberte konektor Amazon RDS for Oracle.
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é se používají k definování entit specifických pro konektor Amazon RDS for Oracle.
Vlastnosti propojené služby
Propojená služba Amazon RDS for Oracle podporuje následující vlastnosti:
Vlastnost | Popis | Povinní účastníci |
---|---|---|
type | Vlastnost type musí být nastavena na AmazonRdsForOracle. | Ano |
připojovací řetězec | Určuje informace potřebné pro připojení k instanci Amazon RDS pro databázi Oracle. Můžete také zadat heslo do služby Azure Key Vault a vytáhnout password konfiguraci z připojovací řetězec. Další podrobnosti najdete v následujících ukázkách a ukládání přihlašovacích údajů ve službě Azure Key Vault . Podporovaný typ připojení: K identifikaci databáze můžete použít Amazon RDS pro Oracle SID nebo Amazon RDS for Oracle Service Name : - Pokud používáte SID: Host=<host>;Port=<port>;Sid=<sid>;User Id=<username>;Password=<password>; – Pokud používáte název služby: Host=<host>;Port=<port>;ServiceName=<servicename>;User Id=<username>;Password=<password>; U pokročilých možností nativního připojení Amazon RDS pro Oracle můžete přidat položku do TNSNAMES. Soubor ORA na serveru Amazon RDS pro Oracle a v Amazon RDS pro propojenou službu Oracle zvolte, jestli chcete použít Typ připojení Amazon RDS pro název služby Oracle a nakonfigurovat odpovídající název služby. |
Ano |
connectVia | Prostředí Integration Runtime , které se má použít pro připojení k úložišti dat. Další informace najdete v části Požadavky . Pokud není zadaný, použije se výchozí prostředí Azure Integration Runtime. | No |
Pokud máte pro scénář převzetí služeb při selhání několik instancí Amazon RDS pro Oracle, můžete vytvořit propojenou službu Amazon RDS pro Oracle a vyplnit primárního hostitele, portu, uživatelského jména, hesla atd. a přidat novou vlastnost "Další vlastnosti připojení" s názvem vlastnosti jako a hodnotou jako AlternateServers
(HostName=<secondary host>:PortNumber=<secondary port>:ServiceName=<secondary service name>)
- nenechte si ujít hranaté závorky a věnovat pozornost dvojtečce (:
) jako oddělovače. Například následující hodnota alternativních serverů definuje dva alternativní databázové servery pro převzetí služeb při selhání připojení: (HostName=AccountingAmazonRdsForOracleServer:PortNumber=1521:SID=Accounting,HostName=255.201.11.24:PortNumber=1522:ServiceName=ABackup.NA.MyCompany)
.
Další vlastnosti připojení, které můžete nastavit v připojovací řetězec podle vašeho případu:
Vlastnost | Popis | Povolené hodnoty |
---|---|---|
ArraySize | Počet bajtů, které může konektor načíst v rámci jedné síťové odezvy. Například ArraySize=10485760 .Větší hodnoty zvyšují propustnost snížením počtu pokusů o načtení dat v síti. Menší hodnoty zvyšují dobu odezvy, protože při čekání serveru na přenos dat dochází k menšímu zpoždění. |
Celé číslo od 1 do 4294967296 (4 GB). Výchozí hodnota je 60000 . Hodnota 1 nedefinuje počet bajtů, ale označuje přidělení prostoru pro přesně jeden řádek dat. |
Pokud chcete povolit šifrování na Amazon RDS pro připojení Oracle, máte dvě možnosti:
Pokud chcete použít šifrování Triple-DES (3DES) a AES (Advanced Encryption Standard), přejděte na straně serveru Amazon RDS pro Oracle na Oracle Advanced Security (OAS) a nakonfigurujte nastavení šifrování. Podrobnosti najdete v této dokumentaci oracle. Konektor Amazon RDS for Oracle Application Development Framework (ADF) automaticky vyjedná metodu šifrování, která použije metodu šifrování, kterou nakonfigurujete v OAS při navazování připojení k Amazon RDS for Oracle.
Použití protokolu TLS:
Získejte informace o certifikátu TLS/SSL. Získejte informace o certifikátu s kódováním kódování DER (DER) certifikátu TLS/SSL a uložte výstup (----- počáteční certifikát ... Ukončit certifikát -----) jako textový soubor.
openssl x509 -inform DER -in [Full Path to the DER Certificate including the name of the DER Certificate] -text
Příklad: Extrahujte informace o certifikátu z DERcert.cer a uložte výstup do cert.txt.
openssl x509 -inform DER -in DERcert.cer -text Output: -----BEGIN CERTIFICATE----- XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXX -----END CERTIFICATE-----
keystore
Sestavte nebotruststore
. Následující příkaz vytvořítruststore
soubor ve formátu PKCS-12 nebo bez hesla.openssl pkcs12 -in [Path to the file created in the previous step] -out [Path and name of TrustStore] -passout pass:[Keystore PWD] -nokeys -export
Příklad: Vytvořte soubor PKCS12
truststore
s názvem MyTrustStoreFile s heslem.openssl pkcs12 -in cert.txt -out MyTrustStoreFile -passout pass:ThePWD -nokeys -export
truststore
Soubor umístěte na počítač místního prostředí IR. Například soubor umístěte do složky C:\MyTrustStoreFile.Ve službě nakonfigurujte Amazon RDS pro Oracle připojovací řetězec s
EncryptionMethod=1
odpovídajícíTrustStore
/TrustStorePassword
hodnotou. Například,Host=<host>;Port=<port>;Sid=<sid>;User Id=<username>;Password=<password>;EncryptionMethod=1;TrustStore=C:\\MyTrustStoreFile;TrustStorePassword=<trust_store_password>
.
Příklad:
{
"name": "AmazonRdsForOracleLinkedService",
"properties": {
"type": "AmazonRdsForOracle",
"typeProperties": {
"connectionString": "Host=<host>;Port=<port>;Sid=<sid>;User Id=<username>;Password=<password>;"
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Příklad: Uložení hesla ve službě Azure Key Vault
{
"name": "AmazonRdsForOracleLinkedService",
"properties": {
"type": "AmazonRdsForOracle",
"typeProperties": {
"connectionString": "Host=<host>;Port=<port>;Sid=<sid>;User Id=<username>;",
"password": {
"type": "AzureKeyVaultSecret",
"store": {
"referenceName": "<Azure Key Vault linked service name>",
"type": "LinkedServiceReference"
},
"secretName": "<secretName>"
}
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Vlastnosti datové sady
Tato část obsahuje seznam vlastností podporovaných datovou sadou Amazon RDS pro Oracle. Úplný seznam oddílů a vlastností dostupných pro definování datových sad najdete v tématu Datové sady.
Pokud chcete kopírovat data z Amazon RDS pro Oracle, nastavte vlastnost typu datové sady na AmazonRdsForOracleTable
. Podporují se následující vlastnosti.
Vlastnost | Popis | Povinní účastníci |
---|---|---|
type | Vlastnost typu datové sady musí být nastavena na AmazonRdsForOracleTable hodnotu . |
Ano |
schema | Název schématu | No |
table | Název tabulky nebo zobrazení | No |
tableName | Název tabulky nebo zobrazení se schématem Tato vlastnost je podporována pro zpětnou kompatibilitu. Pro nové úlohy použijte schema a table . |
No |
Příklad:
{
"name": "AmazonRdsForOracleDataset",
"properties":
{
"type": "AmazonRdsForOracleTable",
"schema": [],
"typeProperties": {
"schema": "<schema_name>",
"table": "<table_name>"
},
"linkedServiceName": {
"referenceName": "<Amazon RDS for Oracle linked service name>",
"type": "LinkedServiceReference"
}
}
}
Vlastnosti aktivity kopírování
Tato část obsahuje seznam vlastností podporovaných službou Amazon RDS pro zdroj Oracle. Úplný seznam oddílů a vlastností dostupných pro definování aktivit najdete v tématu Kanály.
Amazon RDS pro Oracle jako zdroj
Tip
Pokud chcete efektivně načítat data z Amazon RDS pro Oracle pomocí dělení dat, přečtěte si další informace z Paralelní kopie z Amazon RDS pro Oracle.
Pokud chcete kopírovat data z Amazon RDS pro Oracle, nastavte typ zdroje v aktivitě kopírování na AmazonRdsForOracleSource
. Ve zdrojové části aktivity kopírování jsou podporovány následující vlastnosti.
Vlastnost | Popis | Povinní účastníci |
---|---|---|
type | Vlastnost typu zdroje aktivity kopírování musí být nastavena na AmazonRdsForOracleSource hodnotu . |
Ano |
oracleReaderQuery | Ke čtení dat použijte vlastní dotaz SQL. Příklad: "SELECT * FROM MyTable" .Když povolíte dělené zatížení, musíte připojit všechny odpovídající předdefinované parametry oddílu v dotazu. Příklady najdete v části Paralelní kopírování z Amazon RDS pro Oracle . |
No |
partitionOptions | Určuje možnosti dělení dat používané k načtení dat z Amazon RDS pro Oracle. Povolené hodnoty jsou: None (výchozí), PhysicalPartitionsOfTable a DynamicRange. Pokud je povolená možnost oddílu (tj. ne None ), stupeň paralelismu pro souběžné načítání dat z databáze Amazon RDS pro Oracle je řízen parallelCopies nastavením aktivity kopírování. |
No |
partitionSettings | Zadejte skupinu nastavení pro dělení dat. Použít, pokud možnost oddílu není None . |
No |
partitionNames | Seznam fyzických oddílů, které je potřeba zkopírovat. Použít, pokud je PhysicalPartitionsOfTable možnost oddílu . Pokud k načtení zdrojových dat použijete dotaz, připojte se ?AdfTabularPartitionName do klauzule WHERE. Příklad najdete v části Paralelní kopírování z Amazon RDS for Oracle . |
No |
partitionColumnName | Zadejte název zdrojového sloupce v celočíselném typu , který bude použit dělením rozsahu pro paralelní kopírování. Pokud není zadaný, primární klíč tabulky se automaticky rozpozná a použije se jako sloupec oddílu. Použít, pokud je DynamicRange možnost oddílu . Pokud k načtení zdrojových dat použijete dotaz, připojte se ?AdfRangePartitionColumnName do klauzule WHERE. Příklad najdete v části Paralelní kopírování z Amazon RDS for Oracle . |
No |
partitionUpperBound | Maximální hodnota sloupce oddílu pro zkopírování dat. Použít, pokud je DynamicRange možnost oddílu . Pokud k načtení zdrojových dat použijete dotaz, připojte se ?AdfRangePartitionUpbound do klauzule WHERE. Příklad najdete v části Paralelní kopírování z Amazon RDS for Oracle . |
No |
partitionLowerBound | Minimální hodnota sloupce oddílu pro zkopírování dat. Použít, pokud je DynamicRange možnost oddílu . Pokud k načtení zdrojových dat použijete dotaz, připojte se ?AdfRangePartitionLowbound do klauzule WHERE. Příklad najdete v části Paralelní kopírování z Amazon RDS for Oracle . |
No |
Příklad: Kopírování dat pomocí základního dotazu bez oddílu
"activities":[
{
"name": "CopyFromAmazonRdsForOracle",
"type": "Copy",
"inputs": [
{
"referenceName": "<Amazon RDS for Oracle input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "AmazonRdsForOracleSource",
"oracleReaderQuery": "SELECT * FROM MyTable"
},
"sink": {
"type": "<sink type>"
}
}
}
]
Paralelní kopírování z Amazon RDS pro Oracle
Konektor Amazon RDS for Oracle poskytuje integrované dělení dat pro paralelní kopírování dat z Amazon RDS pro Oracle. Možnosti dělení dat najdete na kartě Zdroj aktivity kopírování.
Když povolíte dělenou kopii, služba spustí paralelní dotazy na zdroj Amazon RDS pro zdroj Oracle, aby načetla data podle oddílů. Paralelní stupeň se řídí parallelCopies
nastavením aktivity kopírování. Pokud například nastavíte parallelCopies
hodnotu čtyři, služba souběžně vygeneruje a spouští čtyři dotazy na základě zadané možnosti a nastavení oddílu a každý dotaz načte část dat z vaší databáze Amazon RDS for Oracle.
Doporučujeme povolit paralelní kopírování s dělením dat, zejména pokud načítáte velké množství dat z databáze Amazon RDS for Oracle. Následující konfigurace jsou navržené pro různé scénáře. Při kopírování dat do souborového úložiště dat se doporučuje zapisovat do složky jako více souborů (zadat pouze název složky), v takovém případě je výkon lepší než zápis do jednoho souboru.
Scénář | Navrhovaná nastavení |
---|---|
Úplné načtení z velké tabulky s fyzickými oddíly | Možnost oddílu: Fyzické oddíly tabulky. Během provádění služba automaticky rozpozná fyzické oddíly a kopíruje data podle oddílů. |
Úplné načtení z velké tabulky bez fyzických oddílů, zatímco s celočíselnou sloupcem pro dělení dat. | Možnosti oddílu: Oddíl dynamického rozsahu Sloupec oddílu: Zadejte sloupec použitý k rozdělení dat. Pokud není zadaný, použije se sloupec primárního klíče. |
Načtěte velké množství dat pomocí vlastního dotazu s fyzickými oddíly. | Možnost oddílu: Fyzické oddíly tabulky. Dotaz: SELECT * FROM <TABLENAME> PARTITION("?AdfTabularPartitionName") WHERE <your_additional_where_clause> .Název oddílu: Zadejte názvy oddílů, ze které chcete kopírovat data. Pokud není zadaný, služba automaticky rozpozná fyzické oddíly v tabulce, kterou jste zadali v datové sadě Amazon RDS for Oracle. Během provádění služba nahradí ?AdfTabularPartitionName skutečným názvem oddílu a odešle do Amazon RDS pro Oracle. |
Načtěte velké množství dat pomocí vlastního dotazu bez fyzických oddílů, zatímco u celočíselného sloupce pro dělení dat. | Možnosti oddílu: Oddíl dynamického rozsahu Dotaz: SELECT * FROM <TABLENAME> WHERE ?AdfRangePartitionColumnName <= ?AdfRangePartitionUpbound AND ?AdfRangePartitionColumnName >= ?AdfRangePartitionLowbound AND <your_additional_where_clause> .Sloupec oddílu: Zadejte sloupec použitý k rozdělení dat. Rozdělení na sloupec můžete provést pomocí celočíselného datového typu. Horní mez oddílu a dolní mez oddílu: Určete, jestli chcete filtrovat podle sloupce oddílu a načítat data pouze mezi dolním a horním rozsahem. Během provádění služba nahradí ?AdfRangePartitionColumnName a ?AdfRangePartitionUpbound za skutečný název sloupce a ?AdfRangePartitionLowbound rozsahy hodnot pro každý oddíl a odešle do Amazon RDS pro Oracle. Pokud je například sloupec oddílu "ID" nastavený s dolní mezí jako 1 a horní mez jako 80, s paralelní sadou kopírování nastavenou jako 4, služba načte data o 4 oddíly. ID jsou v rozsahu [1, 20], [21, 40], [41, 60] a [61, 80], v uvedeném pořadí. |
Tip
Při kopírování dat z tabulky, která není rozdělená do oddílů, můžete použít možnost dynamického rozsahu oddílu k rozdělení podle celočíselného sloupce. Pokud zdrojová data takový typ sloupce nemají, můžete využít funkci ORA_HASH ve zdrojovém dotazu k vygenerování sloupce a jeho použití jako sloupce oddílu.
Příklad: Dotaz s fyzickým oddílem
"source": {
"type": "AmazonRdsForOracleSource",
"query": "SELECT * FROM <TABLENAME> PARTITION(\"?AdfTabularPartitionName\") WHERE <your_additional_where_clause>",
"partitionOption": "PhysicalPartitionsOfTable",
"partitionSettings": {
"partitionNames": [
"<partitionA_name>",
"<partitionB_name>"
]
}
}
Příklad: Dotaz s oddílem dynamického rozsahu
"source": {
"type": "AmazonRdsForOracleSource",
"query": "SELECT * FROM <TABLENAME> WHERE ?AdfRangePartitionColumnName <= ?AdfRangePartitionUpbound AND ?AdfRangePartitionColumnName >= ?AdfRangePartitionLowbound AND <your_additional_where_clause>",
"partitionOption": "DynamicRange",
"partitionSettings": {
"partitionColumnName": "<partition_column_name>",
"partitionUpperBound": "<upper_value_of_partition_column>",
"partitionLowerBound": "<lower_value_of_partition_column>"
}
}
Vlastnosti aktivity vyhledávání
Podrobnosti o vlastnostech najdete v aktivitě Vyhledávání.
Související obsah
Seznam úložišť dat podporovaných jako zdroje a jímky aktivitou kopírování najdete v tématu Podporované úložiště dat.