Com moure, carregar i integrar dades molt grans de manera econòmica i ràpida? Què és l'optimització pushdown?

Qualsevol operació de big data requereix molta potència informàtica. Un moviment típic de dades d'una base de dades a Hadoop pot trigar setmanes o costar tant com l'ala d'un avió. No voleu esperar i gastar diners? Equilibra la càrrega entre diferents plataformes. Una de les maneres és l'optimització pushdown.

Vaig demanar a l'entrenador líder de Rússia per al desenvolupament i l'administració de productes d'Informatica, Alexey Ananyev, que parlés de la funció d'optimització pushdown a Informatica Big Data Management (BDM). Alguna vegada has après a treballar amb productes Informatica? Molt probablement, va ser Alexey qui us va explicar els conceptes bàsics de PowerCenter i va explicar com crear mapes.

Alexey Ananyev, cap de formació del Grup DIS

Què és pushdown?

Molts de vosaltres ja esteu familiaritzats amb Informatica Big Data Management (BDM). El producte pot integrar grans dades de diferents fonts, moure'ls entre diferents sistemes, proporcionar-hi un fàcil accés, permetre'n crear perfils i molt més.
En les mans adequades, BDM pot fer meravelles: les tasques es completaran ràpidament i amb recursos informàtics mínims.

Tu també ho vols? Apreneu a utilitzar la funció pushdown a BDM per distribuir la càrrega informàtica entre diferents plataformes. La tecnologia Pushdown us permet convertir el mapatge en un script i seleccionar l'entorn en què s'executarà aquest script. Aquesta elecció permet combinar els punts forts de diferents plataformes i aconseguir el seu màxim rendiment.

Per configurar l'entorn d'execució de l'script, heu de seleccionar el tipus pushdown. L'script es pot executar completament a Hadoop o distribuir-se parcialment entre la font i el lavabo. Hi ha 4 tipus possibles de pushdown. El mapeig no s'ha de convertir en un script (natiu). El mapeig es pot realitzar tant com sigui possible a la font (font) o completament a la font (complet). El mapeig també es pot convertir en un script Hadoop (cap).

Optimització pushdown

Els 4 tipus enumerats es poden combinar de diferents maneres: el pushdown es pot optimitzar per a les necessitats específiques del sistema. Per exemple, sovint és més apropiat extreure dades d'una base de dades utilitzant les seves pròpies capacitats. I les dades es convertiran mitjançant Hadoop, per no sobrecarregar la base de dades.

Considerem el cas quan tant l'origen com la destinació es troben a la base de dades i es pot seleccionar la plataforma d'execució de la transformació: en funció de la configuració, serà Informatica, un servidor de bases de dades o Hadoop. Aquest exemple us permetrà entendre amb més precisió la part tècnica del funcionament d'aquest mecanisme. Naturalment, a la vida real, aquesta situació no es produeix, però és la més adequada per demostrar la funcionalitat.

Prenem el mapeig per llegir dues taules en una única base de dades Oracle. I deixeu que els resultats de la lectura es registrin en una taula de la mateixa base de dades. L'esquema de mapatge serà així:

Com moure, carregar i integrar dades molt grans de manera econòmica i ràpida? Què és l'optimització pushdown?

En forma de mapeig a Informatica BDM 10.2.1 té aquest aspecte:

Com moure, carregar i integrar dades molt grans de manera econòmica i ràpida? Què és l'optimització pushdown?

Tipus pushdown: nadiu

Si seleccionem el tipus natiu pushdown, el mapeig es realitzarà al servidor d'Informatica. Les dades es llegiran des del servidor d'Oracle, es transferiran al servidor d'Informatica, s'hi transformaran i es transferiran a Hadoop. En altres paraules, obtindrem un procés ETL normal.

Tipus pushdown: font

En triar el tipus d'origen, tenim l'oportunitat de distribuir el nostre procés entre el servidor de bases de dades (DB) i Hadoop. Quan s'executa un procés amb aquesta configuració, les sol·licituds per recuperar dades de les taules s'enviaran a la base de dades. I la resta es realitzarà en forma de passos a Hadoop.
El diagrama d'execució serà així:

Com moure, carregar i integrar dades molt grans de manera econòmica i ràpida? Què és l'optimització pushdown?

A continuació es mostra un exemple de configuració de l'entorn d'execució.

Com moure, carregar i integrar dades molt grans de manera econòmica i ràpida? Què és l'optimització pushdown?

En aquest cas, el mapeig es realitzarà en dos passos. A la seva configuració veurem que s'ha convertit en un script que s'enviarà a la font. A més, la combinació de taules i la transformació de dades es realitzarà en forma d'una consulta anul·lada a la font.
A la imatge següent, veiem un mapeig optimitzat al BDM i una consulta redefinida a la font.

Com moure, carregar i integrar dades molt grans de manera econòmica i ràpida? Què és l'optimització pushdown?

El paper d'Hadoop en aquesta configuració es reduirà a gestionar el flux de dades, orquestrar-lo. El resultat de la consulta s'enviarà a Hadoop. Un cop finalitzada la lectura, el fitxer de Hadoop s'escriurà a la pica.

Tipus pushdown: complet

Quan seleccioneu el tipus complet, el mapatge es convertirà completament en una consulta de base de dades. I el resultat de la sol·licitud s'enviarà a Hadoop. A continuació es presenta un diagrama d'aquest procés.

Com moure, carregar i integrar dades molt grans de manera econòmica i ràpida? Què és l'optimització pushdown?

A continuació es mostra un exemple de configuració.

Com moure, carregar i integrar dades molt grans de manera econòmica i ràpida? Què és l'optimització pushdown?

Com a resultat, obtindrem un mapeig optimitzat similar a l'anterior. L'única diferència és que tota la lògica es transfereix al receptor en forma d'anul·lació de la seva inserció. A continuació es presenta un exemple de mapeig optimitzat.

Com moure, carregar i integrar dades molt grans de manera econòmica i ràpida? Què és l'optimització pushdown?

Aquí, com en el cas anterior, Hadoop fa el paper de director. Però aquí es llegeix la font sencera i després la lògica de processament de dades es realitza a nivell de receptor.

El tipus pushdown és nul

Bé, l'última opció és el tipus pushdown, dins del qual el nostre mapeig es convertirà en un script Hadoop.

El mapeig optimitzat serà ara així:

Com moure, carregar i integrar dades molt grans de manera econòmica i ràpida? Què és l'optimització pushdown?

Aquí les dades dels fitxers font primer es llegiran a Hadoop. Després, amb els seus propis mitjans, es combinaran aquests dos fitxers. Després d'això, les dades es convertiran i es penjaran a la base de dades.

En entendre els principis de l'optimització pushdown, podeu organitzar de manera molt eficaç molts processos per treballar amb big data. Així, recentment, una gran empresa, en poques setmanes, va descarregar grans dades de l'emmagatzematge a Hadoop, que havia recollit anteriorment durant diversos anys.

Font: www.habr.com

Afegeix comentari