Hvordan flytte, laste opp og integrere svært store data billig og raskt? Hva er pushdown-optimalisering?

Enhver big data-operasjon krever mye datakraft. En typisk flytting av data fra en database til Hadoop kan ta uker eller koste like mye som en flyvinge. Vil du ikke vente og bruke penger? Balanser lasten på tvers av ulike plattformer. En måte er pushdown-optimalisering.

Jeg spurte Russlands ledende trener for utvikling og administrasjon av Informatica-produkter, Alexey Ananyev, om å snakke om pushdown-optimaliseringsfunksjonen i Informatica Big Data Management (BDM). Har du noen gang lært å jobbe med Informatica-produkter? Mest sannsynlig var det Alexey som fortalte deg det grunnleggende om PowerCenter og forklarte hvordan du bygger kart.

Alexey Ananyev, leder for opplæring i DIS Group

Hva er pushdown?

Mange av dere er allerede kjent med Informatica Big Data Management (BDM). Produktet kan integrere stordata fra ulike kilder, flytte det mellom ulike systemer, gir enkel tilgang til det, lar deg profilere det og mye mer.
I de riktige hendene kan BDM gjøre underverker: oppgaver vil bli fullført raskt og med minimale dataressurser.

Vil du det også? Lær å bruke pushdown-funksjonen i BDM for å fordele databelastningen på ulike plattformer. Pushdown-teknologi lar deg gjøre kartlegging til et skript og velge miljøet som dette skriptet skal kjøres i. Dette valget lar deg kombinere styrken til forskjellige plattformer og oppnå maksimal ytelse.

For å konfigurere skriptutførelsesmiljøet, må du velge pushdown-typen. Skriptet kan kjøres helt på Hadoop eller delvis distribuert mellom kilden og vasken. Det er 4 mulige pushdown-typer. Kartlegging trenger ikke gjøres om til et skript (native). Kartlegging kan utføres så mye som mulig på kilden (kilde) eller fullstendig på kilden (full). Kartlegging kan også gjøres om til et Hadoop-skript (ingen).

Pushdown-optimalisering

De oppførte 4 typene kan kombineres på forskjellige måter - pushdown kan optimaliseres for de spesifikke behovene til systemet. For eksempel er det ofte mer hensiktsmessig å trekke ut data fra en database ved hjelp av egne muligheter. Og dataene vil bli konvertert ved hjelp av Hadoop, for ikke å overbelaste selve databasen.

La oss vurdere tilfellet når både kilden og destinasjonen er i databasen, og transformasjonsutførelsesplattformen kan velges: avhengig av innstillingene vil det være Informatica, en databaseserver eller Hadoop. Et slikt eksempel vil tillate deg å mest nøyaktig forstå den tekniske siden av driften av denne mekanismen. Naturligvis, i det virkelige liv, oppstår ikke denne situasjonen, men den er best egnet for å demonstrere funksjonalitet.

La oss ta kartlegging for å lese to tabeller i en enkelt Oracle-database. Og la leseresultatene registreres i en tabell i samme database. Kartleggingsskjemaet vil være slik:

Hvordan flytte, laste opp og integrere svært store data billig og raskt? Hva er pushdown-optimalisering?

I form av kartlegging på Informatica BDM 10.2.1 ser det slik ut:

Hvordan flytte, laste opp og integrere svært store data billig og raskt? Hva er pushdown-optimalisering?

Pushdown-type – innfødt

Hvis vi velger den opprinnelige typen pushdown, vil kartleggingen utføres på Informatica-serveren. Dataene vil bli lest fra Oracle-serveren, overført til Informatica-serveren, transformert der og overført til Hadoop. Vi vil med andre ord få en normal ETL-prosess.

Pushdown-type – kilde

Ved valg av kildetype får vi muligheten til å fordele prosessen vår mellom databaseserveren (DB) og Hadoop. Når en prosess utføres med denne innstillingen, vil forespørsler om å hente data fra tabeller bli sendt til databasen. Og resten vil bli utført i form av trinn på Hadoop.
Utførelsesdiagrammet vil se slik ut:

Hvordan flytte, laste opp og integrere svært store data billig og raskt? Hva er pushdown-optimalisering?

Nedenfor er et eksempel på hvordan du setter opp kjøretidsmiljøet.

Hvordan flytte, laste opp og integrere svært store data billig og raskt? Hva er pushdown-optimalisering?

I dette tilfellet vil kartleggingen utføres i to trinn. I innstillingene vil vi se at det har blitt til et skript som vil bli sendt til kilden. Dessuten vil kombinering av tabeller og transformering av data utføres i form av en overstyrt spørring på kilden.
På bildet nedenfor ser vi en optimalisert kartlegging på BDM, og en redefinert spørring på kilden.

Hvordan flytte, laste opp og integrere svært store data billig og raskt? Hva er pushdown-optimalisering?

Rollen til Hadoop i denne konfigurasjonen vil bli redusert til å administrere dataflyten – orkestrere den. Resultatet av spørringen vil bli sendt til Hadoop. Når lesingen er fullført, vil filen fra Hadoop bli skrevet til vasken.

Pushdown-type – full

Når du velger den fullstendige typen, blir kartlegging fullstendig til en databasespørring. Og resultatet av forespørselen vil bli sendt til Hadoop. Et diagram over en slik prosess er presentert nedenfor.

Hvordan flytte, laste opp og integrere svært store data billig og raskt? Hva er pushdown-optimalisering?

Et eksempel på oppsett er vist nedenfor.

Hvordan flytte, laste opp og integrere svært store data billig og raskt? Hva er pushdown-optimalisering?

Som et resultat vil vi få en optimalisert kartlegging som ligner den forrige. Den eneste forskjellen er at all logikken overføres til mottakeren i form av å overstyre innsettingen. Et eksempel på optimalisert kartlegging er presentert nedenfor.

Hvordan flytte, laste opp og integrere svært store data billig og raskt? Hva er pushdown-optimalisering?

Her, som i forrige sak, spiller Hadoop rollen som dirigent. Men her leses kilden i sin helhet, og deretter utføres databehandlingslogikken på mottakernivå.

Pushdown-typen er null

Vel, det siste alternativet er pushdown-typen, der kartleggingen vår blir til et Hadoop-skript.

Den optimaliserte kartleggingen vil nå se slik ut:

Hvordan flytte, laste opp og integrere svært store data billig og raskt? Hva er pushdown-optimalisering?

Her vil dataene fra kildefilene først leses på Hadoop. Deretter, ved hjelp av sine egne midler, vil disse to filene bli kombinert. Etter dette vil dataene konverteres og lastes opp til databasen.

Ved å forstå prinsippene for pushdown-optimalisering kan du meget effektivt organisere mange prosesser for arbeid med big data. Så ganske nylig lastet ett stort selskap på bare noen få uker ned stordata fra lagring til Hadoop, som det tidligere hadde samlet inn i flere år.

Kilde: www.habr.com

Legg til en kommentar