Megosztás a következőn keresztül:


Az Sql Serverhez készült Amazon RDS konfigurálása másolási tevékenységben

Ez a cikk azt ismerteti, hogyan használhatja a másolási tevékenységet egy adatfolyamban adatok másolására az SQL Serverhez készült Amazon RDS-ből.

Támogatott konfiguráció

A másolási tevékenység alatt lévő lapok konfigurációjához tekintse meg a következő szakaszokat.

Általános

Az Általános beállítások lap konfigurálásához tekintse meg az Általános beállításokat ismertető útmutatót.

Forrás

Az alábbi tulajdonságok támogatottak az SQL Serverhez készült Amazon RDS-hez a másolási tevékenység Forrás lapján.

Képernyőkép a forráslapról és a tulajdonságok listájáról.

A következő tulajdonságok szükségesek:

  • Adattár típusa: Válassza a Külső lehetőséget.

  • Csatlakozás ion: Válasszon egy Amazon RDS-t az SQL Server-kapcsolathoz a kapcsolati listából. Ha a kapcsolat nem létezik, hozzon létre egy új Amazon RDS-t az SQL Server-kapcsolathoz az Új lehetőség kiválasztásával.

  • Csatlakozás ion típusa: Válassza az Sql Serverhez készült Amazon RDS-t.

  • Lekérdezés használata: Adja meg az adatok olvasásának módját. A Tábla, a Lekérdezés vagy a Tárolt eljárás lehetőséget választhatja. Az alábbi lista az egyes beállítások konfigurációját ismerteti:

    • Táblázat: Adatok beolvasása a megadott táblából. Válassza ki a forrástáblát a legördülő listából, vagy válassza a Szerkesztés lehetőséget a manuális bevitelhez.

    • Lekérdezés: Adja meg az adatokat beolvasni kívánt egyéni SQL-lekérdezést. Például: select * from MyTable. Vagy válassza a szerkesztéshez a ceruza ikont a kódszerkesztőben.

      Képernyőkép a Lekérdezés beállításairól.

    • Tárolt eljárás: Használja azt a tárolt eljárást, amely adatokat olvas be a forrástáblából. Az utolsó SQL-utasításnak egy Standard kiadás LECT utasításnak kell lennie a tárolt eljárásban.

      • Tárolt eljárás neve: Válassza ki a tárolt eljárást, vagy adja meg manuálisan a tárolt eljárás nevét, amikor a Szerkesztés lehetőséget választja az adatok forrástáblából való olvasásához.

      • Tárolt eljárásparaméterek: Adja meg a tárolt eljárásparaméterek értékeit. Az engedélyezett értékek név- vagy értékpárok. A paraméterek nevének és burkolatának meg kell egyeznie a tárolt eljárásparaméterek nevével és burkolatával. Az importálási paraméterek kiválasztásával lekérheti a tárolt eljárás paramétereit.

        Képernyőkép a tárolt eljárásbeállításokról.

A Speciális területen a következő mezőket adhatja meg:

  • Lekérdezési időtúllépés (perc):: Adja meg a lekérdezési parancs végrehajtásának időtúllépését, az alapértelmezett érték 120 perc. Ha egy paraméter be van állítva ehhez a tulajdonsághoz, az engedélyezett értékek időbélyegek, például "02:00:00" (120 perc).

  • Elkülönítési szint: Az SQL-forrás tranzakciózárolási viselkedését határozza meg. Az engedélyezett értékek a következők: Leolvasott, Nem véglegesített olvasás, Megismételhető olvasás, Szerializálható, Pillanatkép. Ha nincs megadva, a rendszer az adatbázis alapértelmezett elkülönítési szintjét használja. További részletekért tekintse meg az IsolationLevel Enum című témakört .

    Képernyőkép az elkülönítési szint beállításairól.

  • Partíciós beállítás: Adja meg az Adatokat az Sql Serverhez készült Amazon RDS-ből való betöltéséhez használt adatparticionálási beállításokat. Az engedélyezett értékek a következők: Nincs (alapértelmezett), tábla fizikai partíciói és dinamikus tartomány. Ha egy partíciós beállítás engedélyezve van (azaz nem Nincs), a párhuzamosság mértékét, hogy egyidejűleg betöltse az adatokat az Amazon RDS-ből az SQL Serverhez, a másolási tevékenység beállításai lapon a másolási párhuzamosság foka szabályozza.

    • Nincs: Válassza ezt a beállítást, ha nem használ partíciót.

    • A tábla fizikai partíciói: Fizikai partíciók használatakor a rendszer automatikusan meghatározza a partícióoszlopot és a mechanizmust a fizikai tábla definíciója alapján.

    • Dinamikus tartomány: Ha párhuzamos lekérdezést használ, a tartomány partícióparaméterére(?DfDynamicRangePartitionCondition) van szükség. Minta lekérdezés: SELECT * FROM <TableName> WHERE ?DfDynamicRangePartitionCondition.

      • Partícióoszlop neve: Adja meg a forrásoszlop nevét egész számban, vagy dátum/dátum/idő típusú (int, , smallint, bigint, smalldatetimedate, , datetime, , , datetime2) datetimeoffsettípusban, amelyet a tartomány particionálása használ a párhuzamos másoláshoz. Ha nincs megadva, a rendszer automatikusan észleli és partícióoszlopként használja a tábla indexét vagy elsődleges kulcsát.

        Ha lekérdezést használ a forrásadatok lekéréséhez, a WHERE záradékban kapcsoljon ?DfDynamicRangePartitionCondition be. Példaként tekintse meg az SQL Database párhuzamos másolatát.

      • Partíció felső határa: Adja meg a partícióoszlop maximális értékét a partíciótartományok felosztásához. Ez az érték határozza meg a partíciós léptetést, nem pedig a tábla sorainak szűrésére. A tábla vagy lekérdezés eredményének összes sora particionálásra és másolásra kerül. Ha nincs megadva, a másolási tevékenység automatikusan észleli az értéket. Példaként tekintse meg az SQL Database párhuzamos másolatát.

      • Partíció alsó határa: Adja meg a partícióoszlop minimális értékét a partíciótartomány felosztásához. Ez az érték határozza meg a partíciós léptetést, nem pedig a tábla sorainak szűrésére. A tábla vagy lekérdezés eredményének összes sora particionálásra és másolásra kerül. Ha nincs megadva, a másolási tevékenység automatikusan észleli az értéket. Példaként tekintse meg az SQL Database párhuzamos másolatát.

  • További oszlopok: További adatoszlopok hozzáadása a forrásfájlok relatív elérési útjának vagy statikus értékének tárolásához. A kifejezés az utóbbi esetében támogatott.

Vegye figyelembe az alábbiakat:

  • Ha a lekérdezés a forráshoz van megadva, a másolási tevékenység ezt a lekérdezést az SQL Server-forrásHoz készült Amazon RDS-en futtatja az adatok lekéréséhez. Tárolt eljárást is megadhat a tárolt eljárás nevének és a tárolt eljárás paramétereinek megadásával, ha a tárolt eljárás paramétereket vesz fel.
  • Ha tárolt eljárást használ a forrásban az adatok lekéréséhez, vegye figyelembe, hogy a tárolt eljárás más sémát ad vissza, amikor különböző paraméterértéket ad át, akkor előfordulhat, hogy a séma felhasználói felületről történő importálásakor vagy az adatok sql-adatbázisba való automatikus létrehozásakor hiba vagy váratlan eredmény jelenik meg.

Hozzárendelés

A Leképezés lap konfigurálásához válassza a Leképezés lap leképezési beállításainak konfigurálását.

Beállítások

A Gépház lap konfigurációjához válassza a Beállítások lap egyéb beállításainak konfigurálását.

Párhuzamos másolás AZ SQL Database-ből

Az SQL Server-összekötőhöz készült Amazon RDS másolási tevékenységben beépített adatparticionálást biztosít az adatok párhuzamos másolásához. Az adatparticionálási beállításokat a másolási tevékenység Forrás lapján találja.

Ha engedélyezi a particionált másolást, a másolási tevékenység párhuzamos lekérdezéseket futtat az Amazon RDS for SQL Server-forráson az adatok partíciók szerinti betöltéséhez. A párhuzamos fokot a másolási tevékenység beállításai lap másolási párhuzamossági foka szabályozza. Ha például négyre állítja a másolási párhuzamosságot , a szolgáltatás egyszerre négy lekérdezést hoz létre és futtat a megadott partícióbeállítás és beállítások alapján, és mindegyik lekérdezés lekéri az adatok egy részét az Sql Serverhez készült Amazon RDS-ből.

Javasoljuk, hogy engedélyezze a párhuzamos másolást adatparticionálással, különösen akkor, ha nagy mennyiségű adatot tölt be az Sql Serverhez készült Amazon RDS-ből. A következő javasolt konfigurációk különböző forgatókönyvekhez. Ha fájlalapú adattárba másol adatokat, ajánlott több fájlként írni egy mappába (csak a mappa nevét kell megadni), ebben az esetben a teljesítmény jobb, mint egyetlen fájlba írni.

Eset Javasolt beállítások
Teljes terhelés nagy táblából, fizikai partíciókkal. Partíciós beállítás: A tábla fizikai partíciói.

A végrehajtás során a szolgáltatás automatikusan észleli a fizikai partíciókat, és partíciók alapján másolja az adatokat.

Ha ellenőrizni szeretné, hogy a tábla rendelkezik-e fizikai partícióval, tekintse meg ezt a lekérdezést.
Teljes terhelés nagy táblából fizikai partíciók nélkül, egész számmal vagy datetime oszlopmal az adatparticionáláshoz. Partícióbeállítások: Dinamikus tartomány partíciója.
Partícióoszlop (nem kötelező): Adja meg az adatok particionálásához használt oszlopot. Ha nincs megadva, a rendszer az elsődleges kulcs oszlopát használja.
A partíció felső határa és a partíció alsó határa (nem kötelező): Adja meg, hogy meg szeretné-e határozni a partíciós lépést. Ez nem a táblázat sorainak szűrésére, hanem a tábla összes sorának particionálása és másolása történik. Ha nincs megadva, a másolási tevékenység automatikusan észleli az értékeket, és a MIN és a MAX értékektől függően hosszú időt vehet igénybe. Javasoljuk, hogy felső és alsó határt adjon meg.

Ha például az "ID" partícióoszlop értéke 1 és 100 között van, és az alsó kötést 20-ra, a felső kötést pedig 80-ra állítja be, a párhuzamos másolás 4-zel történik, a szolgáltatás 4 partícióval kéri le az adatokat – azonosítók az =20, [21, 50], [51, 80] és >=81 tartományban<.
Nagy mennyiségű adat betöltése egyéni lekérdezéssel fizikai partíciók nélkül, az adatparticionáláshoz pedig egész számmal vagy dátum/dátum/idő oszlopmal. Partícióbeállítások: Dinamikus tartomány partíciója.
Lekérdezés: SELECT * FROM <TableName> WHERE ?DfDynamicRangePartitionCondition AND <your_additional_where_clause>.
Partícióoszlop: Adja meg az adatok particionálásához használt oszlopot.
A partíció felső határa és a partíció alsó határa (nem kötelező): Adja meg, hogy meg szeretné-e határozni a partíciós lépést. Ez nem a tábla sorainak szűrésére használható, a lekérdezés eredményének összes sora particionálásra és másolásra kerül. Ha nincs megadva, a másolási tevékenység automatikusan észleli az értéket.

Ha például az "ID" partícióoszlop értéke 1 és 100 között van, és az alsó kötést 20-ra, a felső kötést pedig 80-ra állítja be, a párhuzamos másolás 4-zel, akkor a szolgáltatás 4 partícióazonosítóval kéri le az adatokat az =20, [21, 50], [51, 80] és >=81 tartományban<.

Az alábbiakban további minta lekérdezéseket talál a különböző forgatókönyvekhez:
• A teljes tábla lekérdezése:
SELECT * FROM <TableName> WHERE ?DfDynamicRangePartitionCondition
• Lekérdezés oszlopkijelöléssel és további where-clause szűrőkkel rendelkező táblából:
SELECT <column_list> FROM <TableName> WHERE ?DfDynamicRangePartitionCondition AND <your_additional_where_clause>
• Lekérdezés al lekérdezésekkel:
SELECT <column_list> FROM (<your_sub_query>) AS T WHERE ?DfDynamicRangePartitionCondition AND <your_additional_where_clause>
• Lekérdezés a partícióval az al lekérdezésben:
SELECT <column_list> FROM (SELECT <your_sub_query_column_list> FROM <TableName> WHERE ?DfDynamicRangePartitionCondition) AS T

Ajánlott eljárások az adatok partíciós beállítással való betöltéséhez:

  1. Válassza a megkülönböztető oszlopot partícióoszlopként (például elsődleges kulcs vagy egyedi kulcs) az adateltérés elkerülése érdekében.
  2. Ha a tábla beépített partícióval rendelkezik, használja a tábla fizikai partícióit a jobb teljesítmény érdekében.

Minta lekérdezés a fizikai partíció ellenőrzéséhez

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]'

Ha a tábla fizikai partícióval rendelkezik, a "HasPartition" az alábbihoz hasonlóan "igen" értékként jelenik meg.

Sql-lekérdezés eredménye

Táblázat összefoglalása

Az SQL Server-másolási tevékenységhez készült Amazon RDS-ről az alábbi táblázatból tájékozódhat.

Forrásadatok

Név Leírás Érték Szükséges JSON-szkripttulajdonság
Adattár típusa Az adattár típusa. Külső Igen /
Kapcsolat A forrásadattárhoz való kapcsolódás. < a kapcsolat > Igen kapcsolat
Kapcsolat típusa A kapcsolat típusa. Válassza az SQL Serverhez készült Amazon RDS lehetőséget. Sql Serverhez készült Amazon RDS Igen /
Lekérdezés használata Az adatok olvasására szolgáló egyéni SQL-lekérdezés. •Táblázat
•Lekérdezés
• Tárolt eljárás
Igen /
Tábla A forrásadattábla. < a céltábla neve> Nem Séma
table
Lekérdezés Az adatok olvasására szolgáló egyéni SQL-lekérdezés. < a lekérdezés > Nem sqlReaderQuery
Tárolt eljárás neve Ez a tulajdonság annak a tárolt eljárásnak a neve, amely adatokat olvas be a forrástáblából. Az utolsó SQL-utasításnak egy Standard kiadás LECT utasításnak kell lennie a tárolt eljárásban. < tárolt eljárás neve > Nem sqlReaderStoredProcedureName
Tárolt eljárás paramétere Ezek a paraméterek a tárolt eljáráshoz tartoznak. Az engedélyezett értékek név- vagy értékpárok. A paraméterek nevének és burkolatának meg kell egyeznie a tárolt eljárásparaméterek nevével és burkolatával. < név- vagy értékpárok > Nem storedProcedureParameters
Lekérdezés időtúllépése A lekérdezési parancs végrehajtásának időtúllépése. időtartomány
(az alapértelmezett érték 120 perc)
Nem queryTimeout
Elkülönítési szint Az SQL-forrás tranzakciózárolási viselkedését adja meg. • Lekötött olvasás
• Nem véglegesített olvasás
• Ismételhető olvasás
•Szerializálható
•Pillanatkép
Nem isolationLevel:
• ReadCommitted
• ReadUncommitted
• RepeatableRead
•Szerializálható
•Pillanatkép
Partíciós beállítás Az adatok SQL Serverhez készült Amazon RDS-ből való betöltéséhez használt adatparticionálási beállítások. • Nincs (alapértelmezett)
• A tábla fizikai partíciói
• Dinamikus tartomány
Nem partitionOption:
• Nincs (alapértelmezett)
• PhysicalPartitionsOfTable
• DynamicRange
Partícióoszlop neve A forrásoszlop neve egész számban vagy dátum/dátum/idő típusban (int, , smallint, bigint, datesmalldatetime, datetime, , datetime2vagy datetimeoffset) , amelyet a tartomány particionálása használ a párhuzamos másoláshoz. Ha nincs megadva, a rendszer automatikusan észleli és partícióoszlopként használja a tábla indexét vagy elsődleges kulcsát. Ha lekérdezést használ a forrásadatok lekéréséhez, a WHERE záradékban kapcsoljon ?DfDynamicRangePartitionCondition be. < a partícióoszlopok nevei > Nem partitionColumnName
Partíció felső határa A partíciótartományok felosztásához használt partícióoszlop maximális értéke. Ez az érték határozza meg a partíciós léptetést, nem pedig a tábla sorainak szűrésére. A tábla vagy lekérdezés eredményének összes sora particionálásra és másolásra kerül. Ha nincs megadva, a másolási tevékenység automatikusan észleli az értéket. < a partíció felső határa > Nem partitionUpperBound
Partíció alsó határa A partíciótartományok felosztásához használt partícióoszlop minimális értéke. Ez az érték határozza meg a partíciós léptetést, nem pedig a tábla sorainak szűrésére. A tábla vagy lekérdezés eredményének összes sora particionálásra és másolásra kerül. Ha nincs megadva, a másolási tevékenység automatikusan észleli az értéket. < a partíció alsó határa > Nem partitionLowerBound
További oszlopok Adjon hozzá további adatoszlopokat a forrásfájlok relatív elérési útjának vagy statikus értékének tárolásához. A kifejezés az utóbbi esetében támogatott. •Név
•Érték
Nem továbbicolumnok:
•név
•Érték