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ó)
Keresési tevékenység

(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:

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.

  1. 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:

  2. Keresse meg az SAP-t, és válassza ki az SAP HANA-összekötőt.

    Screenshot of the SAP HANA connector.

  3. Konfigurálja a szolgáltatás részleteit, tesztelje a kapcsolatot, és hozza létre az új társított szolgáltatást.

    Screenshot of linked service configuration for SAP HANA.

Csatlakozás or 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:

Property Leírás Required
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 Csatlakozás ion properties (SAP HANA ODBC Csatlakozás ion Properties) című témakört
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. Example: 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:

Property Leírás Required
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:

Property Leírás Required
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.
Hamis
partíció Gépház Adja meg az adatparticionálás beállításainak csoportját.
Akkor alkalmazható, ha a partíciós beállítás .SapHanaDynamicRange
Hamis
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. Nem.
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.

Screenshot of partition options

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 DateTime
DECIMÁLIS Decimális
DUPLA Dupla
ÚSZÓ Dupla
EGÉSZ Int32
NCLOB Sztring
NVARCHAR Sztring
VALÓDI Egyszeres
Standard kiadás CONDDATE DateTime
RÖVID SZÖVEG Sztring
SMALLDECIMAL Decimális
SMALLINT Int16
STGEOMETRYTYPE Bájt[]
STPOINTTYPE Bájt[]
SZÖVEG Sztring
TIME időtartam
TINYINT Bájt
VARCHAR Sztring
TIMESTAMP DateTime
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.

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.