Ako nakonfigurovať Amazon RDS pre SQL Server v kopírovaní aktivity
Tento článok popisuje, ako použiť aktivitu kopírovania v údajovom kanáli na kopírovanie údajov z Amazon RDS pre SQL Server.
Podporovaná konfigurácia
Ak chcete nastaviť každú kartu v časti Aktivita kopírovania, prejdite do nasledujúcich sekcií.
Všeobecné
Ak chcete nakonfigurovať kartu Všeobecné nastavenia, prečítajte si tému Všeobecné pokyny na nastavenie.
Source
Amazon RDS pre SQL Server na karte Zdroj aktivity kopírovania sú podporované nasledujúce vlastnosti.
Vyžadujú sa nasledujúce vlastnosti:
Typ ukladacieho priestoru údajov: Vyberte položku Externé.
Pripojenie ion: Zo zoznamu pripojení vyberte pripojenie Amazon RDS pre SQL Server. Ak pripojenie neexistuje, vytvorte nové pripojenie Amazon RDS pre SQL Server výberom položky Nové.
Pripojenie ion type (Typ Pripojenie ion): Vyberte položku Amazon RDS pre SQL Server.
Použitie dotazu: zadajte spôsob čítania údajov. Môžete vybrať možnosť Tabuľka, Dotaz alebo Uložená procedúra. Nasledujúci zoznam popisuje konfiguráciu každého nastavenia:
Tabuľka: Čítať údaje zo zadanej tabuľky. V rozbaľovacom zozname vyberte zdrojovú tabuľku alebo vyberte položku Upraviť a zadajte ju manuálne.
Dotaz: zadajte vlastný dotaz SQL na čítanie údajov. Príkladom je adresa
select * from MyTable
. Môžete tiež vybrať ikonu ceruzky a upraviť ju v editore kódu.Uložená procedúra: použite uloženú procedúru, ktorá číta údaje zo zdrojovej tabuľky. Posledným príkazom SQL musí byť príkaz SELECT v uloženej procedúre.
Uložený názov procedúry: Vyberte uloženú procedúru alebo manuálne zadajte názov uloženej procedúry pri výbere položky Upraviť na čítanie údajov zo zdrojovej tabuľky.
Uložené parametre procedúry: Zadajte hodnoty pre parametre uloženej procedúry. Povolené hodnoty sú páry názvov alebo hodnôt. Názvy a puzdro parametrov sa musia zhodovať s názvami a puzdrom parametrov uloženej procedúry. Môžete vybrať parametre importu a získať tak parametre uloženej procedúry.
V časti Rozšírené môžete zadať nasledujúce polia:
Časový limit dotazu (minúty): Zadajte časový limit pre vykonanie príkazu dotazu, predvolená hodnota je 120 minút. Ak je parameter nastavený pre túto vlastnosť, povolené hodnoty sú časové rozpätie, napríklad 02:00:00 (120 minút).
Úroveň izolácie: Určuje správanie uzamknutia transakcií pre zdroj SQL. Povolené hodnoty sú: Viazané na čítanie, Čítanie bez vynechania, Opakovateľné čítanie, Serializable, Snímka. Ak nie je zadaná, použije sa predvolená úroveň izolácie databázy. Ďalšie podrobnosti nájdete v článku IsolationLevel Enum .
Možnosť oblasti: zadajte možnosti rozdelenia údajov používané na načítanie údajov z Amazon RDS pre SQL Server. Povolené hodnoty sú: Žiadne (predvolené), Fyzické oblasti tabuľky a Dynamický rozsah. Keď je povolená možnosť oblasti (to znamená, že nie je žiadna), úroveň paralelného načítania údajov zo služby Amazon RDS pre SQL Server je v nastaveniach kopírovania na karte s nastaveniami aktivity riadená stupne paralelného spracovania .
Žiadne: Vyberte toto nastavenie, ak chcete nepoužiť oblasť.
Fyzické oblasti tabuľky: Pri použití fyzickej oblasti sa stĺpec a mechanizmus oblasti automaticky určia na základe definície fyzickej tabuľky.
Dynamický rozsah: Pri použití dotazu so súbežným povolením je potrebný parameter oblasti rozsahu(
?DfDynamicRangePartitionCondition
). Vzorový dotaz:SELECT * FROM <TableName> WHERE ?DfDynamicRangePartitionCondition
.Názov stĺpca oblasti: Zadajte názov zdrojového stĺpca na celé číslo alebo typ dátumu/dátumu a času (
int
, ,smallint
,date
bigint
,smalldatetime
,datetime
datetime2
, alebodatetimeoffset
), ktorý sa používa podľa rozdelenia rozsahu na paralelné kopírovanie. Ak nie je zadaný, index alebo primárny kľúč tabuľky sa automaticky rozpozná a použije ako stĺpec oblasti.Ak na načítanie zdrojových údajov použijete dotaz, zadajte
?DfDynamicRangePartitionCondition
klauzulu WHERE. Pozrite si napríklad časť Paralelná kópia z databázy SQL.Horná hranica oblasti: Zadajte maximálnu hodnotu stĺpca oblasti na rozdelenie rozsahu oblastí. Táto hodnota sa používa na rozhodnutie o kroku rozdelenia, nie na filtrovanie riadkov v tabuľke. Všetky riadky v tabuľke alebo výsledku dotazu sa rozdelia a skopírujú. Ak nie je zadaná, aktivita kopírovaním automaticky zistí hodnotu. Pozrite si napríklad časť Paralelná kópia z databázy SQL.
Dolná hranica oblasti: Zadajte minimálnu hodnotu stĺpca oblasti na rozdelenie rozsahu oblastí. Táto hodnota sa používa na rozhodnutie o kroku rozdelenia, nie na filtrovanie riadkov v tabuľke. Všetky riadky v tabuľke alebo výsledku dotazu sa rozdelia a skopírujú. Ak nie je zadaná, aktivita kopírovaním automaticky zistí hodnotu. Pozrite si napríklad časť Paralelná kópia z databázy SQL.
Ďalšie stĺpce: Pridajte ďalšie stĺpce údajov na ukladanie relatívnej cesty alebo statickej hodnoty zdrojových súborov. Pre druhý sa podporuje výraz.
Všimnite si tieto body:
- Ak je dotaz zadaný pre zdroj, aktivita kopírovania spustí tento dotaz na zdroji Amazon RDS pre SQL Server, aby sa získali údaje. Môžete tiež zadať uloženú procedúru tak, že určíte názov uloženej procedúry a parametre uloženej procedúry, ak uložená procedúra má parametre.
- Pri použití uloženej procedúry v zdroji na načítanie údajov si všimnite, že ak je uložená procedúra navrhnutá ako vrátenie inej schémy, keď sa odovzdáva iná hodnota parametra, môže sa vyskytnúť zlyhanie alebo sa môže zobraziť neočakávaný výsledok pri importovaní schémy z používateľského rozhrania alebo pri kopírovaní údajov do databázy SQL pomocou automatického vytvárania tabuľky.
Mapovanie
V časti Konfigurácia karty Mapovanie prejdite na položku Konfigurácia priradení na karte priradenia.
Nastavenia
Ak chcete Nastavenia konfiguráciu kariet, prejdite do časti Konfigurácia ďalších nastavení na karte Nastavenia.
Paralelná kópia z databázy SQL
Konektor Amazon RDS pre SQL Server v rámci aktivity kopírovania poskytuje vstavané rozdelenie údajov na súbežné kopírovanie údajov. Možnosti rozdelenia údajov nájdete v aktivite kopírovania na karte Zdroj .
Keď povolíte rozdeľovanie kópie, kopírovaním aktivity sa skopírujú paralelné dotazy na váš zdroj Amazon RDS pre SQL Server, aby sa načítali údaje podľa oblastí. Paralelný stupeň sa riadi stupne paralelného spracovania na karte Nastavenia aktivity kopírovania. Ak napríklad nastavíte stupeň paralelného kopírovania na štyri, služba súbežne vygeneruje a spustí štyri dotazy na základe zadanej možnosti a nastavení oblasti a každý dotaz načíta časť údajov z vášho amazonského jazyka RDS pre SQL Server.
Paralelnú kópiu s oblasťou údajov odporúčame povoliť najmä vtedy, keď načítate veľké množstvo údajov zo svojho amazonského jazyka RDS pre SQL Server. Nižšie sú uvedené navrhované konfigurácie pre rôzne scenáre. Pri kopírovaní údajov do úložiska údajov založených na súbore sa odporúča zapísať do priečinka ako viacero súborov (zadať iba názov priečinka). V takom prípade je výkon lepší ako zapisovanie do jedného súboru.
Scenár | Navrhované nastavenia |
---|---|
Úplné načítanie z veľkej tabuľky pomocou fyzických oblastí. | Možnosť oblasti: Fyzické oblasti tabuľky. Počas spustenia služba automaticky rozpozná fyzické oblasti a skopíruje údaje podľa oblastí. Ak chcete skontrolovať, či tabuľka obsahuje fyzickú oblasť alebo nie, môžete odkazovať na tento dotaz. |
Úplné načítanie z veľkej tabuľky bez fyzických oblastí, zatiaľ čo pri celočíselnom stĺpci alebo stĺpci typu datetime na rozdelenie údajov. | Možnosti oblasti: Oblasť dynamického rozsahu. Stĺpec oblasti (voliteľné): Zadajte stĺpec použitý na rozdelenie údajov. Ak parameter nie je zadaný, použije sa stĺpec primárneho kľúča. Horná hranica oblasti a dolná hranica oblasti (voliteľné): Zadajte, ak chcete určiť krok v oblasti. Na filtrovanie riadkov v tabuľke to však nie je možné. Všetky riadky v tabuľke sa rozdelia a skopírujú. Ak parameter nie je zadaný, aktivita kopírovania automaticky rozpozná hodnoty a môže to trvať dlho v závislosti od hodnôt MIN a MAX. Odporúča sa poskytnúť hornú väzbu a dolnú väzbu. Ak napríklad stĺpec "ID" vášho oddielu obsahuje hodnoty v rozsahu od 1 do 100 a spodnú hranicu nastavíte ako 20 a hornú hranicu 80, s paralelnou kópiou ako 4, služba načíta údaje podľa 4 oblastí – ID v rozsahu <=20, [21, 50], [51, 80] a >=81. |
Načítajte veľké množstvo údajov pomocou vlastného dotazu bez fyzických oblastí, zatiaľ čo so stĺpcom celé číslo alebo dátum/dátum a čas na rozdelenie údajov. | Možnosti oblasti: Oblasť dynamického rozsahu. Dotaz: SELECT * FROM <TableName> WHERE ?DfDynamicRangePartitionCondition AND <your_additional_where_clause> .Stĺpec oblasti: zadajte stĺpec, ktorý sa používa na rozdelenie údajov. Horná hranica oblasti a dolná hranica oblasti (voliteľné): Zadajte, ak chcete určiť krok v oblasti. Toto nie je pre filtrovanie riadkov v tabuľke, všetky riadky vo výsledku dotazu sa rozdelia a skopírujú. Ak nie je zadaná, aktivita kopírovaním automaticky zistí hodnotu. Ak má napríklad stĺpec vášho stĺpca oblasti "ID" rozsah hodnôt od 1 do 100 a spodnú hranicu nastavíte ako 20 a hornú hranicu 80, s paralelnou kópiou ako 4 služba načíta údaje podľa 4 oblastí– ID v rozsahu <=20, [21, 50], [51, 80] a >=81. Tu sú ďalšie vzorové dotazy pre rôzne scenáre: • Dotaz na celú tabuľku: SELECT * FROM <TableName> WHERE ?DfDynamicRangePartitionCondition • Dotaz z tabuľky s výberom stĺpca a ďalšími filtrami klauzuly where-clause: SELECT <column_list> FROM <TableName> WHERE ?DfDynamicRangePartitionCondition AND <your_additional_where_clause> • Dotaz s poddotazmi: SELECT <column_list> FROM (<your_sub_query>) AS T WHERE ?DfDynamicRangePartitionCondition AND <your_additional_where_clause> • Dotaz s oblasťou v poddotaze: SELECT <column_list> FROM (SELECT <your_sub_query_column_list> FROM <TableName> WHERE ?DfDynamicRangePartitionCondition) AS T |
Najvhodnejšie postupy na načítanie údajov pomocou možnosti oblasti:
- Vyberte rozlišovací stĺpec ako stĺpec oblasti (napríklad primárny kľúč alebo jedinečný kľúč), aby sa predišlo skresleniu údajov.
- Ak tabuľka obsahuje vstavanú oblasť, na získanie lepšieho výkonu použite možnosť oblasti Fyzické oblasti tabuľky .
Vzorový dotaz na kontrolu fyzickej oblasti
SELECT DISTINCT s.name AS SchemaName, t.name AS TableName, pf.name AS PartitionFunctionName, c.name AS ColumnName, iif(pf.name is null, 'no', 'yes') AS HasPartition
FROM sys.tables AS t
LEFT JOIN sys.objects AS o ON t.object_id = o.object_id
LEFT JOIN sys.schemas AS s ON o.schema_id = s.schema_id
LEFT JOIN sys.indexes AS i ON t.object_id = i.object_id
LEFT JOIN sys.index_columns AS ic ON ic.partition_ordinal > 0 AND ic.index_id = i.index_id AND ic.object_id = t.object_id
LEFT JOIN sys.columns AS c ON c.object_id = ic.object_id AND c.column_id = ic.column_id
LEFT JOIN sys.partition_schemes ps ON i.data_space_id = ps.data_space_id
LEFT JOIN sys.partition_functions pf ON pf.function_id = ps.function_id
WHERE s.name='[your schema]' AND t.name = '[your table name]'
Ak tabuľka obsahuje fyzickú oblasť, zobrazí sa časť HasPartition ako "áno" ako nasledujúca.
Súhrn tabuľky
V nasledujúcej tabuľke nájdete súhrn a ďalšie informácie o aktivite kopírovania amazonského jazyka RDS pre SQL Server.
Zdrojové informácie
Názov | Popis | Value | Požaduje sa | Vlastnosť skriptu JSON |
---|---|---|---|---|
Typ ukladacieho priestoru údajov | Typ ukladacieho priestoru údajov. | Externé | Áno | / |
Pripojenie ion | Pripojenie k zdrojového úložisku údajov. | < vaše pripojenie > | Áno | Pripojenie |
typ Pripojenie ionu | Váš typ pripojenia. Vyberte položku Amazon RDS pre SQL Server. | Amazon RDS pre SQL Server | Áno | / |
Použiť dotaz | Vlastný dotaz SQL na čítanie údajov. | •Tabuľky •Dotaz • Uložená procedúra |
Áno | / |
Table | Vaša tabuľka zdrojových údajov. | < názov cieľovej tabuľky> | No | Schémy table |
Dotaz | Vlastný dotaz SQL na čítanie údajov. | < váš dotaz > | No | sqlReaderQuery |
Uložený názov procedúry | Táto vlastnosť je názov uloženej procedúry, ktorá prečíta údaje zo zdrojovej tabuľky. Posledným príkazom SQL musí byť príkaz SELECT v uloženej procedúre. | < uložený názov procedúry > | No | sqlReaderStoredProcedureName |
Parameter uloženej procedúry | Tieto parametre sa používajú pre uloženú procedúru. Povolené hodnoty sú páry názvov alebo hodnôt. Názvy a puzdro parametrov sa musia zhodovať s názvami a puzdrom parametrov uloženej procedúry. | < páry názvov alebo hodnôt > | No | storedProcedureParameters |
Časový limit dotazu | Časový limit pre vykonanie príkazu dotazu. | Timespan (predvolená hodnota je 120 minút) |
No | queryTimeout (časový limit dotazu) |
Úroveň izolácie | Určuje správanie uzamknutia transakcií pre zdroj SQL. | • Prečítajte si zaviazala • Čítať bez vynechania • Opakovateľný čitateľný • Serializovateľné •Snímka |
No | isolationLevel: • ReadCommitted • ReadUncommitted • Opakovateľné Čítané • Serializovateľné •Snímka |
Možnosť oblasti | Možnosti rozdelenia údajov používané na načítanie údajov zo služby Amazon RDS pre SQL Server. | • Žiadne (predvolené) • Fyzické oblasti tabuľky • Dynamický rozsah |
No | partition (oblasť)Možnosť: • Žiadne (predvolené) • PhysicalPartitionsOfTable • DynamicRange |
Názov stĺpca oblasti | Názov zdrojového stĺpca vo formáte celého čísla alebo typu dátum/dátum a čas (int , , smallint , bigint , date smalldatetime , datetime , datetime2 alebo datetimeoffset ), ktorý sa používa pri delení rozsahu pre paralelnú kópiu. Ak nie je zadaný, index alebo primárny kľúč tabuľky sa automaticky rozpozná a použije ako stĺpec oblasti. Ak na načítanie zdrojových údajov použijete dotaz, zadajte ?DfDynamicRangePartitionCondition klauzulu WHERE. |
< názvy stĺpcov oblasti > | No | partitionColumnName |
Horná hranica oblasti | Maximálna hodnota stĺpca oblasti na rozdelenie rozsahu oblastí. Táto hodnota sa používa na rozhodnutie o kroku rozdelenia, nie na filtrovanie riadkov v tabuľke. Všetky riadky v tabuľke alebo výsledku dotazu sa rozdelia a skopírujú. Ak nie je zadaná, aktivita kopírovaním automaticky zistí hodnotu. | < horná hranica oblasti > | No | partitionUpperBound |
Dolná hranica oblasti | Minimálna hodnota stĺpca oblasti na rozdelenie rozsahu oblastí. Táto hodnota sa používa na rozhodnutie o kroku rozdelenia, nie na filtrovanie riadkov v tabuľke. Všetky riadky v tabuľke alebo výsledku dotazu sa rozdelia a skopírujú. Ak nie je zadaná, aktivita kopírovaním automaticky zistí hodnotu. | < dolná hranica oblasti > | No | partitionLowerBound |
Ďalšie stĺpce | Pridajte ďalšie stĺpce údajov na ukladanie relatívnej cesty alebo statickej hodnoty zdrojových súborov. Pre druhý sa podporuje výraz. | •Meno •Hodnota |
No | additionalColumns: •meno •Hodnota |