ááŒá®ážáá¬ážáá²á· áá±áá¬áááºáááºááŸá¯ááá¯ááºážáᬠááœááºááŒá°áᬠáá«áá«á¡áá»á¬ážááŒá®áž ááá¯á¡ááºáá«áááºá áá±áá¬áá±á·á áºáá áºáá¯á០Hadoop ááá¯á· áá¯á¶ááŸáẠáá±áá¬ááœáŸá±á·ááŒááºážááẠáááºááá¹ááááºáá»á¬ážá áœá¬ ááŒá¬ááá¯ááºááẠááá¯á·ááá¯áẠáá±áá¬ááºáá±á¬ááºáá¶áá áºáá¯áá²á·ááá¯á· áá¯ááºáá»á ááááºáá»á¬ážá áœá¬ áá¯ááºáá»ááá¯ááºáááºá á á±á¬áá·áºááŒá®áž ááá¯ááºáá¶ááá¯á¶ážáá»ááºáá°ážáá¬áž? ááá°áá®áá±á¬ááááºáá±á¬ááºážáá»á¬ážáá áºáá»áŸá±á¬áẠáááºááá¯áá»áááºááœááºáá»áŸá¬ááŸááá«á áááºážáááºážáá áºáá¯ááŸá¬ pushdown optimization ááŒá áºáááºá
Informatica áá¯ááºáá¯ááºáá»á¬áž ááœá¶á·ááŒáá¯ážááá¯ážáááºáá±ážááŸáá·áº á á®áá¶ááá·áºááœá²áá±ážááá¯ááºáᬠáá¯ááŸá¬ážá ááááºáááºážáááºáááºážááᬠAlexey Ananyev á¡á¬áž Informatica Big Data Management (BDM) ááœáẠááœááºážá¡á¬ážáá±ážááá·áº ááá¯ááá¯áá±á¬ááºážááœááºá¡á±á¬áẠáá¯ááºáá±á¬ááºááá¯ááºááá·áº áá¯ááºáá±á¬ááºáá»ááºá¡ááŒá±á¬ááºáž ááœá±ážááœá±ážááẠáá±á¬ááºážááá¯áá²á·áááºá Informatica áá¯ááºáá¯ááºáá»á¬ážááŸáá·áº á¡áá¯ááºáá¯ááºááẠáááºáá°áá°ážáá«ááá¬ážá ááŒá áºááá¯ááºáááºááŸá¬á PowerCenter á á¡ááŒá±áá¶áá»á¬ážááᯠááá·áºá¡á¬áž ááŒá±á¬ááŒááŒá®áž ááŒá±áá¯á¶ááœá²áááºážááᯠááŸááºážááŒáá±ážááá·áº Alexey ááŒá áºáááºá
DIS Group á០áá±á·áá»áá·áºáá±ážááŸá°áž Alexey Ananyev
ááœááºážáá»ááŒááºážáá°ááẠá¡áááºáááºážá
áá±á¬áºáá±á¬áºáá»á¬ážáá»á¬ážá Informatica Big Data Management (BDM) áá²á· áááºážááŸá®ážááŒá®ážáá¬ážáá«á áá¯ááºáá¯ááºááẠááá°áá®áá±á¬ á¡áááºážá¡ááŒá
áºáá»á¬ážá០ááŒá®ážáá¬ážáá±á¬áá±áá¬ááᯠáá±á«ááºážá
ááºááá¯ááºááŒá®áž ááá°áá®áá±á¬á
áá
áºáá»á¬ážááŒá¬ážááœáẠááœáŸá±á·ááŒá±á¬ááºážááá¯ááºááŒá®áž áááºážááᯠááœááºáá°á
áœá¬ áááºáá±á¬ááºááá¯ááºá
á±áááºá ááá·áºá¡á¬áž áááá¯ááá¯ááºááŒá¯áá¯ááºááá¯ááºá
á±ááŒááºážááŸáá·áº á¡ááŒá¬ážá¡áá¬áá»á¬ážá
áœá¬ááᯠáá¯ááºáá±á¬ááºááá¯ááºáááºá
ááŸááºáááºáá±á¬áááºáá²ááœáẠBDM ááẠá¡á¶á·á©á
áá¬áá»á¬ážááᯠáá¯ááºáá±á¬ááºááá¯ááºáááº- á¡áá¯ááºáá»á¬ážááᯠáá»ááºááŒááºá
áœá¬ááŸáá·áº á¡áááºážáááºáá»áŸáá±á¬ ááœááºáá»á°áá¬á¡áááºážá¡ááŒá
áºáá»á¬ážááŒáá·áº ááŒá®ážááŒá±á¬ááºáááºááŒá
áºáááºá
áááºážáááºáž á¡á²áá«ááᯠááá¯áá»ááºááá¬ážá ááá°áá®áá±á¬ááááºáá±á¬ááºážáá»á¬ážáá áºáá»áŸá±á¬áẠááœááºáá»á°áá¬áááºááá¯ááŒáá·áºáá±áááºá¡ááœáẠBDM ááœáẠpushdown á¡ááºá¹áá«áááºááá¯á¡áá¯á¶ážááŒá¯ááẠáá±á·áá¬áá«á Pushdown áááºážááá¬ááẠááá·áºá¡á¬áž ááŒá±áá¯á¶ááœá²ááŒááºážááᯠáá¬ááºááœáŸááºážáá áºáá¯á¡ááŒá ẠááŒá±á¬ááºážáá²á á±ááŒá®áž ဠscript áááºáááºááá·áº áááºáááºážáá»ááºááᯠááœá±ážáá»ááºááá¯ááºá á±áá«áááºá á€ááœá±ážáá»ááºááŸá¯ááẠááá·áºá¡á¬áž ááá°áá®áá±á¬ááááºáá±á¬ááºážáá»á¬ážá á¡á¬ážáá¬áá»ááºáá»á¬ážááᯠáá±á«ááºážá ááºá á±ááŒá®áž áááºážááá¯á·á á¡ááŒáá·áºáá¯á¶ážá áœááºážáá±á¬ááºáááºááᯠáááŸáá á±áááºá
script execution environment ááᯠconfigure áá¯ááºáááºá pushdown type ááᯠááœá±ážáá»ááºááẠááá¯á¡ááºáááºá áá¬ááºááœáŸááºážááᯠHadoop ááœáẠáá¯á¶ážáá¯á¶ážáá»á¬ážáá»á¬áž áá¯ááºáá±á¬ááºááá¯ááºááẠááá¯á·ááá¯áẠá¡áááºážá¡ááŒá áºááŸáá·áº sink á¡ááŒá¬áž áá áºá áááºáá áºááá¯ááºáž ááŒáá·áºáá±ááá¯ááºáááºá ááŒá áºááá¯ááºáá»á± 4 áá»áá¯ážááŸááááºá ááŒá±áá¯á¶ááœá²ááŒááºážááᯠáá¬ááºááœáŸááºáž (áá¬áá) á¡ááŒá áºááá¯á· ááŒá±á¬ááºážáá²ááẠáááá¯á¡ááºáá«á ááŒá±áá¯á¶ááœá²ááŒááºážááᯠá¡áááºážá¡ááŒá Ạ(á¡áááºážá¡ááŒá áº) ááá¯á·ááá¯áẠá¡áááºážá¡ááŒá Ạ(á¡ááŒáá·áºá¡á á¯á¶) áá±á«áºááœáẠáááºááá¯ááºááá»áŸ áá¯ááºáá±á¬ááºááá¯ááºáááºá ááŒá±áá¯á¶ááœá²ááŒááºážááᯠHadoop script (áá áºáá¯áá»áŸ) á¡ááŒá áºááá¯á· ááŒá±á¬ááºážáá²ááá¯ááºáááºá
Pushdown optimization
áá±á¬áºááŒáá¬ážáá±á¬ á¡áá»áá¯ážá¡á á¬áž á áá»áá¯ážá¡á¬áž ááá°áá®áá±á¬áááºážáááºážáá»á¬ážááŒáá·áº áá±á«ááºážá ááºááá¯ááºááẠ- á áá áºá áá®ážááŒá¬ážááá¯á¡ááºáá»ááºáá»á¬ážá¡ááœáẠááœááºážáá»ááŒááºážááᯠá¡áá±á¬ááºážáá¯á¶ážááŒá áºá¡á±á¬áẠááŒá¯áá¯ááºááá¯ááºáááºá á¥ááá¬á¡á¬ážááŒáá·áºá áááºážáááá¯ááºááá¯ááºá áœááºážáááºáá»á¬ážááᯠá¡áá¯á¶ážááŒá¯á áá±áá¬áá±á·á áºáá áºáá¯ááŸáá±áá¬ááᯠáááŒá¬áááá¯ááºáá°ááŒááºážááẠááá¯áááá·áºáá»á±á¬áºáááºá áá±áá¬áá±á·á áºááá¯ááºááŸáá¯ááºááᯠoverload ááá¯ááºááá á±ááẠHadoop ááᯠá¡áá¯á¶ážááŒá¯á áá±áá¬ááᯠááŒá±á¬ááºážáá²áá«áááºá
á¡áááºážá¡ááŒá áºááŸáá·áº áŠážáááºáᬠááŸá áºáá¯á áá¯á¶ážááẠáá±áá¬áá±á·á áºááœáẠááŸááá±ááá·áºá¡áá«á á¡ááœááºáá°ážááŒá±á¬ááºážáá±áž áá¯ááºáá±á¬ááºááŸá¯ ááááºáá±á¬ááºážááᯠááœá±ážáá»ááºááá¯ááºáááº- áááºáááºáá»á¬ážáá±á«áºáá°áááºá áááºážááẠInformaticaá áá±áá¬áá±á·á áºáá¬áᬠááá¯á·ááá¯áẠHadoop ááŒá áºáááá·áºáááºá á€áá²á·ááá¯á·áá±á¬á¥ááá¬áá áºáá¯ááẠá€ááá¹ááá¬ážááááºáááºááŸá¯ááááºážááá¬ááá¯ááºážááá¯ááºáá¬áááºááŒááºážááá¯á¡áááá»áá¯á¶ážáá¬ážáááºááá¯ááºá á±áááºááŒá áºáááºá ááá¬áá¡á¬ážááŒáá·áºá áááºááœá±á·ááááœááºá á€á¡ááŒá±á¡áá±ááẠááŒá áºáá±á«áºáá¬ááŒááºážáááŸááá±á¬áºáááºáž áááºážááẠáá¯ááºáá±á¬ááºááá¯ááºá áœááºážááᯠááŒááááºá¡ááœáẠá¡áá±á¬ááºážáá¯á¶ážááŒá áºáááºá
Oracle áá±áá¬áá±á·á áºáá áºáá¯áááºážááœáẠááá¬ážááŸá áºáá¯áááºááẠááŒá±áá¯á¶ááœá²ááŒáá·áºááŒáá«á áá¯á·á áááºááŸá¯ááŒááºážááááºáá»á¬ážááᯠáá°áá®áá±á¬áá±áá¬áá±á·á áºááŸá ááá¬ážáá áºáá¯ááœáẠááŸááºáááºážáááºáá¬ážáá«á á±á ááŒá±áá¯á¶áá±ážááœá²ááŒááºážá¡á á®á¡á á¥áºááẠá€áá²á·ááá¯á·ááŒá áºáááá·áºáááº-
Informatica BDM 10.2.1 ááœáẠááŒá±áá¯á¶ááœá²ááŒááºážáá¯á¶á á¶ááŒáá·áº áááºážááẠá€áá²á·ááá¯á· ááŒá áºáááº-
Pushdown á¡áá»áá¯ážá¡á á¬áž - áá°áááºáž
áá»áœááºá¯ááºááá¯á·ááẠpushdown áá¬ááá¡áá»áá¯ážá¡á á¬ážááá¯ááœá±ážáá»ááºáá«áá ááá¯á·áá±á¬áẠInformatica áá¬áá¬ááœáẠááŒá±áá¯á¶ááœá²ááŒááºážááᯠáá¯ááºáá±á¬ááºáá«áááºá áá±áá¬áá»á¬ážááᯠOracle áá¬áá¬ááŸáááºááŸá¯áááºááŒá áºááŒá®áž Informatica áá¬áá¬ááá¯á· ááœáŸá²ááŒá±á¬ááºážáᬠááá¯áá±áá¬ááœáẠá¡ááœááºááŒá±á¬ááºážáᬠHadoop ááá¯á· ááœáŸá²ááŒá±á¬ááºážáá±ážáááºááŒá áºáááºá áá áºáááºážá¡á¬ážááŒáá·áºá áá»áœááºá¯ááºááá¯á·ááẠáá¯á¶ááŸáẠETL áá¯ááºáááºážá ááºááᯠáááŸááááºááŒá áºáááºá
Pushdown á¡áá»áá¯ážá¡á á¬áž - á¡áááºážá¡ááŒá áº
á¡áááºážá¡ááŒá
Ạá¡áá»áá¯ážá¡á
á¬ážááᯠááœá±ážáá»ááºáá±á¬á¡áá«á áá»áœááºá¯ááºááá¯á·ááẠáá±áá¬áá±á·á
áºáá¬áᬠ(DB) ááŸáá·áº Hadoop á¡ááŒá¬áž áá»áœááºá¯ááºááá¯á·á áá¯ááºáááºážá
ááºáá»á¬ážááᯠááŒáá·áºáá±ááẠá¡ááœáá·áºá¡áá±áž áááŸááá«áááºá áá¯ááºáááºážá
ááºáá
áºáá¯ááᯠá€áááºáááºááŒáá·áº áá¯ááºáá±á¬ááºáá±á¬á¡áá«á ááá¬ážáá»á¬ážá០áá±áá¬áá»á¬ážááᯠááŒááºáááºááá°ááẠáá±á¬ááºážááá¯áá»ááºáá»á¬ážááᯠáá±áá¬áá±á·á
áºááá¯á· áá±ážááá¯á·áááºááŒá
áºáááºá áá»ááºáá¬ááœá±ááᯠHadoop ááŸá¬ á¡ááá·áºááá¯ááºáá¯á¶á
á¶áá²á· áá¯ááºáá±á¬ááºááœá¬ážááŸá¬áá«á
á¡áá±á¬ááºá¡áááºáá±á¬áºááŸá¯ áá¯á¶ááŒááºážááẠá€áá²á·ááá¯á· ááŒá
áºáá±áááá·áºáááº-
á¡á±á¬ááºááœáẠruntime ááẠá ááºážáá»ááºááá¯áááºááŸááºááŒááºážáá¥ááá¬áá áºáá¯ááŒá áºáááºá
á€ááá
á¹á
ááœááºá ááŒá±áá¯á¶ááœá²ááŒááºážááᯠá¡ááá·áºááŸá
áºááá·áºááŒáá·áº áá¯ááºáá±á¬ááºáááºááŒá
áºáááºá áááºážááááºáááºáá»á¬ážááœáẠáááºážááẠá¡áááºážá¡ááŒá
áºááá¯á· áá±ážááá¯á·ááá·áº script áá
áºáá¯á¡ááŒá
áºááá¯á· ááŒá±á¬ááºážáá²ááœá¬ážáááºááᯠáá»áœááºá¯ááºááá¯á·ááœá±á·ááá«áááºá ááá¯á·á¡ááŒááºá ááá¬ážáá»á¬áž áá±á«ááºážá
ááºááŒááºážááŸáá·áº áá±áá¬á¡ááœááºááŒá±á¬ááºážááŒááºážááᯠá¡áááºážá¡ááŒá
áºá¡áá±á«áº ááœáŸááºážááá¯ážáá¬ážáá±á¬ áá±ážááŒááºážááŸá¯áá¯á¶á
á¶ááŒáá·áº áá¯ááºáá±á¬ááºáááºááŒá
áºáááºá
á¡á±á¬ááºáá±á¬áºááŒáá«áá¯á¶ááœááºá BDM ááœáẠá¡áá±á¬ááºážááœááºáá¯á¶áž ááŒá±áá¯á¶ááœá²ááŒááºážááŸáá·áº á¡áááºážá¡ááŒá
áºá¡áá±á«áº ááŒááºáááºáááºááŸááºáá¬ážáá±á¬ áá±ážááœááºážááᯠáá»áœááºá¯ááºááá¯á·ááœá±á·ááŒááºááááºá
á€ááœá²á·á ááºážáá¯á¶ááœáẠHadoop á á¡áááºážááá¹áááẠáá±áá¬á á®ážáááºážááŸá¯ááᯠá á®áá¶ááá·áºááœá²ááŒááºáž - áááºážááᯠá á®áá¶ááœááºáá²ááŒááºážááœáẠáá»áŸá±á¬á·áá»ááœá¬ážáááºááŒá áºáááºá áá±ážááœááºážáááááºááᯠHadoop ááá¯á·áá±ážááá¯á·áááá·áºáááºá á á¬áááºááŒááºážááŒá®ážáááºááŸáá·áº Hadoop ááŸááá¯ááºááá¯áá±áááºáá²ááá¯á·á á¬áá±ážáááá·áºáááºá
Pushdown á¡áá»áá¯ážá¡á á¬áž - á¡ááŒáá·áºá¡á á¯á¶
á¡áá»áá¯ážá¡á á¬áž á¡ááŒáá·áºá¡á á¯á¶ááᯠáááºááœá±ážáá»ááºáá±á¬á¡áá«á ááŒá±áá¯á¶ááœá²ááŒááºážááẠáá±áá¬áá±á·á áºáá±ážááŒááºážááŸá¯á¡ááŒá Ạáá¯á¶ážáááŒá±á¬ááºážáá²ááœá¬ážáááºááŒá áºáááºá áá±á¬ááºážááá¯áá»ááºáááááºááᯠHadoop ááá¯á·áá±ážááá¯á·áááá·áºáááºá ááá¯ááá¯á·áá±á¬áá¯ááºáááºážá ááºá áá¯á¶ááŒááºážááᯠá¡á±á¬ááºááœááºáá±á¬áºááŒáá¬ážáááºá
ááá°áᬠsetup ááᯠá¡á±á¬ááºááŸá¬ ááŒáá¬ážáá«áááºá
ááááºá¡áá±ááŒáá·áºá ááááºáá áºáá¯ááŸáá·áºáááºáá°áá±á¬ á¡áá±á¬ááºážáá¯á¶ážááŒááºáááºáá¬ážáá±á¬ááŒá±áá¯á¶ááᯠáá»áœááºá¯ááºááá¯á·áááŸááá«áááºá áá áºáá¯áááºážáá±á¬ ááŒá¬ážáá¬ážáá»ááºááŸá¬ áá¯áá¹áááá±á á¡á¬ážáá¯á¶ážááᯠáááºážá ááá·áºááœááºážááŸá¯ááᯠáá»á±á¬áºááœááºááá·áº áá¯á¶á á¶ááŒáá·áº áááºáá¶áá°áᶠááœáŸá²ááŒá±á¬ááºážáá±ážááŒááºážááŒá áºáááºá ááá¯ááá¯áá±á¬ááºážááœááºá¡á±á¬ááºááŒá¯áá¯ááºáá¬ážáá±á¬ááŒá±áá¯á¶áá¥ááá¬ááᯠá¡á±á¬ááºááœááºáááºááŒáá¬ážáá«áááºá
á€ááœááºá ááááºááá á¹á áá»á¬ážááœááºáá²á·ááá¯á·á Hadoop áááºá áááºáá¬áá¡áááºážááá¹áááŒá áºáááºá ááá¯á·áá±á¬áº á€áá±áá¬ááœáẠáááºážááŒá áºááᯠáá¯á¶ážáá¯á¶ážáá»á¬ážáá»á¬áž áááºááŒááŒá®ážá ááá¯á·áá±á¬áẠáá±áá¬áá¯ááºáá±á¬ááºááŒááºáž áá¯áá¹áááá±áááᯠáááºáá¶áá°á¡ááá·áºááœáẠáá¯ááºáá±á¬ááºáá«áááºá
Pushdown á¡áá»áá¯ážá¡á á¬ážááẠnull ááŒá áºáááºá
áá±á¬ááºážááŒá®á áá±á¬ááºáá¯á¶ážááœá±ážáá»ááºááŸá¯ááŸá¬ áá»áœááºá¯ááºááá¯á·áááŒá±áá¯á¶ááœá²ááŒááºážááᯠHadoop script á¡ááŒá áºááŒá±á¬ááºážáá²á á±ááá·áº pushdown á¡áá»áá¯ážá¡á á¬ážááŒá áºáááºá
ááá¯ááá¯áá±á¬ááºážááœááºá¡á±á¬ááºááŒá¯áá¯ááºáá¬ážáá±á¬ááŒá±áá¯á¶ááẠááá¯á€áá²á·ááá¯á·ááŒá áºáá±áááº-
á€áá±áá¬ááœáẠá¡áááºážá¡ááŒá áºááá¯ááºáá»á¬ážá០áá±áá¬ááᯠHadoop ááœáẠáŠážá áœá¬áááºáá«áááºá ááá¯á·áá±á¬áẠáá°áááá¯ááºááá¯ááºáááºážáááºážááᯠá¡áá¯á¶ážááŒá¯á á€ááá¯ááºááŸá áºáá¯ááᯠáá±á«ááºážá ááºáááºááŒá áºáááºá á¡á²áá®áá±á¬ááºááŸá¬áá±á¬á· áá±áá¬ááœá±ááᯠáá±áá¬áá±á·á áºáá²ááᯠááŒá±á¬ááºážááŒá®áž á¡ááºáá¯ááºáá¯ááºáá«áááá·áºáááºá
pushdown optimization ááá°áá»á¬ážááᯠáá¬ážáááºááŒááºážááŒáá·áºá áááºááẠáá±áá¬ááŒá®ážááŒá®ážáá¬ážáá¬ážááŒáá·áº áá¯ááºáá±á¬ááºáááºá¡ááœáẠáá¯ááºáááºážá ááºáá»á¬ážá áœá¬ááᯠáááá±á¬ááºá áœá¬ á á¯á ááºážááá¯ááºáááºá ááá¯á·ááŒá±á¬áá·áº áááŒá¬áá±ážáá®á áá¯áá¹ááá®ááŒá®ážáá áºáá¯ááẠááŸá áºá¡áá±á¬áºááŒá¬ á á¯áá±á¬ááºážáá¬ážáá²á·áá±á¬ Hadoop ááá¯á· ááá¯ááŸá±á¬ááºááŸá¯á០áá±áá¬ááŒá®ážáá»á¬ážááᯠáááºááá¹ááááºá¡áááºážáááºá¡ááœááºáž áá±á«ááºážáá¯ááºáá¯ááºáá²á·áááºá
source: www.habr.com