Hur flyttar, laddar och integrerar man mycket stora data effektivt och billigt? Vad Àr pushdown-optimering?

Alla operationer med stora datamÀngder krÀver stora berÀkningsresurser. Vanlig överföring av data frÄn en databas till Hadoop kan ta veckor eller kosta som en flygplansvinge. Vill du inte vÀnta och spendera? Balansera lasten över olika plattformar. Ett sÀtt Àr pushdown-optimering.

Jag bad den ledande trÀnaren i Ryssland för utveckling och administration av Informatica-produkter, Alexey Ananyev, att berÀtta om pushdown-optimeringsfunktionen i Informatica Big Data Management (BDM). LÀrde ni er en gÄng att arbeta med Informatica-produkter? Det var förmodligen Alexey som lÀrde er grunderna i PowerCenter och förklarade hur man bygger mappningar.

Alexey Ananyev, chef för utbildningsavdelningen pÄ DIS Group

Vad Àr pushdown?

MÄnga av er Àr redan bekanta med Informatica Big Data Management (BDM). Produkten kan integrera stora data frÄn olika kÀllor, flytta dem mellan olika system, ge enkel Ätkomst till dem, göra profiler och mycket mer.
I skickliga hÀnder kan BDM Ästadkomma underverk: uppgifter kommer att slutföras snabbt och med minimala berÀkningsresurser.

Vill du ocksÄ detta? LÀr dig anvÀnda pushdown-funktionen i BDM för att fördela den berÀkningsmÀssiga belastningen mellan olika plattformar. Pushdown-teknik gör det möjligt att omvandla en mappning till ett skript och vÀlja den miljö dÀr detta skript ska köras. Denna valmöjlighet gör att man kan kombinera styrkorna hos olika plattformar och uppnÄ deras maximala prestanda.

För att konfigurera exekveringsmiljön för skriptet mÄste du vÀlja typ av pushdown. Skriptet kan köras helt pÄ Hadoop eller delvis distribueras mellan kÀllan och mottagaren. Det finns 4 möjliga typer av pushdown. Mappningen kan utföras utan att omvandlas till ett skript (native). Mappningen kan ocksÄ utföras maximalt pÄ kÀllan (source) eller helt pÄ kÀllan (full). Dessutom kan mappningen omvandlas till ett Hadoop-skript (none).

Pushdown-optimering

Dessa 4 typer kan kombineras pÄ olika sÀtt - optimera pushdown för specifika systembehov. Till exempel Àr det ofta mer fördelaktigt att extrahera data frÄn databasen, genom att anvÀnda dess egna funktioner. Att transformera data görs bÀttre med Hadoop, för att undvika att överbelasta databasen.

LÄt oss övervÀga ett fall dÀr bÄde kÀllan och mottagaren finns i databasen, och plattformen för att utföra transformationerna kan vÀljas: beroende pÄ instÀllningarna kommer det att vara Informatica, databasserver eller Hadoop. Ett sÄdant exempel gör det möjligt att bÀst förstÄ den tekniska sidan av detta mekanismens arbete. SjÀlvklart uppstÄr en sÄdan situation sÀllan i verkliga livet, men för att demonstrera funktionaliteten passar det bÀst.

LÄt oss ta en mappning för att lÀsa tvÄ tabeller i en gemensam Oracle-databas. Resultaten av lÀsningen ska sparas i en tabell i samma databas. Mappningsschemat kommer att se ut sÄ hÀr:

Hur flyttar, laddar och integrerar man mycket stora data effektivt och billigt? Vad Àr pushdown-optimering?

I form av mappning i Informatica BDM 10.2.1 ser det ut sÄ hÀr:

Hur flyttar, laddar och integrerar man mycket stora data effektivt och billigt? Vad Àr pushdown-optimering?

Typ pushdown – native

Om vi vÀljer typ pushdown native, kommer mappningen att utföras pÄ servern Informatica. Data kommer att lÀsas frÄn Oracle-servern, överföras till Informatica-servern, transformeras dÀr och skickas till Hadoop. Med andra ord kommer vi att fÄ en vanlig ETL-process.

Typ pushdown – source

Vid val av typ source fĂ„r vi möjlighet att fördela vĂ„r process mellan servern databaser (DB) och Hadoop. NĂ€r processen utförs med denna instĂ€llning kommer förfrĂ„gningar att skickas till databasen för att hĂ€mta data frĂ„n tabellerna. Övrigt kommer att utföras i form av steg pĂ„ Hadoop.
Mappningens körschema kommer att se ut sÄ hÀr:

Hur flyttar, laddar och integrerar man mycket stora data effektivt och billigt? Vad Àr pushdown-optimering?

Nedan Àr ett exempel pÄ instÀllning av exekveringsmiljön.

Hur flyttar, laddar och integrerar man mycket stora data effektivt och billigt? Vad Àr pushdown-optimering?

I detta fall kommer mappningen att utföras i tvÄ steg. I dess instÀllningar kommer vi att se att den har omvandlats till ett skript, som ska skickas till kÀllan. Dessutom kommer sammanfogning av tabeller och datatransformation att utföras i form av en omdefinierad frÄga pÄ kÀllan.
I bilden nedan ser vi en optimerad mappning pĂ„ BDM, och pĂ„ kĂ€llan – en omdefinierad frĂ„ga.

Hur flyttar, laddar och integrerar man mycket stora data effektivt och billigt? Vad Àr pushdown-optimering?

Hadoop:s roll i denna konfiguration kommer att vara att hantera datastreamen – dirigera dem. Resultatet av förfrĂ„gan kommer att skickas till Hadoop. Efter att lĂ€sningen Ă€r klar kommer filen frĂ„n Hadoop att skrivas till mottagaren.

Typ pushdown – full

Vid valet av typ full kommer mappningen att omvandlas helt till en frÄga pÄ databasen. Resultatet av förfrÄgan kommer att skickas till Hadoop. Schemat för en sÄdan process presenteras nedan.

Hur flyttar, laddar och integrerar man mycket stora data effektivt och billigt? Vad Àr pushdown-optimering?

Exemplet pÄ instÀllning presenteras nedan.

Hur flyttar, laddar och integrerar man mycket stora data effektivt och billigt? Vad Àr pushdown-optimering?

Som ett resultat kommer vi att fÄ en optimerad mappning liknande den föregÄende. Skillnaden Àr bara att hela logiken överförs till mottagaren i form av en omdefiniering av dess insÀttning. Exemplet pÄ den optimerade mappningen presenteras nedan.

Hur flyttar, laddar och integrerar man mycket stora data effektivt och billigt? Vad Àr pushdown-optimering?

HÀr, precis som tidigare, fungerar Hadoop som dirigent. Men hÀr lÀses kÀllan i sin helhet, och sedan utförs logiken för databehandling pÄ mottagarnivÄ.

Pushdown-typ – null

Och den sista varianten – pushdown-typ, dĂ€r vĂ„r mappning omvandlas till ett skript pĂ„ Hadoop.

Den optimerade mappningen kommer nu att se ut sÄ hÀr:

Hur flyttar, laddar och integrerar man mycket stora data effektivt och billigt? Vad Àr pushdown-optimering?

HÀr kommer data frÄn kÀllfiler först att lÀsas in pÄ Hadoop. Sedan kommer dessa tvÄ filer att kombineras med hjÀlp av dess egna verktyg. Efter detta kommer data att omvandlas och exporteras till databasen.

Genom att förstÄ principerna för pushdown-optimering kan mÄnga processer för arbete med stora datamÀngder organiseras mycket effektivt. SÄ sent som nyligen lyckades ett stort företag pÄ bara nÄgra veckor exportera stora datamÀngder frÄn sitt lagringsutrymme till Hadoop, vilket de hade samlat in under flera Är.

KĂ€lla: habr.com

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster