Hvordan flytter, uploader og integrerer man meget store data billigt og hurtigt? Hvad er pushdown-optimering?

Enhver big data-operation kræver meget computerkraft. En typisk flytning af data fra en database til Hadoop kan tage uger eller koste lige så meget som en flyvinge. Vil du ikke vente og bruge penge? Afbalancer belastningen på tværs af forskellige platforme. En måde er pushdown-optimering.

Jeg bad Ruslands førende træner for udvikling og administration af Informatica-produkter, Alexey Ananyev, om at tale om pushdown-optimeringsfunktionen i Informatica Big Data Management (BDM). Har du nogensinde lært at arbejde med Informatica-produkter? Mest sandsynligt var det Alexey, der fortalte dig det grundlæggende i PowerCenter og forklarede, hvordan man opbygger kortlægninger.

Alexey Ananyev, uddannelseschef hos DIS Group

Hvad er pushdown?

Mange af jer er allerede bekendt med Informatica Big Data Management (BDM). Produktet kan integrere big data fra forskellige kilder, flytte det mellem forskellige systemer, giver let adgang til det, giver dig mulighed for at profilere det og meget mere.
I de rigtige hænder kan BDM gøre underværker: Opgaverne vil blive udført hurtigt og med minimale computerressourcer.

Vil du også have det? Lær at bruge pushdown-funktionen i BDM til at fordele computerbelastningen på tværs af forskellige platforme. Pushdown-teknologi giver dig mulighed for at omdanne kortlægning til et script og vælge det miljø, som dette script skal køre i. Dette valg giver dig mulighed for at kombinere styrkerne ved forskellige platforme og opnå deres maksimale ydeevne.

For at konfigurere scriptudførelsesmiljøet skal du vælge pushdown-typen. Scriptet kan køres helt på Hadoop eller delvist fordelt mellem kilden og sink. Der er 4 mulige pushdown-typer. Kortlægning behøver ikke omdannes til et script (native). Kortlægning kan udføres så meget som muligt på kilden (kilde) eller fuldstændig på kilden (fuld). Kortlægning kan også omdannes til et Hadoop-script (ingen).

Pushdown optimering

De anførte 4 typer kan kombineres på forskellige måder - pushdown kan optimeres til systemets specifikke behov. For eksempel er det ofte mere hensigtsmæssigt at udtrække data fra en database ved hjælp af dens egne muligheder. Og dataene vil blive konverteret ved hjælp af Hadoop, for ikke at overbelaste selve databasen.

Lad os overveje tilfældet, når både kilden og destinationen er i databasen, og transformationsudførelsesplatformen kan vælges: afhængigt af indstillingerne vil det være Informatica, en databaseserver eller Hadoop. Et sådant eksempel vil give dig mulighed for mest præcist at forstå den tekniske side af driften af ​​denne mekanisme. Naturligvis opstår denne situation ikke i det virkelige liv, men den er bedst egnet til at demonstrere funktionalitet.

Lad os tage kortlægning for at læse to tabeller i en enkelt Oracle-database. Og lad læseresultaterne registreres i en tabel i samme database. Kortlægningsskemaet vil se sådan ud:

Hvordan flytter, uploader og integrerer man meget store data billigt og hurtigt? Hvad er pushdown-optimering?

I form af kortlægning på Informatica BDM 10.2.1 ser det sådan ud:

Hvordan flytter, uploader og integrerer man meget store data billigt og hurtigt? Hvad er pushdown-optimering?

Pushdown-type – indfødt

Hvis vi vælger den indfødte pushdown-type, vil kortlægningen blive udført på Informatica-serveren. Dataene vil blive læst fra Oracle-serveren, overført til Informatica-serveren, transformeret der og overført til Hadoop. Med andre ord vil vi få en normal ETL-proces.

Pushdown-type – kilde

Ved valg af kildetype får vi mulighed for at fordele vores proces mellem databaseserveren (DB) og Hadoop. Når en proces udføres med denne indstilling, vil anmodninger om at hente data fra tabeller blive sendt til databasen. Og resten vil blive udført i form af trin på Hadoop.
Udførelsesdiagrammet vil se sådan ud:

Hvordan flytter, uploader og integrerer man meget store data billigt og hurtigt? Hvad er pushdown-optimering?

Nedenfor er et eksempel på opsætning af runtime-miljøet.

Hvordan flytter, uploader og integrerer man meget store data billigt og hurtigt? Hvad er pushdown-optimering?

I dette tilfælde udføres kortlægningen i to trin. I dets indstillinger vil vi se, at det er blevet til et script, der vil blive sendt til kilden. Desuden vil kombination af tabeller og transformation af data blive udført i form af en tilsidesat forespørgsel på kilden.
På billedet nedenfor ser vi en optimeret mapping på BDM'en og en redefineret forespørgsel på kilden.

Hvordan flytter, uploader og integrerer man meget store data billigt og hurtigt? Hvad er pushdown-optimering?

Hadoops rolle i denne konfiguration vil blive reduceret til at styre datastrømmen - orkestrere den. Resultatet af forespørgslen vil blive sendt til Hadoop. Når læsningen er afsluttet, vil filen fra Hadoop blive skrevet til vasken.

Pushdown-type – fuld

Når du vælger den fulde type, bliver kortlægning fuldstændigt til en databaseforespørgsel. Og resultatet af anmodningen vil blive sendt til Hadoop. Et diagram over en sådan proces er præsenteret nedenfor.

Hvordan flytter, uploader og integrerer man meget store data billigt og hurtigt? Hvad er pushdown-optimering?

Et eksempel på opsætning er vist nedenfor.

Hvordan flytter, uploader og integrerer man meget store data billigt og hurtigt? Hvad er pushdown-optimering?

Som et resultat vil vi få en optimeret kortlægning svarende til den forrige. Den eneste forskel er, at al logikken overføres til modtageren i form af at tilsidesætte dens indsættelse. Et eksempel på optimeret kortlægning er præsenteret nedenfor.

Hvordan flytter, uploader og integrerer man meget store data billigt og hurtigt? Hvad er pushdown-optimering?

Her spiller Hadoop som i det foregående tilfælde rollen som dirigent. Men her læses kilden i sin helhed, og så udføres databehandlingslogikken på modtagerniveau.

Pushdown-typen er null

Nå, den sidste mulighed er pushdown-typen, inden for hvilken vores kortlægning bliver til et Hadoop-script.

Den optimerede kortlægning vil nu se således ud:

Hvordan flytter, uploader og integrerer man meget store data billigt og hurtigt? Hvad er pushdown-optimering?

Her vil data fra kildefilerne først blive læst på Hadoop. Derefter, ved hjælp af hans egne midler, vil disse to filer blive kombineret. Herefter vil dataene blive konverteret og uploadet til databasen.

Ved at forstå principperne for pushdown-optimering kan du meget effektivt organisere mange processer til at arbejde med big data. For ganske nylig har én stor virksomhed således på få uger downloadet big data fra storage til Hadoop, som den tidligere havde indsamlet i flere år.

Kilde: www.habr.com

Tilføj en kommentar