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


Teljesítmény és hibaelhárítás SAP-adatkinyeréshez

Ez a cikk az "SAP bővítse és innováljuk az adatokat: Ajánlott eljárások" című cikksorozat része.

Az adatintegrációhoz számos módon lehet csatlakozni az SAP-rendszerhez. Az alábbi szakaszok általános és összekötőspecifikus szempontokat és javaslatokat ismertetnek.

Teljesítmény

Fontos, hogy optimális beállításokat konfiguráljon a forráshoz és a célhoz, hogy a lehető legjobb teljesítményt érhesse el az adatkinyerés és -feldolgozás során.

Általános megfontolások

  • Győződjön meg arról, hogy a megfelelő SAP-paraméterek be vannak állítva egy maximális egyidejű kapcsolathoz.
  • Fontolja meg az SAP-csoport bejelentkezési típusának használatát a jobb teljesítmény és terheléselosztás érdekében.
  • Győződjön meg arról, hogy a helyi integrációs modul (SHIR) virtuális gép mérete megfelelő, és magas rendelkezésre állású.
  • Ha nagy adathalmazokkal dolgozik, ellenőrizze, hogy a használt összekötő rendelkezik-e particionálási képességgel. Számos SAP-összekötő támogatja a particionálási és párhuzamosítási képességeket az adatbetöltés felgyorsítása érdekében. Ha ezt a módszert használja, az adatok kisebb adattömbökbe vannak csomagolva, amelyek több párhuzamos folyamattal tölthetők be. További információ: összekötőspecifikus dokumentáció.

Általános javaslatok

  • Az SAP-tranzakció RZ12 használatával módosíthatja a maximális egyidejű kapcsolatok értékeit.

    SAP-paraméterek az RFC-HEZ – RZ12: Az alábbi paraméter korlátozhatja az egy felhasználó vagy egy alkalmazás számára engedélyezett RFC-hívások számát, így győződjön meg arról, hogy ez a korlátozás nem okoz szűk keresztmetszetet.

    Képernyőkép a Példányfüggő tulajdonságok szakaszról. A különálló bejelentkezések maximális száma ki van emelve.

    Képernyőkép az ARFC-kvótákról a Performance Assistant ablakban.

  • Csatlakozás AZ SAP-hoz bejelentkezési csoport használatával: Az SHIR-nek (saját üzemeltetésű integrációs modulnak) sap-bejelentkezési csoporttal (üzenetkiszolgálón keresztül) kell csatlakoznia az SAP-hoz, nem pedig egy adott alkalmazáskiszolgálóhoz, hogy biztosítsa a számítási feladatok elosztását az összes elérhető alkalmazáskiszolgálón.

    Megjegyzés

    Az adatfolyam Spark-fürt és az SHIR hatékony. Számos belső SAP-másolási tevékenység( például 16) aktiválható és végrehajtható. Ha azonban az SAP-kiszolgáló egyidejű kapcsolatszáma kicsi, például 8, a perf az SAP-oldalról olvas be adatokat.

  • Kezdje 4vCPU-val és 16 GB-os virtuális gépekkel az SHIR-hez. Az alábbi lépések az SAP és az SHIR párbeszédablak-munkafolyamatának kapcsolatát mutatják be.

    1. Ellenőrizze, hogy az ügyfél gyenge fizikai gépet használ-e az SHIR beállításához és telepítéséhez egy belső SAP-példány futtatásához.
    2. Nyissa meg a Azure Data Factory portált, és keresse meg az adatfolyamban használt kapcsolódó SAP CDC társított szolgáltatást. Ellenőrizze a hivatkozott SHIR-nevet.
    3. Ellenőrizze annak a fizikai gépnek a cpu-, memória-, hálózat- és lemezbeállításait, ahol az SHIR telepítve van.
    4. Ellenőrizze, hogy hány diawp.exe fut az SHIR-gépen. Egy diawp.exe másolási tevékenység futtatható. A szám diawp.exe a gép processzor-, memória-, hálózat- és lemezbeállításaitól függ.

    Képernyőkép a feladatkezelő párbeszédpanel-munkafolyamatairól.

  • Ha egyszerre több partíciót szeretne párhuzamosan futtatni az SHIR-en, használjon egy hatékony virtuális gépet az SHIR beállításához. Vagy használja a horizontális felskálázást az SHIR magas rendelkezésre állási és méretezhetőségi funkcióinak használatával, hogy több csomóponttal rendelkezzen. További információ: Magas rendelkezésre állás és méretezhetőség.

Partíciók

Az alábbi szakasz az SAP CDC-összekötő particionálási folyamatát ismerteti. A folyamat ugyanaz az SAP-tábla és az SAP BW Open Hub-összekötő esetében.

Képernyőkép az adatkinyerési erőforrásokról.

A skálázás a saját üzemeltetésű integrációs modulon vagy az Azure IR-n végezhető el a teljesítménykövetelményektől függően. Tekintse át az SHIR processzorhasználatát a metrikák megtekintéséhez, hogy könnyebben eldönthesse a skálázási megközelítést. Az SHIR vertikálisan vagy vízszintesen skálázható az Igényeinek megfelelően. Javasoljuk, hogy helyezze üzembe az Azure IR-t egy alacsonyabb termékváltozatban. Vertikális felskálázás, hogy megfeleljen a terheléstesztelés által meghatározott teljesítménykövetelményeknek, ahelyett, hogy szükségtelenül a felsőbb végponton kezdene.

Megjegyzés

Ha eléri a 70%-os kapacitást, vertikálisan felskálázhatja vagy felskálázhatja az SHIR-t.

Az SAP CDC-összekötők particionálási folyamatát bemutató ábra.

A particionálás hasznos kezdeti vagy nagy teljes terhelésekhez, és általában nem szükséges a különbözeti terhelésekhez. Ha nem adja meg a partíciót, az SAP-rendszerben alapértelmezés szerint 1 "gyártó" (általában egy kötegelt folyamat) beolvassa a forrásadatokat az operatív adatsorba (ODQ), és az SHIR lekéri az adatokat az ODQ-ból. Alapértelmezés szerint az SHIR négy szálat használ az adatok ODQ-ból való lekéréséhez, így az SAP-ban jelenleg négy párbeszédpanel-folyamat van elfoglalva.

A particionálás lényege, hogy egy nagy kezdeti adatkészletet több kisebb, egymástól elválasztott részhalmazra osztunk fel, amelyek ideális esetben egyenlő méretűek, és amelyek párhuzamosan feldolgozhatók. Ez a módszer csökkenti a forrástáblából az ODQ-ba lineárisan előállított adatokhoz szükséges időt. Ez a módszer feltételezi, hogy az SAP oldalán elegendő erőforrás áll rendelkezésre a terhelés kezeléséhez.

Megjegyzés

  • A párhuzamosan végrehajtott partíciók számát az Azure IR illesztőprogram-magjainak száma korlátozza. Ennek a korlátozásnak a megoldása jelenleg folyamatban van.
  • Az SAP-tranzakció ODQMON minden egyes egysége vagy csomagja egyetlen fájl az előkészítési mappában.

Tervezési szempontok a folyamatok CDC használatával történő futtatásakor

  • Ellenőrizze az SAP-t a fázis időtartamának ellenőrzéséhez.

  • Ellenőrizze a futtatókörnyezet teljesítményét a fogadóban.

  • Fontolja meg a particionálási funkció használatát a jobb átviteli sebesség érdekében a teljesítmény növelése érdekében.

  • Ha az SAP fázisideje lassú, fontolja meg az SHIR magasabb specifikációkra való átméretezését.

    Képernyőkép az SAP-nak a Streamadatok párbeszédpanelen történő fázisidőről.

  • Ellenőrizze, hogy a fogadó feldolgozási ideje túl lassú-e.

    Képernyőkép a fogadó feldolgozási idejéről a Streamadatok párbeszédpanelen.

    Ha egy kis fürtöt használ a leképezési adatfolyam futtatásához, az hatással lehet a fogadó teljesítményére. Használjon nagy fürtöt, például 16 + 256 magot, így a perf beolvassa az adatokat a fázisból, és a fogadóba ír.

  • Nagy adatmennyiségek esetén javasoljuk, hogy particionálja a terhelést párhuzamos feladatok futtatásához, de a partíciók száma ne haladja meg vagy ne haladja meg az Azure IR-magot, más néven Spark-fürtmagot.

    A partíciók meghatározásához használja az Optimalizálás lapot. A CDC-összekötőben használhatja a forrásparticionálást.

    Képernyőkép a forrásparticionálásról az Optimalizálás lapon.

    Megjegyzés

    • Közvetlen korreláció van az SHIR-magokkal és az Azure IR-csomópontokkal rendelkező partíciók száma között.
    • Az SAP CDC-összekötő "Odata-hozzáférés az operatív adatkiépítéshez" típusú Odata-előfizetőként szerepel az SAP-rendszerben az ODQMON alatt.

Tervezési szempontok táblaösszekötő használata esetén

  • Optimalizálja a particionálást a jobb teljesítmény érdekében.
  • Vegye figyelembe az SAP Table párhuzamossági fokát.
  • Fontolja meg egyetlen fájltervet a célfoglaló számára.
  • Nagy adatmennyiségek használatakor mérje fel az átviteli sebességet.

Tervezési javaslatok tábla-összekötő használata esetén

  • Partíció: Amikor particionál az SAP Table-összekötőben, az egy mögöttes select utasítást többre osztja, ha a záradékok egy megfelelő mezőben találhatók, például egy magas számosságú mező használatával. Ha az SAP-tábla nagy mennyiségű adatot tartalmaz, engedélyezze a particionálást az adatok kisebb partíciókra való felosztásához. Próbálja meg optimalizálni a partíciók számát (paraméter maxPartitionsNumber), hogy a partíciók elég kicsik legyenek ahhoz, hogy elkerüljék a memóriaképeket az SAP-ban, de elég nagyok legyenek a kinyerés felgyorsításához.

  • Párhuzamosság: A másolási párhuzamosság mértéke (paraméter parallelCopies) a particionálással párhuzamosan működik, és utasítja az SHIR-t, hogy kezdeményezzen párhuzamos RFC-hívásokat az SAP-rendszerbe. Ha például ezt a paramétert 4 értékre állítja, a szolgáltatás egyszerre négy lekérdezést generál és futtat a megadott partícióbeállítás és beállítások alapján. Minden lekérdezés lekéri az adatok egy részét az SAP-táblából.

    Az optimális eredmény érdekében a partíciók számának a másolási párhuzamosság mértékének többszörösének kell lennie.

    Amikor adatokat másol az SAP-táblából a bináris fogadókba, a rendszer automatikusan módosítja a tényleges párhuzamos számot az SHIR-ben rendelkezésre álló memóriamennyiség alapján. Jegyezze fel az SHIR virtuális gép méretét az egyes tesztciklusokhoz, a másolási párhuzamosság mértékét és a partíciók számát. Figyelje meg az SHIR virtuális gép teljesítményét, a forrás SAP-rendszer teljesítményét és a kívánt és a párhuzamosság tényleges fokát. Iteratív eljárással azonosíthatja az SHIR virtuális gép optimális beállításait és ideális méretét. Fontolja meg az összes olyan betöltési folyamatot, amely egyszerre tölt be adatokat egy vagy több SAP-rendszerből.

    Figyelje meg, hogy az SAP-hoz intézett RFC-hívások száma a konfigurált párhuzamossági szinthez viszonyított. Ha az SAP felé irányuló RFC-hívások száma kisebb, mint a párhuzamosság mértéke, ellenőrizze, hogy az SHIR virtuális gép rendelkezik-e elegendő rendelkezésre álló memóriával és CPU-erőforrással. Szükség esetén válasszon egy nagyobb virtuális gépet. A forrás SAP-rendszer úgy van konfigurálva, hogy korlátozza a párhuzamos kapcsolatok számát. További információt a jelen cikk Általános javaslatok szakaszában talál.

  • Fájlok száma: Ha adatokat másol egy fájlalapú adattárba, és a megcélzott fogadó mappaként van konfigurálva, alapértelmezés szerint több fájl jön létre. Ha beállítja a fileName tulajdonságot a fogadóban, az adatok egyetlen fájlba lesznek írva. Javasoljuk, hogy több fájlként írjon egy mappába, mert az nagyobb írási átviteli sebességet ér el, mint egy fájlba való írás.

  • Teljesítménymutató: Javasoljuk, hogy nagy mennyiségű adat betöltéséhez használja a teljesítményértékelési gyakorlatot. Ez a módszer különböző paramétereket, például particionálást, párhuzamossági fokot és a fájlok számát határozza meg az adott architektúra, kötet és adattípus optimális beállításának meghatározásához. Gyűjtsön adatokat a tesztekből a következő formátumban.

    A teljesítménymutató adatformátumát bemutató képernyőkép.

Hibaelhárítás

  • Az SAP-rendszerből történő lassú vagy sikertelen kinyeréshez használja az SM37-ből származó SAP-naplókat, és hasonlítsa össze azokat a Data Factoryben lévő értékekkel.

  • Ha csak egy kötegelt feladat aktiválódik, állítsa be úgy az SAP-forráspartíciókat, hogy a Data Factory leképezési adatfolyamában javuljon a teljesítmény. További információ: 6. lépés az Adatfolyam-tulajdonságok leképezése című témakörben.

  • Ha több kötegelt feladat aktiválódik az SAP-rendszerben , és jelentős különbség van az egyes kötegelt feladatok kezdési időpontja között, módosítsa az Azure IR méretét. Ha növeli az illesztőprogram-csomópontok számát az Azure IR-ben, az SAP oldalán nő a kötegelt feladatok párhuzamossága.

    Megjegyzés

    Az Azure IR illesztőcsomópontjainak maximális száma 16. Minden illesztőcsomópont csak egy kötegfolyamatot indíthat el.

  • Ellenőrizze a naplókat az SHIR-ben. A naplók megtekintéséhez lépjen az SHIR virtuális gépre. Nyissa meg az Eseménymegjelenítő > Alkalmazás- és szolgáltatásnaplók > Összekötők integrációs > modult.

  • Ha naplókat szeretne küldeni a támogatásnak, lépjen az SHIR virtuális gépre. Nyissa meg a Integration Runtime Konfigurációkezelő > diagnosztikai > küldési naplóit. Ez a művelet elküldi a naplókat az elmúlt hét napból, és megadja a jelentés azonosítóját. Szüksége lesz erre a jelentésazonosítóra és a futtatás futtatási azonosítójára. Dokumentálja a jelentés azonosítóját későbbi referenciaként.

  • Ha az SAP CDC-összekötőt SLT-forgatókönyvben használja:

    • Győződjön meg arról, hogy teljesülnek az előfeltételek. Szerepkörök szükségesek az SAP Landscape Transformation (SLT) felhasználó számára, például az ADFSLTUSER OLTP-rendszerekben vagy ECC az SLT-replikáció működéséhez. További információ: Milyen engedélyekre és szerepkörökre van szükség.

    • Ha hibák történnek egy SLT-forgatókönyvben, tekintse meg az elemzésre vonatkozó javaslatokat. Először különítse el és tesztelje a forgatókönyvet az SAP-megoldáson belül. Tesztelje például a Data Factoryn kívül az SAP RODPS_REPL_TEST által az SE38-ban biztosított tesztprogram futtatásával. Ha a probléma az SAP oldalán található, a jelentés használatakor ugyanaz a hiba jelenik meg. Az SAP-beli adatkinyerés a tranzakciókód ODQMONhasználatával elemezhető.

      Ha a replikáció akkor működik, amikor ezt a tesztjelentést használja, de a Data Factoryvel nem, forduljon az Azure vagy a Data Factory ügyfélszolgálatához.

      Az alábbi példa egy se38-beli RODPS_REPL_TEST jelentést mutat be:

      Képernyőkép az ODP-környezet legördülő listából az Adatok kinyerése párbeszédpanelen.

      Képernyőkép az Adatok kinyerése párbeszédpanel beállításairól.

      Képernyőkép az Adatok kinyerése párbeszédpanelről.

      Az alábbi példa a tranzakció kódját ODQMONmutatja be:

      Képernyőkép a Delta-üzenetsor adategységeinek monitorozása ablakról.

    • Amikor a Data Factory társított szolgáltatás csatlakozik az SLT-rendszerhez, nem jeleníti meg az SLT tömeges átvitel azonosítóit a Context mező frissítésekor.

      Képernyőkép a Data Factory társított szolgáltatásról.

    • Az SAP LT replikációs kiszolgáló ODP-/ODQ-replikációs forgatókönyvének futtatásához aktiválja a következő üzleti bővítmény (BAdI) implementációt.

      BAdI: BADI_ODQ_QUEUE_MODEL

      Fejlesztés implementálása: ODQ_ENH_SLT_REPLICATION

      1. A tranzakciós LTRC-ben lépjen a Expert Function (Szakértői függvény ) lapra, és válassza az Activate /Deactivate BAdI Implementation (BAdI-implementáció aktiválása/ inaktiválása ) lehetőséget az implementáció aktiválásához.

        Képernyőkép a Szakértői függvény lapról.

      2. Válassza az Igen lehetőséget.

        Képernyőkép a BADI-implementációk testreszabása párbeszédpanelről.

      3. Az ODQ/ODP-specifikus függvények mappában válassza annak ellenőrzése, hogy a BAdI-implementáció aktív-e.

        Képernyőkép az ODQ ODP-specifikus függvénymappáról. Ellenőrizze, hogy a BADI implementáció aktív-e jelölőnégyzet be van-e jelölve.

        A párbeszédpanelen a programtevékenység látható.

        Képernyőkép a programtevékenységről.

  • Előfizetések alaphelyzetbe állítása. A replikációs adatok friss kinyeréséhez vagy leállításához távolítsa el az előfizetést az ODQMON-ban. Ez a művelet a bejegyzéseket is eltávolítja az LTRC-ből. Az előfizetés alaphelyzetbe állítása után eltarthat néhány percig, mire megjelenik a hatás az LTRC-ben. Ütemezze az operatív adatkiépítési (ODP) takarítási feladatokat, hogy a delta üzenetsorok tisztán maradjanak, például ODQ_CLEANUP_CLIENT_004

  • CDS_VIEW (DHCDCMON tranzakció). Az S/4HANA 1909-től kezdve az SAP olyan CDS-nézetekből replikál adatokat, amelyek adatalapú eseményindítókat használnak dátumoszlopok helyett. A koncepció hasonló az SLT-hez, de ahelyett, hogy az LTRC-tranzakciót használva figyeli, a DHCDCMON tranzakciót használja.

SLT-hibaelhárítás

Az SLT replikációs kiszolgáló valós idejű adatreplikálást biztosít SAP-forrásokból és/vagy nem SAP-forrásokból SAP-célokra és/vagy nem SAP-célokra. Az SLT-ből az Azure-ba történő kinyerés figyeléséhez háromféle eszközkészlet létezik.

  • Az ODQMON az adatkinyerés általános monitorozási eszköze. Indítsa el az elemzést az ODQMON használatával az adatkonzisztenciák nyomon követéséhez, a kezdeti teljesítményelemzéshez, valamint az előfizetési és kinyerési kérelmek megnyitásához.
  • Az LTRC a teljesítményelemzés ellenőrzésére használható tranzakció. Ez akkor hasznos, ha a forrásrendszerből az ODP-be történő adatreplikációs problémákat tapasztal, mert figyelheti az adatfolyamot, és inkonzisztenciákat kereshet.
  • Az SM37 részletes monitorozást biztosít az egyes SLT-kinyerési lépésekről.

A normál takarítást az ODQMON használatával kell elvégezni, ahol közvetlenül kezelheti az előfizetést, és nem használhatja az LTRC-t ugyanarra a célra.

Problémákba ütközhet az adatok SLT-ből való kinyerésekor, például:

  • A kinyerés nem fut. Ellenőrizze, hogy az SAP CDC-kapcsolat létrehozott-e kapcsolatot az ODQMON-ban, és ellenőrizze, hogy létezik-e az előfizetés.

  • Adatkonzisztenciák. Ellenőrizze az ODQMON-t az egyes adatkérések megtekintéséhez, és ellenőrizze, hogy ott láthatók-e az adatok. Ha látja az adatokat az ODQMON-ban, de a Azure Synapse vagy a Data Factoryben nem, a vizsgálatnak az Azure oldalán kell történnie. Ha nem látja az adatokat az ODQMON-ban, végezzen elemzést az SLT-keretrendszerről LTRC használatával.

  • Teljesítményproblémák. Az adatkinyerés két lépésből áll. Először az SLT beolvassa az adatokat a forrásrendszerből, és átadja azokat az ODP-nek. Másodszor, az SAP CDC-összekötő felveszi az adatokat az ODP-ből, és átviszi azokat a kiválasztott adattárba. Az LTRC-tranzakcióval elemezheti a kinyerési folyamat első részét. Az ODP-ből az Azure-ba történő adatkinyerés elemzéséhez használja az ODQMON és a Data Factory vagy a Synapse monitorozási eszközeit.

SLT-teljesítmény

A kezdeti betöltési módban (ODPSLT) három lépésben nyerhet ki adatokat az SLT-ből az ODP-be:

  1. Migrálási objektumok létrehozása. Ez a folyamat csak néhány másodpercet vesz igénybe.
  2. A forrástáblát kisebb adattömbökre felosztó tervszámítás elérése. Ez a lépés az SLT-konfiguráció során kiválasztott kezdeti betöltési módtól és a tábla méretétől függ. Az erőforrás-optimalizált beállítás használata ajánlott.
  3. Az adatbetöltés átviszi az adatokat a forrásrendszerből az ODP-be.
  • Minden lépést a háttérfeladatok vezérelnek. Az időtartam monitorozásához használhatja az SM37- és LTRC-tranzakciókat. Ha a rendszer túlhasznált, a háttérfeladatok később kezdődhetnek, mert nincs elég szabad kötegelt munkafolyamat. Ha a feladatok tétlenek, a teljesítmény romlik.

  • Ha a hozzáférési terv számítása hosszú időt vesz igénybe, és a kezdeti betöltési mód "teljesítményoptimalizált" értékre van állítva, módosítsa "erőforrás-optimalizált" értékre, majd futtassa újra a kinyerést. Ha az adatbetöltés hosszú időt vesz igénybe, növelje a párhuzamos szálak számát a konfigurációban.

  • Ha önálló architektúrát használ az SLT-replikációhoz (dedikált SLT-replikációs kiszolgáló), a forrásrendszer és a replikációs kiszolgáló közötti hálózati átviteli sebesség befolyásolhatja a kinyerési teljesítményt.

  • Replikáció esetén:

    • Győződjön meg arról, hogy elegendő olyan adatátviteli feladattal rendelkezik, amely nincs lefoglalva a kezdeti terheléshez.
    • Ellenőrizze, hogy nincs-e feldolgozatlan naplózási táblarekord a terhelési statisztikákban.
    • Győződjön meg arról, hogy a replikációs beállítás valós idejűre van állítva.
  • A speciális replikációs beállítások az LTRS-ben érhetők el. További információt az SLT hibaelhárítási útmutatójában talál.

  • A különböző SAP-kiadások különböző LTRC felhasználói felületekkel rendelkeznek. Az alábbi képernyőképeken ugyanaz az oldal látható két különböző kiadás esetében.

    SAP S/4HANA:

    Képernyőkép az SAP S/4HANA képernyőről.

    SAP ECC:

    Képernyőkép az SAP ECC képernyőről.

Monitor

Az SAP-adatok kinyerésének monitorozásával kapcsolatos információkért tekintse meg ezeket az erőforrásokat:

Következő lépések