Adatok másolása az SAP HANA-ból az Azure Data Factory vagy a Synapse Analytics használatával
A következőkre vonatkozik: Azure Data Factory Azure Synapse Analytics
Tipp.
Próbálja ki a Data Factoryt a Microsoft Fabricben, amely egy teljes körű elemzési megoldás a nagyvállalatok számára. A Microsoft Fabric az adattovábbítástól az adatelemzésig, a valós idejű elemzésig, az üzleti intelligenciáig és a jelentéskészítésig mindent lefed. Ismerje meg, hogyan indíthat új próbaverziót ingyenesen!
Ez a cikk azt ismerteti, hogyan használhatja a másolási tevékenységet az Azure Data Factoryben és a Synapse Analytics-folyamatokban az ADATOK SAP HANA-adatbázisból való másolásához. A másolási tevékenység áttekintési cikkére épül, amely a másolási tevékenység általános áttekintését mutatja be.
Tipp.
Az SAP-adatintegrációs forgatókönyv általános támogatásáról az SAP adatintegrációs tanulmányában talál részletes bevezetést az egyes SAP-összekötőkről, összehasonlításról és útmutatásról.
Támogatott képességek
Ez az SAP HANA-összekötő a következő képességeket támogatja:
Támogatott képességek | IR |
---|---|
Copy tevékenység (forrás/fogadó) | (2) |
Keresési tevékenység | (2) |
(1) Azure-integrációs modul (2) Saját üzemeltetésű integrációs modul
A másolási tevékenység által forrásként/fogadóként támogatott adattárak listáját a Támogatott adattárak táblában találja.
Ez az SAP HANA-összekötő a következőket támogatja:
- Adatok másolása az SAP HANA-adatbázis bármely verziójából.
- Adatok másolása HANA-információs modellekből (például elemzési és számítási nézetekből) és sor-/oszloptáblákból.
- Adatok másolása alapszintű vagy Windows-hitelesítéssel.
- Párhuzamos másolás SAP HANA-forrásból. A részletekért tekintse meg az SAP HANA párhuzamos másolatát.
Tipp.
Ha adatokat szeretne másolni az SAP HANA adattárba , használjon általános ODBC-összekötőt. Részletekért tekintse meg az SAP HANA fogadó szakaszát. Vegye figyelembe, hogy az SAP HANA-összekötő és az ODBC-összekötő társított szolgáltatásai eltérő típusúak, ezért nem használhatók újra.
Előfeltételek
Az SAP HANA-összekötő használatához a következőkre van szükség:
- Saját üzemeltetésű integrációs modul beállítása. A részletekért tekintse meg a saját üzemeltetésű integrációs modulról szóló cikket.
- Telepítse az SAP HANA ODBC-illesztőt az integrációs futtatókörnyezeti gépen. Az SAP HANA ODBC-illesztőprogramot az SAP Szoftverletöltő központból töltheti le. Keressen az SAP HANA CLIENT for Windows kulcsszóval.
Első lépések
A Copy tevékenység folyamattal való végrehajtásához használja az alábbi eszközök vagy SDK-k egyikét:
- Az Adatok másolása eszköz
- Az Azure Portal
- A .NET SDK
- A Python SDK
- Azure PowerShell
- A REST API
- Az Azure Resource Manager-sablon
Társított szolgáltatás létrehozása az SAP HANA-hoz felhasználói felülettel
Az alábbi lépésekkel hozzon létre egy társított szolgáltatást az SAP HANA-hoz az Azure Portal felhasználói felületén.
Keresse meg az Azure Data Factory vagy a Synapse-munkaterület Kezelés lapját, és válassza a Társított szolgáltatások lehetőséget, majd kattintson az Új gombra:
Keresse meg az SAP-t, és válassza ki az SAP HANA-összekötőt.
Konfigurálja a szolgáltatás részleteit, tesztelje a kapcsolatot, és hozza létre az új társított szolgáltatást.
Az összekötő konfigurációjának részletei
A következő szakaszok az SAP HANA-összekötőre jellemző Data Factory-entitások meghatározásához használt tulajdonságok részleteit ismertetik.
Társított szolgáltatás tulajdonságai
Az SAP HANA társított szolgáltatásához a következő tulajdonságok támogatottak:
Tulajdonság | Leírás | Kötelező |
---|---|---|
típus | A típustulajdonságnak a következőnek kell lennie: SapHana | Igen |
connectionString | Adja meg az SAP HANA-hoz való csatlakozáshoz szükséges információkat alapszintű vagy Windows-hitelesítéssel. Tekintse meg az alábbi példákat. A kapcsolati sztring a kiszolgáló/port kötelező (az alapértelmezett port 30015), a felhasználónév és a jelszó pedig kötelező az alapszintű hitelesítés használatakor. További speciális beállításokért tekintse meg az SAP HANA ODBC kapcsolati tulajdonságait A jelszót az Azure Key Vaultban is elhelyezheti, és lekérheti a jelszókonfigurációt a kapcsolati sztring. További részletekért tekintse meg az Azure Key Vault hitelesítő adatainak tárolásáról szóló cikket. |
Igen |
Felhasználónév | Adja meg a felhasználónevet a Windows-hitelesítés használatakor. Példa: user@domain.com |
Nem |
jelszó | Adja meg a felhasználói fiók jelszavát. Jelölje meg ezt a mezőt SecureStringként, hogy biztonságosan tárolja, vagy hivatkozzon az Azure Key Vaultban tárolt titkos kódra. | Nem |
connectVia | Az adattárhoz való csatlakozáshoz használandó integrációs modul . Az előfeltételekben leírtaknak megfelelően szükség van egy saját üzemeltetésű integrációs modulra. | Igen |
Példa: alapszintű hitelesítés használata
{
"name": "SapHanaLinkedService",
"properties": {
"type": "SapHana",
"typeProperties": {
"connectionString": "SERVERNODE=<server>:<port (optional)>;UID=<userName>;PWD=<Password>"
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Példa: Windows-hitelesítés használata
{
"name": "SapHanaLinkedService",
"properties": {
"type": "SapHana",
"typeProperties": {
"connectionString": "SERVERNODE=<server>:<port (optional)>;",
"userName": "<username>",
"password": {
"type": "SecureString",
"value": "<password>"
}
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Ha sap HANA társított szolgáltatást használt a következő hasznos adatokkal, az továbbra is támogatott, miközben azt javasoljuk, hogy használja az újat.
Példa:
{
"name": "SapHanaLinkedService",
"properties": {
"type": "SapHana",
"typeProperties": {
"server": "<server>:<port (optional)>",
"authenticationType": "Basic",
"userName": "<username>",
"password": {
"type": "SecureString",
"value": "<password>"
}
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Adathalmaz tulajdonságai
Az adathalmazok meghatározásához elérhető szakaszok és tulajdonságok teljes listáját az adathalmazokról szóló cikkben találja. Ez a szakasz az SAP HANA-adatkészlet által támogatott tulajdonságok listáját tartalmazza.
Az ADATOK SAP HANA-ból való másolásához a következő tulajdonságok támogatottak:
Tulajdonság | Leírás | Kötelező |
---|---|---|
típus | Az adathalmaz típustulajdonságának a következőnek kell lennie: SapHanaTable | Igen |
schema | A séma neve az SAP HANA-adatbázisban. | Nem (ha "lekérdezés" van megadva a tevékenységforrásban) |
table | Az SAP HANA-adatbázisban lévő tábla neve. | Nem (ha "lekérdezés" van megadva a tevékenységforrásban) |
Példa:
{
"name": "SAPHANADataset",
"properties": {
"type": "SapHanaTable",
"typeProperties": {
"schema": "<schema name>",
"table": "<table name>"
},
"schema": [],
"linkedServiceName": {
"referenceName": "<SAP HANA linked service name>",
"type": "LinkedServiceReference"
}
}
}
Ha gépelt adatkészletet használt RelationalTable
, az továbbra is támogatott, miközben a rendszer azt javasolja, hogy használja az újat.
Másolási tevékenység tulajdonságai
A tevékenységek meghatározásához elérhető szakaszok és tulajdonságok teljes listáját a Folyamatok című cikkben találja. Ez a szakasz az SAP HANA-forrás által támogatott tulajdonságok listáját tartalmazza.
SAP HANA mint forrás
Tipp.
Ha az SAP HANA-ból szeretne adatokat hatékonyan betölteni adatparticionálással, további információt az SAP HANA párhuzamos másolásáról tudhat meg.
Ha adatokat szeretne másolni az SAP HANA-ból, a másolási tevékenység forrás szakaszában az alábbi tulajdonságok támogatottak:
Tulajdonság | Leírás | Kötelező |
---|---|---|
típus | A másolási tevékenység forrásának típustulajdonságának a következőnek kell lennie: SapHanaSource | Igen |
Lekérdezés | Megadja az ADATOKAT az SAP HANA-példányból beolvasni kívánt SQL-lekérdezést. | Igen |
partitionOptions | Megadja az adatok SAP HANA-ból való betöltéséhez használt adatparticionálási beállításokat. További információ a párhuzamos másolásról az SAP HANA-szakaszból . Az engedélyezési értékek a következők: Nincs (alapértelmezett), PhysicalPartitionsOfTable, SapHanaDynamicRange. További információ a párhuzamos másolásról az SAP HANA-szakaszból . PhysicalPartitionsOfTable csak akkor használható, ha adatokat másol egy táblából, de lekérdezést nem. Ha egy partíciós beállítás engedélyezve van (vagyis nem None ), az SAP HANA-ból egyidejűleg betöltendő adatok párhuzamossági fokát a parallelCopies másolási tevékenység beállításai vezérlik. |
Téves |
partitionSettings | Adja meg az adatparticionálás beállításainak csoportját. Akkor alkalmazható, ha a partíciós beállítás . SapHanaDynamicRange |
Téves |
partitionColumnName | Adja meg annak a forrásoszlopnak a nevét, amelyet a partíció 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. Akkor alkalmazható, ha a partíció beállítás. SapHanaDynamicRange Ha lekérdezést használ a forrásadatok lekéréséhez, akkor a WHERE záradékban kapcsoljon ?AdfHanaDynamicRangePartitionCondition be. Lásd például az SAP HANA-ból származó párhuzamos másolást. |
Igen, ha partíciót használ SapHanaDynamicRange . |
packetSize | Megadja a hálózati csomag méretét (kilobájtban) az adatok több blokkra való felosztásához. Ha nagy mennyiségű adatot szeretne másolni, a csomagméret növelése a legtöbb esetben növelheti az SAP HANA olvasási sebességét. A csomagméret beállításakor teljesítménytesztelés javasolt. | Szám Az alapértelmezett érték 2048 (2 MB). |
Példa:
"activities":[
{
"name": "CopyFromSAPHANA",
"type": "Copy",
"inputs": [
{
"referenceName": "<SAP HANA input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "SapHanaSource",
"query": "<SQL query for SAP HANA>"
},
"sink": {
"type": "<sink type>"
}
}
}
]
Ha gépelt másolási forrást használt RelationalSource
, az továbbra is támogatott, miközben a rendszer azt javasolja, hogy használja az újat.
Párhuzamos másolat az SAP HANA-ból
Az SAP HANA-összekötő beépített adatparticionálást biztosít az adatok párhuzamos másolásához az SAP HANA-ból. Az adatparticionálási beállításokat a másolási tevékenység forrástábláján találja.
Ha engedélyezi a particionált másolást, a szolgáltatás párhuzamos lekérdezéseket futtat az SAP HANA-forráson az adatok partíciók szerinti lekéréséhez. A párhuzamos fokot a másolási parallelCopies
tevékenység beállításai vezérlik. Ha például négyre van állítva parallelCopies
, a szolgáltatás egyszerre generál és futtat négy lekérdezést 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 SAP HANA-ból.
Javasoljuk, hogy engedélyezze a párhuzamos másolást az adatparticionálással, különösen akkor, ha nagy mennyiségű adatot fog beszedni az SAP HANA-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. | 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 megadott SAP HANA-tábla fizikai partíciótípusát, és kiválasztja a megfelelő partícióstratégiát: - Tartomány particionálása: Kérje le a táblához definiált partícióoszlopot és partíciótartományokat, majd másolja az adatokat tartomány szerint. - Kivonatparticionálás: Használjon kivonatpartíciós kulcsot partícióoszlopként, majd particionálja és másolja az adatokat a szolgáltatás által kiszámított tartományok alapján. - Ciklikus időszeleteléses particionálás vagy nincs partíció: Használjon elsődleges kulcsot partícióoszlopként, majd particionálja és másolja az adatokat a szolgáltatás által kiszámított tartományok alapján. |
Nagy mennyiségű adat betöltése egyéni lekérdezéssel. | Partíciós beállítás: Dinamikus tartomány partíciója. Lekérdezés: SELECT * FROM <TABLENAME> WHERE ?AdfHanaDynamicRangePartitionCondition AND <your_additional_where_clause> .Partícióoszlop: Adja meg a dinamikus tartomány partíciójának alkalmazásához használt oszlopot. A végrehajtás során a szolgáltatás először kiszámítja a megadott partícióoszlop értéktartományait úgy, hogy egyenlően elosztja a sorokat több gyűjtőben a párhuzamos másolási beállítás különböző partícióoszlop-értékeinek száma alapján, majd lecseréli az egyes partíciók ?AdfHanaDynamicRangePartitionCondition partícióoszlop-értéktartományának szűrésére, és elküldi az SAP HANA-nak.Ha több oszlopot szeretne használni partícióoszlopként, összefűzheti az egyes oszlopok értékeit egy oszlopként a lekérdezésben, és megadhatja partícióoszlopként, például SELECT * FROM (SELECT *, CONCAT(<KeyColumn1>, <KeyColumn2>) AS PARTITIONCOLUMN FROM <TABLENAME>) WHERE ?AdfHanaDynamicRangePartitionCondition . |
Példa: lekérdezés egy tábla fizikai partícióival
"source": {
"type": "SapHanaSource",
"partitionOption": "PhysicalPartitionsOfTable"
}
Példa: lekérdezés dinamikus tartománypartícióval
"source": {
"type": "SapHanaSource",
"query": "SELECT * FROM <TABLENAME> WHERE ?AdfHanaDynamicRangePartitionCondition AND <your_additional_where_clause>",
"partitionOption": "SapHanaDynamicRange",
"partitionSettings": {
"partitionColumnName": "<Partition_column_name>"
}
}
Adattípus-leképezés az SAP HANA-hoz
Ha adatokat másol az SAP HANA-ból, a rendszer az alábbi leképezéseket használja az SAP HANA adattípusaiból a szolgáltatáson belül használt köztes adattípusokra. A séma- és adattípus-leképezések segítségével megtudhatja , hogy a másolási tevékenység hogyan rendeli le a forrásséma és az adattípust a fogadóhoz.
SAP HANA-adattípus | Köztes szolgáltatás adattípusa |
---|---|
ALFANUM | Sztring |
BIGINT | Int64 |
BINÁRIS | Bájt[] |
BINTEXT | Sztring |
BLOB | Bájt[] |
BOOL | Bájt |
CLOB | Sztring |
DÁTUM | Dátum/idő |
TIZEDES | Decimális |
DUPLA | Kétszeres |
LEBEG | Kétszeres |
EGÉSZ SZÁM | Int32 |
NCLOB | Sztring |
NVARCHAR | Sztring |
VALÓDI | Egyszeres |
MÁSODDÁTUM | Dátum/idő |
RÖVID SZÖVEG | Sztring |
SMALLDECIMAL | Decimális |
SMALLINT | Int16 |
STGEOMETRYTYPE | Bájt[] |
STPOINTTYPE | Bájt[] |
SMS | Sztring |
TIME | időtartam |
TINYINT | Bájt |
VARCHAR | Sztring |
TIMESTAMP | Dátum/idő |
VARBINARY | Bájt[] |
SAP HANA-fogadó
Az SAP HANA-összekötő jelenleg nem támogatott fogadóként, míg az általános ODBC-összekötő és az SAP HANA-illesztő használatával adatokat írhat az SAP HANA-ba.
Kövesse az előfeltételeket a saját üzemeltetésű integrációs modul beállításához és az SAP HANA ODBC-illesztőprogram első telepítéséhez. Hozzon létre egy ODBC-hez társított szolgáltatást az SAP HANA-adattárhoz való csatlakozáshoz az alábbi példában látható módon, majd hozzon létre egy adathalmazt, és ennek megfelelően másolja a tevékenység fogadóját ODBC-típussal. További információ az ODBC-összekötőről szóló cikkből.
{
"name": "SAPHANAViaODBCLinkedService",
"properties": {
"type": "Odbc",
"typeProperties": {
"connectionString": "Driver={HDBODBC};servernode=<HANA server>.clouddatahub-int.net:30015",
"authenticationType": "Basic",
"userName": "<username>",
"password": {
"type": "SecureString",
"value": "<password>"
}
},
"connectVia": {
"referenceName": "<name of Integration Runtime>",
"type": "IntegrationRuntimeReference"
}
}
}
Keresési tevékenység tulajdonságai
A tulajdonságok részleteinek megismeréséhez tekintse meg a keresési tevékenységet.
Kapcsolódó tartalom
A másolási tevékenység által forrásként és fogadóként támogatott adattárak listáját a támogatott adattárakban találja.