Ladění výkonu v Informatica: Kompletní výukový program

⚡ Chytré shrnutí

Ladění výkonu v Informatice odstraňuje nejpomalejší odkaz v relaci, jednu vrstvu po druhé, a to od cíle zpět přes zdroj, tedy mapu.ping, relace a nakonec operační systém.

  • 🎯 Pevné pořadí: Informatica doporučuje nejprve hledat úzká hrdla, poté zdroj a nakonec mapu.ping, poté relace a nakonec systém.
  • 🧵 Statistiky vlákna vypovídají o všem: Nejrušnější z vláken pro čtení, transformaci a zápis pojmenuje vrstvu, která vyžaduje práci.
  • 🚿 Filtrovat brzy: Řádky zahozené v kvalifikátoru zdroje se nikdy nedostanou do kanálu, takže v následném postupu nestojí nic.
  • 🗄️ Odeslání práce do databáze: Spojení, řazení a filtrování obvykle v SQL běží rychleji než v transformaci.
  • 🧊 Disciplína mezipaměti: Méně portů a méně vyhledávacích sloupců znamená menší mezipaměti a méně stránkování disku.
  • ⚙️ Nastavení relace je důležité: Velikost vyrovnávací paměti DTM, velikost bloku vyrovnávací paměti, interval potvrzení a optimalizace posunu jsou vyladěny po mapování.ping je čistá.

Ladění výkonu v Informatica

Co je ladění výkonu v Informatice?

Ladění výkonu v Informatice spočívá v nalezení komponenty, která omezuje rychlost běhu relace, odstranění tohoto limitu a následném opakování cvičení s komponentou, která se stane další nejpomalejší. Relace je vždy jen tak rychlá, jak rychlá je její nejpomalejší vrstva, takže ladění transformace, která nikdy nebyla problémem, nepřináší žádný měřitelný zisk.

Společnost Informatica identifikuje pět míst, kde se může nacházet úzké hrdlo, a doporučuje je kontrolovat v pevně stanoveném pořadí.

Objednávka vrstva Typická příčina
1 Target Pomalé zápisy, krátké intervaly kontrolních bodů, malá velikost síťových paketů databáze
2 Zdroj Pomalý dotaz, chybějící indexy, čtení zbytečných sloupců
3 Mapaping Drahé nebo špatně umístěné transformace, nadměrně velké mezipaměti
4 Zasedání Buffer paměť, interval potvrzení, dělení, typ načítání
5 Systém Nasycení CPU, čekání na I/O operace, stránkování na počítači Integration Service

Toto pořadí je záměrné. Cíl, který nedokáže dostatečně rychle absorbovat řádky, bude způsobovat, že každá vrstva nadřazeného kódu bude vypadat pomalu, takže se kontroluje jako první. Celá metoda je popsána v Průvodce laděním výkonu PowerCenteru.

Jak identifikovat úzká místa ve výkonu

Hádání, která vrstva je pomalá, je více ztrátou času než jejím měřením. Pět výše uvedených vrstev pokrývají čtyři techniky.

  • Spusťte zkušební relaci. Nakonfigurujte kopii Zasedání zapisovat do cílového plochého souboru. Pokud se relace znatelně zrychlí, je cíl úzkým hrdlem. Zrcadlový obraz stejného triku, čtení ze zdrojového plochého souboru, izoluje úzké hrdlo zdroje.
  • Analyzujte statistiky vláken. Správce transformace dat spouští vlákno čtečky, jedno nebo více transformačních vláken a vlákno zapisovače. Vlákno s nejvyšší dobou zaneprázdnění v protokolu relace ukazuje přímo na vrstvu, na které má pracovat: čtečka pro zdroj, transformace pro mapu.ping, spisovatel pro cíl.
  • Analyzujte detaily výkonu. Povolit shromažďování dat o výkonu v relaci a číst čítače. Vysoký počet chybových řádků nebo velký počet řádků ve vyhledávací mezipaměti indikuje mapu.ping problém spíše než problém databáze.
  • Sledujte systém. Operasystémové nástroje zobrazující využití CPU, čekání na I/O a stránkování spolu s Monitor pracovního postupu zobrazení zdrojů odhalí stroj, který je jednoduše vyčerpaný.

Jakmile je známa odpovědná vrstva, je vhodné aplikovat rady týkající se transformační úrovně v následujících částech. Části jsou uspořádány v pořadí postupu, od bodu, kde data vstupují do mapaping až do bodu, kdy je agregován.

Transformace kvalifikátoru zdroje

Každý řádek, který kvalifikátor zdroje nepřečte, je řádek, který nemusí zpracovat žádná jiná transformace, což z něj dělá nejlevnější místo na celé mapě.ping ušetřit čas.

  • Přineste pouze požadované sloupce ze zdroje. Ve většině případů nejsou vyžadovány všechny sloupce zdrojové tabulky, takže vymazáním nepotřebných sloupců uveďte pouze požadovaná pole.
  • Nepoužívejte klauzuli order by uvnitř Kvalifikátor zdroje Přepsání SQL. Klauzule order by vyžaduje dodatečné zpracování a výkon lze zvýšit jejím vynecháním.

Transformace filtru

Filtrování se v další fázi procesu řídí stejným principem: nežádoucí řádky se zahodí v nejbližším bodě, kdy mapaping má dostatek informací k jejich identifikaci.

  • Použijte transformace filtru co nejdříve na mapěpingPokud lze nežádoucí data na mapě zahodit na začátkuping, zvýšilo by to propustnost.
  • Použijte kvalifikátor zdroje k filtrování dat. Místo použití transformace filtru můžete k filtrování záznamů použít také přepsání kvalifikátoru zdroje v SQL.

Truhlářská transformace

Připojení je první skutečně drahou operací na typické mapě.ping, protože hlavní zdroj musí být uložen do mezipaměti, než s ním bude možné porovnat řádky s podrobnostmi.

  • Pokud je to možné, vždy preferujte provádění spojení v databázi, protože spojení v databázi je rychlejší než spojení vytvořená v programu Informatica. transformace truhláře.
  • Pokud je to možné, seřaďte data před připojením, protože to snižuje vstupně-výstupní operace disku provedené během spojování.
  • Vytvořte tabulku s menším počtem řádků jako hlavní tabulku.

Třetí bod je ten, který se nejčastěji opomíjí. Integrační služba ukládá hlavní zdrojový kód do mezipaměti, takže nominace menší tabulky jako hlavní udržuje tuto mezipaměť malou.

Vyhledávací transformace

Vyhledávání buď dotazuje databázi jednou za řádek, nebo vytváří mezipaměť v paměti a obě trasy odměňují menší a lépe indexovaný zdroj vyhledávání.

  • Vytvořte index pro sloupec v vyhledávací tabulka který se používá ve vyhledávací podmínce. Protože vyhledávací tabulka bude dotazována za účelem vyhledání odpovídajících dat, přidání indexu by zvýšilo výkon.
  • Pokud je to možné, místo použití transformace vyhledávání použijte spojení v databázi. Jak jsou databázové spoje rychlejší, výkon se zvýší.
  • Odstraňte nepotřebné sloupce z vyhledávací tabulky a ponechte pouze požadované sloupce. Tím se sníží režie načítání nadbytečných sloupců z databáze.

Transformace agregátoru

An Agregátor uchovává data v mezipaměti, zatímco seskupuje řádky, takže cokoli, co snižuje objem, který se k ní dostává, snižuje potřebnou mezipaměť.

  • Filtrujte data před agregací. Pokud v mapě používáte transformaci filtrůping, poté data před použitím agregátoru filtrujte, protože to sníží zbytečnou agregační operaci.
  • Omezte počet portů používaných v transformaci agregátoru. Tím se sníží objem dat, která transformace agregátoru ukládá do mezipaměti.

Ladění na úrovni relací v Informatice

Když mapaping Samotné je čisté, zbývající zisky pocházejí z vlastností relace. Tato nastavení se vyplatí měnit jedno po druhém a po každé změně je spustit s časovaným spuštěním, protože několik z nich vyměňuje paměť za rychlost.

nastavení Co ovládá Kdy to změnit
Velikost vyrovnávací paměti DTM Celková paměť, kterou Integration Service přiděluje zdrojovým a cílovým datovým blokům Zvyšte, když relace zpracovává mnoho oddílů, zdrojů nebo cílů.
Buffer velikost bloku Velikost jednoho paměťového bloku Zvyšte pro neobvykle velké řádky; snižte, když je fyzická paměť omezená.
Interval potvrzení Kolik řádků se zapíše před vydáním commitu? Vyvolat, když vlákno zapisovače tráví čas čekáním na kontrolní body databáze.
Optimalizace posuvného panelu Jaká část mapyping logika je převedena do SQL a spuštěna databází Použijte, když se zdroj a cíl nacházejí ve stejné výkonné databázi.

Buffer Paměť se řídí zdokumentovaným výpočtem, nikoli odhadem. Integrační služba alokuje alespoň dva bloky pro každý zdrojový a cílový oddíl, takže počet bloků vyrovnávací paměti relace se vynásobí dvěma (celkový počet zdrojů + celkový počet cílů) a velikost vyrovnávací paměti DTM se rovná počtu bloků vynásobenému velikostí bloku vyrovnávací paměti a dělenému 0.9.

Optimalizace push-down si zaslouží opatrnost. Pomáhá pouze tehdy, když je databáze skutečně rychlejší než stroj Integration Service a transformační logiku lze vyjádřit v SQL; logika, kterou nelze přeložit, zůstává v relaci, takže zisk je často menší, než se očekávalo. Změřte před a po, místo abyste ji povolovali jako výchozí.

Nejčastější dotazy

Rozdělování je užitečné, když má počítač Integration Service volný procesor a zdrojový i cílový systém mohou obsluhovat paralelní připojení. Na nasyceném počítači nebo na cílovém systému s jedním vláknem přidávají další oddíly režijní zátěž, aniž by se zkrátila doba běhu.

Nastavte index a datovou mezipaměť dostatečně velkou, aby se do ní vešel celý vyhledávací zdroj, jinak se stránky Integration Service uloží na disk. Protokoly relací hlásí skutečně požadovanou velikost mezipaměti, proto ji spusťte jednou s automatickou změnou velikosti a načtěte hodnotu zpět.

Každý insert také udržuje všechny indexy a omezení na cíli a tyto náklady rostou s velikostí tabulky. Zastaralé statistiky databáze situaci zhoršují. Vlákno zapisovače se pak stává nejvytíženějším vláknem, což je klasický typ úzkého hrdla cíle.

Ano, protože transformace může uvolnit každou skupinu ihned po svém ukončení, místo aby se vše ukládalo do mezipaměti. Příchozí řádky již musí být seřazeny podle portů seskupení a relace selže, pokud tomu tak není.

Pro velké zatížení pouze vloženým dílem upusťteping Nejprve indexy a omezení a jejich následné opětovné sestavení je obvykle rychlejší. Obvykle se oba kroky skriptují pomocí příkazů SQL před a po relaci ve vlastnostech relace.

Hromadný režim obchází velkou část protokolování databáze a načítá se rychleji, ale brání obnově a nefunguje se všemi cíli nebo strategiemi aktualizace. Normální režim zapisuje obvyklou cestou protokolování a zůstává obnovitelný.

Modely trénované na historických časech běhu označují relaci, která se odchýlila od své normální délky dlouho předtím, než si toho kdokoli všimne, a selhání související s clustery. Poukazují na běh, který se změnil – zodpovědná vrstva musí být stále potvrzena ze statistik vláken.

Dokáže přepsat dotaz, navrhnout kandidáty na indexování a vysvětlit plán provedení vložený do editoru. Nemůže vidět repozitář ani protokol relace, takže jakýkoli přepis musí být ověřen oproti skutečnému plánu a počtu řádků.

Shrňte tento příspěvek takto: