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.
Tento článek popisuje, jak pomocí aktivity kopírování v datovém toku kopírovat data z a do Teradata.
Podporovaná konfigurace
Nastavení každé záložky v rámci kopírovací aktivity naleznete v následujících oddílech.
Obecné
Pro konfiguraci karty Obecné přejděte na Obecné.
Zdroj
Návod
Pokud chcete efektivně načítat data z Teradata pomocí dělení dat, přečtěte si další informace z části Paralelní kopírování z části Teradata .
Následující vlastnosti jsou podporovány pro Teradata na kartě Zdroj kopírovací aktivity.
Jsou vyžadovány následující vlastnosti:
Připojení: Ze seznamu připojení vyberte připojení Teradata. Pokud žádné připojení neexistuje, vytvořte nové připojení Teradata.
Použít dotaz: Vyberte tabulku nebo dotaz.
V části Upřesnit můžete zadat následující pole:
Možnost oddílu: Určuje možnosti dělení dat používané k načtení dat z Teradata. Povolené hodnoty jsou: None (výchozí), DynamicRange a Hash. Pokud je povolená možnost oddílu (tj. ne
None), stupeň paralelismu souběžného načítání dat z Teradata je řízen stupněm paralelismu kopírování na kartě nastavení aktivity kopírování.Žádné: Toto nastavení vyberte, pokud nechcete oddíl používat.
dynamického rozsahu: Pokud používáte dotaz s povoleným paralelním zpracováním, je potřeba parametr oddílu rozsahu(
?DfDynamicRangePartitionCondition). Ukázkový dotaz:SELECT * FROM <TableName> WHERE ?DfDynamicRangePartitionCondition.Název sloupce oddílu: Zadejte název zdrojového sloupce v celočíselném nebo datovém/datumovém typu (
int,smallint,bigint,date,smalldatetime,datetime,datetime2, nebodatetimeoffset), který se používá při rozsahovém dělení pro paralelní kopírování. Pokud není specifikován, index nebo primární klíč tabulky se automaticky detekuje a použije jako sloupec oddílu.horní mez oddílu: Zadejte maximální hodnotu sloupce oddílu pro dělení rozsahu oddílu. Tato hodnota se používá k určení kroku dělení, nikoli k filtrování řádků v tabulce. Všechny řádky v tabulce nebo výsledku dotazu se rozdělí a zkopírují.
Dolní mez oddílu: Zadejte minimální hodnotu pro rozdělení rozsahu sloupce oddílu. Tato hodnota se používá k určení kroku dělení, nikoli k filtrování řádků v tabulce. Všechny řádky v tabulce nebo výsledku dotazu se rozdělí a zkopírují.
Hash: Při použití dotazu s povolenou paralelností je potřeba parametr hash oddílu (
?AdfHashPartitionCondition). Ukázkový dotaz:select * from <TableName> where ?AdfHashPartitionCondition.Název sloupce oddílu: Zadejte název zdrojového sloupce v celočíselném nebo datovém/datumovém typu (
int,smallint,bigint,date,smalldatetime,datetime,datetime2, nebodatetimeoffset), který se používá při rozsahovém dělení pro paralelní kopírování. Pokud není specifikován, index nebo primární klíč tabulky se automaticky detekuje a použije jako sloupec oddílu.
Další sloupce: Přidejte další sloupce dat pro ukládání relativní cesty nebo statické hodnoty zdrojových souborů. Výraz je podporován pro druhý z uvedených.
Cíl
Následující vlastnosti jsou podporovány pro Teradata na kartě Cíl aktivity kopírování.
Jsou vyžadovány následující vlastnosti:
Připojení: Ze seznamu připojení vyberte připojení Teradata. Pokud žádné připojení neexistuje, vytvořte nové připojení Teradata.
Tabulka: Zadejte název tabulky v Teradata pro zápis dat. Vyberte tabulku z rozevíracího seznamu nebo ručně vyberte Enter a zadejte název schématu a tabulky.
V části Upřesnit můžete zadat následující pole:
- Další možnosti formátu Teradata: Zadejte další možnosti formátu, které se použijí v příkazu COPY k načtení dat. Příklady: DATE_FORMAT, TIME_FORMAT, TIMESTAMP_FORMAT. Další informace naleznete v tématu Teradata DATE Format. Tato vlastnost funguje pouze pro přímé kopírování ze zdroje formátu DelimitedText do Teradata.
Přímé kopírování do Teradata
Pokud vaše zdrojové úložiště dat a formát splňují kritéria popsaná v této části, můžete aktivitu kopírování použít k přímému kopírování ze zdroje do Teradata. Služba zkontroluje nastavení a selže aktivita Copy spustit, pokud nejsou splněna následující kritéria:
Zdrojové připojení je Azure Blob Storage a Azure Data Lake Storage Gen2 s klíčem účtu a ověřováním pomocí sdíleného přístupového podpisu.
Formát zdrojových dat je Parquet a DelimitedText s následujícími konfiguracemi:
U formátu Parquet je kodek komprese None nebo Snappy.
Formát DelimitedText :
-
rowDelimiterje \n. -
compressionmůže být bez komprese nebo gzip. Pokud je vybrána komprese gzip , soubor musí končit příponou .gz. -
encodingNameje ponechán jako výchozí nebo je nastaven na UTF-8. -
quoteCharje dvojitá uvozovka"nebo prázdný řetězec. -
escapeCharje dvojitá uvozovka"nebo prázdný řetězec. -
nullValueje Null nebo prázdný řetězec.
-
Ve zdroji aktivita Copy:
- Při použití Azure Data Lake Storage Gen2 je povolená pouze statická cesta.
- Pouze statická cesta a
prefixje povolená při použití služby Azure Blob Storage.
Statické cesty budou sloužit jako předpony při kopírování do Teradata.
Fázovaná kopie do Teradata
Pokud zdrojové úložiště dat nebo formát není nativně kompatibilní s příkazem Teradata COPY, jak je uvedeno v poslední části, povolte integrovanou fázovanou kopii pomocí dočasné instance služby Azure Blob Storage. Funkce fázovaného kopírování také poskytuje lepší propustnost. Služba automaticky převede data tak, aby splňovala požadavky na formát dat teradata. Potom vyvolá příkaz COPY, který načte data do Teradata. Nakonec vyčistí dočasná data z úložiště objektů blob.
Pokud chcete tuto funkci použít, vytvořte připojení azure Blob Storage , které odkazuje na účet úložiště Azure jako dočasné přípravné prostředí. Potom zadejte enableStaging vlastnosti a stagingSettings vlastnosti v aktivita Copy.
Poznámka:
Pracovní připojení služby Azure Blob Storage musí používat klíč účtu nebo ověřování pomocí sdíleného přístupového podpisu , jak to vyžaduje příkaz Teradata COPY.
Mapování
V části Konfigurace karty Mapovánípřejděte na Konfigurace mapování na kartě Mapování.
Nastavení
Pro konfiguraci záložky Nastavení přejděte na Upravit další nastavení v záložce Nastavení.
Paralelní kopírování z Teradata
Konektor Teradata poskytuje integrované dělení dat pro paralelní kopírování dat z Teradata. Možnosti dělení dat najdete v tabulce Zdroj aktivity kopírování.
Když povolíte dělené kopírování, služba spustí paralelní dotazy na váš zdroj Teradata, aby načetla data podle oddílů. Paralelní stupeň je řízen stupněm paralelismu kopírování na kartě nastavení aktivity kopírování. Pokud například nastavíte stupeň paralelismu kopírování na čtyři, služba souběžně generuje 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 teradata.
Doporučujeme povolit paralelní kopírování s dělením dat, zejména pokud načítáte velké množství dat z teradata. 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é získání dat z velké tabulky |
Možnost oddílu: Hodnota hash. Během provádění služba automaticky rozpozná primární indexový sloupec, použije proti němu hodnotu hash a zkopíruje data podle oddílů. |
| Načtěte velké množství dat pomocí vlastního dotazu. |
Možnost oddílu: Hodnota hash. Dotaz: SELECT * FROM <TABLENAME> WHERE ?AdfHashPartitionCondition AND <your_additional_where_clause>.Sloupec oddílu: Zadejte sloupec použitý pro použití oddílu hash. Pokud není zadaný, služba automaticky rozpozná sloupec PK tabulky, kterou jste zadali v datech Teradata. Během provádění služba nahradí ?AdfHashPartitionCondition logikou oddílu hash a odešle ji do Teradata. |
| Načtěte velké množství dat pomocí vlastního dotazu, který má celočíselnou hodnotu s rovnoměrně distribuovanou hodnotou pro dělení rozsahu. |
Možnosti oddílení: Dynamické oddílení rozsahu Dotaz: SELECT * FROM <TABLENAME> WHERE ?AdfRangePartitionColumnName <= ?AdfRangePartitionUpbound AND ?AdfRangePartitionColumnName >= ?AdfRangePartitionLowbound AND <your_additional_where_clause>.Partiční sloupec: Zadejte sloupec použitý k rozdělení dat. Proti sloupci s celočíselným datovým typem můžete provést rozdělení. Horní mez oddílu a dolní mez oddílu: Určete, jestli chcete filtrovat podle sloupce oddílu, aby se načítala data pouze mezi dolním a horním rozsahem. Během provádění služba nahradí ?AdfRangePartitionColumnNamea ?AdfRangePartitionUpboundza skutečný název sloupce a ?AdfRangePartitionLowbound rozsahy hodnot pro každý oddíl a odešle do Teradata. Pokud je například sloupec oddílu "ID" nastavený s dolní mezí jako 1 a horní mez jako 80, s paralelním kopírováním nastaveným jako 4, služba načte data o 4 oddíly. Jejich ID jsou mezi [1,20], [21, 40], [41, 60] a [61, 80], v uvedeném pořadí. |
Příklad: Dotaz s oddílem hash
"source": {
"type": "TeradataSource",
"query": "SELECT * FROM <TABLENAME> WHERE ?AdfHashPartitionCondition AND <your_additional_where_clause>",
"partitionOption": "Hash",
"partitionSettings": {
"partitionColumnName": "<hash_partition_column_name>"
}
}
Příklad: Dotaz s dynamickým rozsahovým dělením
"source": {
"type": "TeradataSource",
"query": "SELECT * FROM <TABLENAME> WHERE ?AdfRangePartitionColumnName <= ?AdfRangePartitionUpbound AND ?AdfRangePartitionColumnName >= ?AdfRangePartitionLowbound AND <your_additional_where_clause>",
"partitionOption": "DynamicRange",
"partitionSettings": {
"partitionColumnName": "<dynamic_range_partition_column_name>",
"partitionUpperBound": "<upper_value_of_partition_column>",
"partitionLowerBound": "<lower_value_of_partition_column>"
}
}
Souhrn tabulky
Následující tabulky obsahují další informace o aktivitě kopírování v Teradata.
Informace o zdroji
| Název | Popis | Hodnota | Povinné | Vlastnost skriptu JSON |
|---|---|---|---|---|
| Připojení | Vaše připojení ke zdrojovému úložišti dat. | < vaše připojení Teradata > | Ano | propojení |
| Použít dotaz | Způsob čtení dat z Teradata Použití |
• Tabulka • dotaz |
Ne | / |
| Pro tabulku | ||||
| název schématu | Název schématu | < název vašeho schématu > | Ne | schéma |
| název tabulky | Název tabulky. | < název tabulky > | Ne | tabulka |
| Pro dotaz | ||||
| Dotaz | Ke čtení dat použijte vlastní dotaz SQL. | < Dotazy SQL > | Ne | dotaz |
| možnost oddílu | Možnosti dělení dat používané k načtení dat z Teradata. | • Žádné • Dynamický rozsah • Hash |
Ne | / |
| Pro dynamický rozsah | ||||
| název sloupce oddílu | Zadejte název zdrojového sloupce v celočíselném čísle nebo typu date/datetime (int, smallint, bigintdate, smalldatetime, , datetime, datetime2nebo datetimeoffset), který se používá při dělení rozsahu pro paralelní kopírování.Pokud není specifikován, index nebo primární klíč tabulky se automaticky detekuje a použije jako sloupec oddílu. |
< vaše názvy sloupců oddílů > | Ne | název sloupce oddílu |
| horní mez oddílu | Zadejte maximální hodnotu sloupce pro dělení rozsahu oddílů. Tato hodnota se používá k určení kroku dělení, nikoli k filtrování řádků v tabulce. Všechny řádky v tabulce nebo výsledku dotazu se rozdělí a zkopírují. | < horní mez oddílu > | Ne | partitionUpperBound |
| Dolní mez partice | Zadejte minimální hodnotu sloupce oddílu pro rozdělení rozsahu oddílů. Tato hodnota se používá k určení kroku dělení, nikoli k filtrování řádků v tabulce. Všechny řádky v tabulce nebo výsledku dotazu se rozdělí a zkopírují. | < vaše dolní mez oddílu > | Ne | partitionLowerBound |
| Pro Hash | ||||
| název sloupce oddílu | Zadejte název zdrojového sloupce v celočíselném čísle nebo typu date/datetime (int, smallint, bigintdate, smalldatetime, , datetime, datetime2nebo datetimeoffset), který se používá při dělení rozsahu pro paralelní kopírování.Pokud není specifikován, index nebo primární klíč tabulky se automaticky detekuje a použije jako sloupec oddílu. |
< vaše názvy sloupců oddílů > | Ne | název sloupce oddílu |
| Další sloupce | Přidejte další datové sloupce pro ukládání relativní cesty ke zdrojovým souborům nebo statické hodnotě. Výraz je podporován pro druhý z uvedených. | •Jméno •Hodnota |
Ne | dodatečnéSloupce: •Jméno •hodnota |
Informace o cíli
| Název | Popis | Hodnota | Povinné | Vlastnost skriptu JSON |
|---|---|---|---|---|
| Připojení | Vaše připojení k cílovému úložišti dat. | < vaše připojení Teradata > | Ano | propojení |
| tabulka | Tabulka dat cílového umístění pro zápis dat. | < název tabulky > | Ano | / |
| název schématu | Název schématu | < název vašeho schématu > | Ne | schéma |
| název tabulky | Název tabulky. | < název tabulky > | Ne | tabulka |
| Další možnosti formátu Teradata | Zadejte další možnosti formátu, které se použijí v příkazu COPY k načtení dat. Příklady: DATE_FORMAT, TIME_FORMAT, TIMESTAMP_FORMAT. Další informace naleznete v tématu Teradata DATE Format. Tato vlastnost funguje pouze pro přímé kopírování ze zdroje formátu DelimitedText do Teradata. | • DATE_FORMAT • FORMÁT_ČASU • Formát časové značky |
Ne | dodatečnéMožnostiFormátování • DATE_FORMAT • FORMÁT_ČASU • Formát časové značky |