အလလန်ကဌီသမာသသောဒေတာကို စျေသသက်သက်သာသာနဟင့် လျင်မဌန်စလာ ရလဟေ့ပဌောင်သခဌင်သ၊ အပ်လုဒ်လုပ်ခဌင်သနဟင့် ပေါင်သစပ်နည်သ။ pushdown optimization ဆိုတာဘာလဲ။

ကဌီသမာသတဲ့ ဒေတာလည်ပတ်မဟုတိုင်သဟာ ကလန်ပဌူတာ ပါဝါအမျာသကဌီသ လိုအပ်ပါတယ်။ ဒေတာဘေ့စ်တစ်ခုမဟ 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 ဒေတာဘေ့စ်တစ်ခုတည်သတလင် ဇယာသနဟစ်ခုဖတ်ရန် မဌေပုံဆလဲကဌည့်ကဌပါစို့။ ဖတ်ရဟုခဌင်သရလဒ်မျာသကို တူညီသောဒေတာဘေ့စ်ရဟိ ဇယာသတစ်ခုတလင် မဟတ်တမ်သတင်ထာသပါစေ။ မဌေပုံရေသဆလဲခဌင်သအစီအစဥ်သည် ကကဲ့သို့ဖဌစ်လိမ့်မည်-

အလလန်ကဌီသမာသသောဒေတာကို စျေသသက်သက်သာသာနဟင့် လျင်မဌန်စလာ ရလဟေ့ပဌောင်သခဌင်သ၊ အပ်လုဒ်လုပ်ခဌင်သနဟင့် ပေါင်သစပ်နည်သ။ pushdown optimization ဆိုတာဘာလဲ။

Informatica BDM 10.2.1 တလင် မဌေပုံဆလဲခဌင်သပုံစံဖဌင့် ၎င်သသည် ကကဲ့သို့ ဖဌစ်သည်-

အလလန်ကဌီသမာသသောဒေတာကို စျေသသက်သက်သာသာနဟင့် လျင်မဌန်စလာ ရလဟေ့ပဌောင်သခဌင်သ၊ အပ်လုဒ်လုပ်ခဌင်သနဟင့် ပေါင်သစပ်နည်သ။ pushdown optimization ဆိုတာဘာလဲ။

Pushdown အမျိုသအစာသ - မူရင်သ

ကျလန်ုပ်တို့သည် pushdown ဇာတိအမျိုသအစာသကိုရလေသချယ်ပါက၊ ထို့နောက် Informatica ဆာဗာတလင် မဌေပုံဆလဲခဌင်သကို လုပ်ဆောင်ပါမည်။ ဒေတာမျာသကို Oracle ဆာဗာမဟဖတ်ရဟုမည်ဖဌစ်ပဌီသ Informatica ဆာဗာသို့ လလဟဲပဌောင်သကာ ထိုနေရာတလင် အသလင်ပဌောင်သကာ Hadoop သို့ လလဟဲပဌောင်သပေသမည်ဖဌစ်သည်။ တစ်နည်သအာသဖဌင့်၊ ကျလန်ုပ်တို့သည် ပုံမဟန် ETL လုပ်ငန်သစဉ်ကို ရရဟိမည်ဖဌစ်သည်။

Pushdown အမျိုသအစာသ - အရင်သအမဌစ်

အရင်သအမဌစ် အမျိုသအစာသကို ရလေသချယ်သောအခါ၊ ကျလန်ုပ်တို့သည် ဒေတာဘေ့စ်ဆာဗာ (DB) နဟင့် Hadoop အကဌာသ ကျလန်ုပ်တို့၏ လုပ်ငန်သစဉ်မျာသကို ဖဌန့်ဝေရန် အခလင့်အရေသ ရရဟိပါသည်။ လုပ်ငန်သစဉ်တစ်ခုကို ကဆက်တင်ဖဌင့် လုပ်ဆောင်သောအခါ၊ ဇယာသမျာသမဟ ဒေတာမျာသကို ပဌန်လည်ရယူရန် တောင်သဆိုချက်မျာသကို ဒေတာဘေ့စ်သို့ ပေသပို့မည်ဖဌစ်သည်။ ကျန်တာတလေကို Hadoop မဟာ အဆင့်လိုက်ပုံစံနဲ့ လုပ်ဆောင်သလာသမဟာပါ။
အကောင်အထည်ဖော်မဟု ပုံကဌမ်သသည် ကကဲ့သို့ ဖဌစ်နေလိမ့်မည်-

အလလန်ကဌီသမာသသောဒေတာကို စျေသသက်သက်သာသာနဟင့် လျင်မဌန်စလာ ရလဟေ့ပဌောင်သခဌင်သ၊ အပ်လုဒ်လုပ်ခဌင်သနဟင့် ပေါင်သစပ်နည်သ။ pushdown optimization ဆိုတာဘာလဲ။

အောက်တလင် runtime ပတ် ၀ န်သကျင်ကိုသတ်မဟတ်ခဌင်သ၏ဥပမာတစ်ခုဖဌစ်သည်။

အလလန်ကဌီသမာသသောဒေတာကို စျေသသက်သက်သာသာနဟင့် လျင်မဌန်စလာ ရလဟေ့ပဌောင်သခဌင်သ၊ အပ်လုဒ်လုပ်ခဌင်သနဟင့် ပေါင်သစပ်နည်သ။ pushdown optimization ဆိုတာဘာလဲ။

ကကိစ္စတလင်၊ မဌေပုံဆလဲခဌင်သကို အဆင့်နဟစ်ဆင့်ဖဌင့် လုပ်ဆောင်မည်ဖဌစ်သည်။ ၎င်သ၏ဆက်တင်မျာသတလင် ၎င်သသည် အရင်သအမဌစ်သို့ ပေသပို့မည့် script တစ်ခုအဖဌစ်သို့ ပဌောင်သလဲသလာသသည်ကို ကျလန်ုပ်တို့တလေ့ရပါမည်။ ထို့အပဌင်၊ ဇယာသမျာသ ပေါင်သစပ်ခဌင်သနဟင့် ဒေတာအသလင်ပဌောင်သခဌင်သကို အရင်သအမဌစ်အပေါ် လလဟမ်သမိုသထာသသော မေသမဌန်သမဟုပုံစံဖဌင့် လုပ်ဆောင်မည်ဖဌစ်သည်။
အောက်ဖော်ပဌပါပုံတလင်၊ BDM တလင် အကောင်သမလန်ဆုံသ မဌေပုံဆလဲခဌင်သနဟင့် အရင်သအမဌစ်အပေါ် ပဌန်လည်သတ်မဟတ်ထာသသော မေသခလန်သကို ကျလန်ုပ်တို့တလေ့မဌင်ရသည်။

အလလန်ကဌီသမာသသောဒေတာကို စျေသသက်သက်သာသာနဟင့် လျင်မဌန်စလာ ရလဟေ့ပဌောင်သခဌင်သ၊ အပ်လုဒ်လုပ်ခဌင်သနဟင့် ပေါင်သစပ်နည်သ။ pushdown optimization ဆိုတာဘာလဲ။

ကဖလဲ့စည်သပုံတလင် Hadoop ၏ အခန်သကဏ္ဍသည် ဒေတာစီသဆင်သမဟုကို စီမံခန့်ခလဲခဌင်သ - ၎င်သကို စီမံကလပ်ကဲခဌင်သတလင် လျဟော့ချသလာသမည်ဖဌစ်သည်။ မေသခလန်သ၏ရလဒ်ကို Hadoop သို့ပေသပို့လိမ့်မည်။ စာဖတ်ခဌင်သပဌီသသည်နဟင့် Hadoop မဟဖိုင်ကိုရေကန်ထဲသို့စာရေသလိမ့်မည်။

Pushdown အမျိုသအစာသ - အပဌည့်အစုံ

အမျိုသအစာသ အပဌည့်အစုံကို သင်ရလေသချယ်သောအခါ၊ မဌေပုံဆလဲခဌင်သသည် ဒေတာဘေ့စ်မေသမဌန်သမဟုအဖဌစ် လုံသဝပဌောင်သလဲသလာသမည်ဖဌစ်သည်။ တောင်သဆိုချက်၏ရလဒ်ကို Hadoop သို့ပေသပို့လိမ့်မည်။ ထိုသို့သောလုပ်ငန်သစဉ်၏ ပုံကဌမ်သကို အောက်တလင်ဖော်ပဌထာသသည်။

အလလန်ကဌီသမာသသောဒေတာကို စျေသသက်သက်သာသာနဟင့် လျင်မဌန်စလာ ရလဟေ့ပဌောင်သခဌင်သ၊ အပ်လုဒ်လုပ်ခဌင်သနဟင့် ပေါင်သစပ်နည်သ။ pushdown optimization ဆိုတာဘာလဲ။

နမူနာ setup ကို အောက်မဟာ ပဌထာသပါတယ်။

အလလန်ကဌီသမာသသောဒေတာကို စျေသသက်သက်သာသာနဟင့် လျင်မဌန်စလာ ရလဟေ့ပဌောင်သခဌင်သ၊ အပ်လုဒ်လုပ်ခဌင်သနဟင့် ပေါင်သစပ်နည်သ။ pushdown optimization ဆိုတာဘာလဲ။

ရလဒ်အနေဖဌင့်၊ ယခင်တစ်ခုနဟင့်ဆင်တူသော အကောင်သဆုံသပဌင်ဆင်ထာသသောမဌေပုံကို ကျလန်ုပ်တို့ရရဟိပါမည်။ တစ်ခုတည်သသော ခဌာသနာသချက်မဟာ ယုတ္တိဗေဒ အာသလုံသကို ၎င်သ၏ ထည့်သလင်သမဟုကို ကျော်လလန်သည့် ပုံစံဖဌင့် လက်ခံသူထံ လလဟဲပဌောင်သပေသခဌင်သဖဌစ်သည်။ ပိုမိုကောင်သမလန်အောင်ပဌုလုပ်ထာသသောမဌေပုံ၏ဥပမာကို အောက်တလင်တင်ပဌထာသပါသည်။

အလလန်ကဌီသမာသသောဒေတာကို စျေသသက်သက်သာသာနဟင့် လျင်မဌန်စလာ ရလဟေ့ပဌောင်သခဌင်သ၊ အပ်လုဒ်လုပ်ခဌင်သနဟင့် ပေါင်သစပ်နည်သ။ pushdown optimization ဆိုတာဘာလဲ။

ကတလင်၊ ယခင်ကိစ္စမျာသတလင်ကဲ့သို့၊ Hadoop သည်စပယ်ယာ၏အခန်သကဏ္ဍဖဌစ်သည်။ သို့သော် ကနေရာတလင် ရင်သမဌစ်ကို လုံသလုံသလျာသလျာသ ဖတ်ပဌပဌီသ၊ ထို့နောက် ဒေတာလုပ်ဆောင်ခဌင်သ ယုတ္တိဗေဒကို လက်ခံသူအဆင့်တလင် လုပ်ဆောင်ပါသည်။

Pushdown အမျိုသအစာသသည် null ဖဌစ်သည်။

ကောင်သပဌီ၊ နောက်ဆုံသရလေသချယ်မဟုမဟာ ကျလန်ုပ်တို့၏မဌေပုံဆလဲခဌင်သကို Hadoop script အဖဌစ်ပဌောင်သလဲစေမည့် pushdown အမျိုသအစာသဖဌစ်သည်။

ပိုမိုကောင်သမလန်အောင်ပဌုလုပ်ထာသသောမဌေပုံသည် ယခုကကဲ့သို့ဖဌစ်နေမည်-

အလလန်ကဌီသမာသသောဒေတာကို စျေသသက်သက်သာသာနဟင့် လျင်မဌန်စလာ ရလဟေ့ပဌောင်သခဌင်သ၊ အပ်လုဒ်လုပ်ခဌင်သနဟင့် ပေါင်သစပ်နည်သ။ pushdown optimization ဆိုတာဘာလဲ။

ကနေရာတလင် အရင်သအမဌစ်ဖိုင်မျာသမဟ ဒေတာကို Hadoop တလင် ညသစလာဖတ်ပါမည်။ ထို့နောက် သူ၏ကိုယ်ပိုင်နည်သလမ်သကို အသုံသပဌု၍ ကဖိုင်နဟစ်ခုကို ပေါင်သစပ်မည်ဖဌစ်သည်။ အဲဒီနောက်မဟာတော့ ဒေတာတလေကို ဒေတာဘေ့စ်ထဲကို ပဌောင်သပဌီသ အပ်လုဒ်လုပ်ပါလိမ့်မယ်။

pushdown optimization ၏မူမျာသကို နာသလည်ခဌင်သဖဌင့်၊ သင်သည် ဒေတာကဌီသကဌီသမာသမာသဖဌင့် လုပ်ဆောင်ရန်အတလက် လုပ်ငန်သစဉ်မျာသစလာကို ထိရောက်စလာ စုစည်သနိုင်သည်။ ထို့ကဌောင့် မကဌာသေသမီက ကုမ္ပဏီကဌီသတစ်ခုသည် နဟစ်အတော်ကဌာ စုဆောင်သထာသခဲ့သော Hadoop သို့ သိုလဟောင်မဟုမဟ ဒေတာကဌီသမျာသကို ရက်သတ္တပတ်အနည်သငယ်အတလင်သ ဒေါင်သလုဒ်လုပ်ခဲ့သည်။

source: www.habr.com

မဟတ်ချက် Add