په تحلیلي پلیټ فارمونو کې د ټیټ کوډ پلي کول

ګرانو لوستونکو، ښه ورځ!

ژر یا وروسته د معلوماتو راټولولو او تحلیل لپاره د IT پلیټ فارمونو رامینځته کولو دنده د هر هغه شرکت لپاره رامینځته کیږي چې سوداګرۍ یې د فکري پلوه بار شوي خدماتو تحویلي ماډل یا تخنیکي پلوه پیچلي محصولاتو رامینځته کولو پراساس وي. د تحلیلي پلیټ فارمونو رامینځته کول یو پیچلي او وخت نیسي کار دی. په هرصورت، هر کار کولی شي ساده شي. پدې مقاله کې زه غواړم د تحلیلي حلونو رامینځته کولو کې د مرستې لپاره د ټیټ کوډ وسیلو کارولو کې زما تجربه شریکه کړم. دا تجربه د Neoflex شرکت د لوی ډیټا حلونو لارښود کې د یو شمیر پروژو پلي کولو پرمهال ترلاسه شوې. د 2005 راهیسې، د Neoflex لوی ډیټا حل الرښود د ډیټا ګودامونو او جهيلونو جوړولو مسلو سره معامله کوي، د معلوماتو پروسس کولو سرعت اصلاح کولو ستونزې حل کوي او د معلوماتو کیفیت مدیریت لپاره میتودولوژي باندې کار کوي.

په تحلیلي پلیټ فارمونو کې د ټیټ کوډ پلي کول

هیڅوک به ونشي کولی د ضعیف او / یا قوي جوړښت شوي معلوماتو شعوري راټولولو څخه مخنیوی وکړي. شاید حتی که موږ د کوچني سوداګرۍ په اړه خبرې کوو. په هرصورت ، کله چې د سوداګرۍ اندازه کول ، یو ژمن متشبثین به د وفادارۍ برنامې رامینځته کولو مسلو سره مخ شي ، د پلور پوائنټونو مؤثریت به تحلیل کړي ، د هدف شوي اعلاناتو په اړه به فکر وکړي ، او د محصول سره د غوښتنې له امله به حیران شي. . د لومړي اټکل لپاره، ستونزه "په زنګون" حل کیدی شي. مګر لکه څنګه چې سوداګرۍ وده کوي، تحلیلي پلیټ فارم ته رسیدل لاهم ناگزیر دي.

په هرصورت، په کوم حالت کې د ډیټا تحلیلي دندې کولی شي د "راکټ ساینس" ټولګي ستونزو ته وده ورکړي؟ شاید په اوس وخت کې کله چې موږ د واقعیا لوی ډیټا په اړه خبرې کوو.
د راکټ ساینس اسانه کولو لپاره ، تاسو کولی شئ د هاتین ټوټه ټوټه ټوټه وخورئ.

په تحلیلي پلیټ فارمونو کې د ټیټ کوډ پلي کول

هرڅومره چې ستاسو غوښتنلیکونه/خدمتونه/مایرو خدمتونه ډیر متفاوت او خپلواکه وي ، نو ستاسو ، ستاسو همکارانو او ټول سوداګرۍ لپاره به د هاتین هضم کول اسانه وي.

زموږ نږدې ټول پیرودونکي دې پوسټ ته راغلي ، د DevOps ټیمونو انجینري کړنو پراساس منظره له سره جوړه کړې.

مګر حتی د "جلا ، هاتین" رژیم سره ، موږ د معلوماتي ټیکنالوژۍ منظرې د "زیاتوالي" ښه چانس لرو. په دې وخت کې دا د ودرولو، تنفس کولو او اړخ ته د کتلو ارزښت لري د ټیټ کوډ انجینرۍ پلیټ فارم.

ډیری پراختیا کونکي د دوی په مسلک کې د پای ته رسیدو احتمال څخه ویره لري کله چې د ټیټ کوډ سیسټمونو UI انٹرفیسونو کې د "ډریګ کولو" تیرونو په لور د مستقیم لیکلو کوډ څخه تیریږي. مګر د ماشین وسیلو راتګ د انجینرانو د ورکیدو لامل نه شو ، مګر د دوی کار نوې کچې ته راوړو!

راځئ چې معلومه کړو چې ولې.

د لوژستیک، مخابراتو صنعت، د رسنیو څیړنې، مالي سکتور په برخه کې د معلوماتو تحلیل تل د لاندې پوښتنو سره تړاو لري:

  • د اتوماتیک تحلیل سرعت؛
  • د اصلي معلوماتو تولید جریان اغیزه کولو پرته د تجربو ترسره کولو وړتیا؛
  • د چمتو شوي معلوماتو اعتبار؛
  • د تعقیب او نسخه بدلول؛
  • د معلوماتو ثبوت، د معلوماتو نسب، CDC؛
  • د تولید چاپیریال ته د نویو ځانګړتیاو ګړندی تحویل؛
  • او بدنام: د پراختیا او ملاتړ لګښت.

يعنې، انجنيران د لوړې کچې ډېرې دندې لري، چې يوازې د ټيټې کچې پرمختيايي دندو په اړه د دوی د شعور په پاکولو سره د کافي موثريت سره سرته رسولی شي.

نوي کچې ته د تګ لپاره د پراختیا کونکو لپاره شرایط د سوداګرۍ ارتقا او ډیجیټل کول وو. د پراختیا کونکي ارزښت هم بدلیږي: د پراختیا کونکو پام وړ کمبود شتون لري چې کولی شي ځان د سوداګرۍ د اتومات کولو مفکورو کې ډوب کړي.

راځئ چې د ټیټې کچې او لوړې کچې برنامې ژبو سره مشابهت جوړ کړو. د ټیټې کچې ژبې څخه د لوړې کچې ژبې ته لیږد د "د هارډویر په ژبه کې مستقیم لارښود" لیکلو څخه "د خلکو په ژبه کې لارښوونې" ته لیږد دی. دا د خلاصون ځینې پرت اضافه کول دي. پدې حالت کې ، د لوړې کچې برنامې ژبو څخه د ټیټ کوډ پلیټ فارمونو ته لیږد د "خلکو په ژبه کې لارښودونو" څخه "د سوداګرۍ په ژبه کې لارښوونو" ته لیږد دی. که چیرې داسې پراختیا کونکي شتون ولري چې د دې حقیقت څخه خپه وي، نو بیا دوی خپه شوي وي، شاید، له هغه شیبې راهیسې چې جاوا سکریپټ زیږیدلی، کوم چې د صفونو ترتیب کولو افعال کاروي. او دا دندې، البته، د ورته لوړې کچې پروګرام کولو نورو وسیلو لخوا د هود لاندې سافټویر پلي کول دي.

له همدې امله، ټیټ کوډ یوازې د بلې کچې خلاصون بڼه ده.

د ټیټ کوډ کارولو تجربه

د ټیټ کوډ موضوع خورا پراخه ده، مګر اوس زه غواړم چې زموږ د یوې پروژې مثال په کارولو سره د "ټیټ کوډ مفکورې" د عملي غوښتنلیک په اړه وغږیږم.

د Neoflex لوی ډیټا حلونو څانګه د سوداګرۍ مالي سکتور کې ډیر تخصص لري ، د ډیټا ګودامونو او جهيلونو جوړول او د مختلف راپور ورکولو اتومات کول. پدې ځای کې ، د ټیټ کوډ کارول له اوږدې مودې راهیسې یو معیار ګرځیدلی. د نورو ټیټ کوډ وسیلو په مینځ کې ، موږ کولی شو د ETL پروسې تنظیم کولو لپاره وسیلې ذکر کړو: د انفارمیټیکا پاور سنټر ، IBM ډیټاسټیج ، د پینټاهو ډیټا ادغام. یا اوریکل اپیکس ، کوم چې ډیټا ته د لاسرسي او ایډیټ کولو لپاره د انٹرفیس ګړندي پرمختګ لپاره د چاپیریال په توګه کار کوي. په هرصورت، د ټیټ کوډ پراختیایی وسیلو کارول تل په سوداګریز ټیکنالوژۍ سټیک کې د لوړ هدف لرونکي غوښتنلیکونو جوړول شامل ندي چې په پلورونکي باندې روښانه انحصار سره.

د ټیټ کوډ پلیټ فارمونو په کارولو سره ، تاسو کولی شئ د ډیټا جریان تنظیم هم تنظیم کړئ ، د ډیټا ساینس پلیټ فارمونه رامینځته کړئ یا د مثال په توګه ، د ډیټا کیفیت چک کولو لپاره ماډلونه.

د ټیټ کوډ پراختیایی وسیلو کارولو کې د تجربې پلي شوي مثالونه د نیفلیکس او میډیسکوپ ترمینځ همکاري ده ، د روسیې د رسنیو څیړنې بازار کې یو له مشرانو څخه. د دې شرکت یوه سوداګریزه موخه د ډیټا تولید دی چې پر بنسټ یې اعلان کونکي، انټرنیټ پلیټ فارمونه، تلویزیوني چینلونه، راډیو سټیشنونه، د اعلاناتو ادارې او برانډونه د اعلاناتو پیرودلو په اړه پریکړې کوي او د دوی د بازارموندنې مخابراتو پالن کوي.

په تحلیلي پلیټ فارمونو کې د ټیټ کوډ پلي کول

د رسنیو څیړنه د سوداګرۍ یوه ټیکنالوژیکي ساحه ده. د ویډیو ترتیبونو پیژندل، د وسیلو څخه د معلوماتو راټولول چې د لیدلو تحلیل کوي، په ویب سرچینو کې د فعالیت اندازه کول - دا ټول پدې معنی دي چې شرکت د IT لوی کارمندان لري او د تحلیلي حلونو په جوړولو کې خورا تجربه لري. مګر د معلوماتو په مقدار کې د پام وړ وده، د هغې د سرچینو شمیر او ډولونه د معلوماتي ټکنالوجۍ ډیټا صنعت په دوامداره توګه پرمختګ ته اړوي. د دمخه فعال میډیسکوپ تحلیلي پلیټ فارم اندازه کولو لپاره ترټولو ساده حل ممکن د معلوماتي ټیکنالوژۍ کارمندانو ډیرول وي. مګر یو ډیر اغیزمن حل د پراختیا پروسې ګړندی کول دي. یو له هغو ګامونو څخه چې پدې لار کې مخکښ کیدی شي د ټیټ کوډ پلیټ فارمونو کارول وي.

په هغه وخت کې چې پروژه پیل شوه، شرکت لا دمخه د فعال محصول حل درلود. په هرصورت، په MSSQL کې د حل پلي کول نشي کولی په بشپړه توګه د پیمانه کولو فعالیت لپاره توقعات پوره کړي پداسې حال کې چې د پراختیا د منلو وړ لګښت ساتل.

زموږ په وړاندې دنده واقعیا هوښیاره وه - Neoflex او Mediascope باید د یو کال څخه لږ وخت کې صنعتي حل رامینځته کړي ، د پیل نیټې په لومړۍ ربع کې د MVP خوشې کیدو تابع.

د هډوپ ټیکنالوژۍ سټیک د ټیټ کوډ کمپیوټري پراساس د نوي ډیټا پلیټ فارم جوړولو لپاره د بنسټ په توګه غوره شوی. HDFS د پارکیټ فایلونو په کارولو سره د معلوماتو ذخیره کولو معیار ګرځیدلی. په پلیټ فارم کې موقعیت لرونکي معلوماتو ته د لاسرسي لپاره ، Hive کارول شوی و ، په کوم کې چې ټول موجود پلورنځي د بهرني میزونو په شکل کې وړاندې کیږي. ذخیره کې د معلوماتو بارول د کافکا او اپاچي نی فای په کارولو سره پلي شوي.

په دې مفهوم کې د لو کوډ وسیله د تحلیلي پلیټ فارم په جوړولو کې د خورا ډیر کار کولو کار مطلوب کولو لپاره کارول شوې - د معلوماتو محاسبه دنده.

په تحلیلي پلیټ فارمونو کې د ټیټ کوډ پلي کول

د ټیټ کوډ ډیټاګرام وسیله د ډیټا نقشه کولو لپاره د اصلي میکانیزم په توګه غوره شوې. Neoflex ډیټاګرام د بدلونونو او ډیټا جریانونو پراختیا لپاره وسیله ده.
د دې وسیلې په کارولو سره ، تاسو کولی شئ په لاسي ډول د سکالا کوډ لیکلو پرته ترسره کړئ. د سکالا کوډ په اتوماتيک ډول د ماډل چلونکي معمارۍ طریقې په کارولو سره رامینځته کیږي.

د دې کړنلارې یوه ښکاره ګټه د پراختیا پروسې چټکتیا ده. په هرصورت، د سرعت سربیره، لاندې ګټې هم شتون لري:

  • د سرچینو / ترلاسه کونکو مینځپانګې او جوړښت لیدل؛
  • د انفرادي ساحو (نسب) ته د ډیټا جریان څیزونو اصل تعقیب کول؛
  • د منځنیو پایلو لیدلو سره د بدلونونو جزوی اجرا کول؛
  • د سرچینې کوډ بیاکتنه او د اجرا کولو دمخه یې تنظیم کول؛
  • د بدلونونو اتوماتیک تایید؛
  • د اتوماتیک ډیټا ډاونلوډ په 1 کې 1.

د بدلونونو رامینځته کولو لپاره د ټیټ کوډ حلونو ته د ننوتلو خنډ خورا ټیټ دی: پراختیا کونکی اړتیا لري SQL پیژني او د ETL وسیلو سره کار کولو تجربه ولري. دا د یادولو وړ ده چې د کوډ لخوا پرمخ وړل شوي بدلون جنراتورونه د کلمې په پراخه معنی کې د ETL وسیلې ندي. د ټیټ کوډ وسیلې ممکن د دوی د کوډ اجرا کولو چاپیریال ونه لري. دا دی ، تولید شوی کوډ به په چاپیریال کې اجرا شي چې حتی د ټیټ کوډ حل نصبولو دمخه په کلستر کې شتون درلود. او دا شاید د ټیټ کوډ کارما لپاره بل پلس وي. ځکه چې، د ټیټ کوډ ټیم سره موازي، یو "کلاسیک" ټیم کولی شي کار وکړي چې فعالیت پلي کوي، د بیلګې په توګه، په خالص سکالا کوډ کې. په تولید کې د دواړو ټیمونو څخه د پرمختګونو راوستل به ساده او بې سیمه وي.

دا شاید د یادولو وړ وي چې د ټیټ کوډ سربیره ، د کوډ نه حلونه هم شتون لري. او د دوی په اصل کې، دا مختلف شیان دي. ټیټ کوډ پراختیا کونکي ته اجازه ورکوي چې د تولید شوي کوډ سره ډیر مداخله وکړي. د ډیټاګرام په حالت کې، دا ممکنه ده چې پیدا شوي سکالا کوډ وګورئ او ایډیټ کړئ؛ هیڅ کوډ ممکن داسې فرصت چمتو نکړي. دا توپیر نه یوازې د حل د انعطاف په شرایطو کې خورا مهم دی ، بلکه د ډیټا انجینرانو په کار کې د هوساینې او هڅونې شرایطو کې هم.

د حل جوړښت

راځئ هڅه وکړو چې دقیقا معلومه کړو چې څنګه د ټیټ کوډ وسیله د ډیټا محاسبې فعالیت رامینځته کولو سرعت اصلاح کولو ستونزې حل کولو کې مرسته کوي. لومړی، راځئ چې د سیسټم فعال جوړښت وګورو. په دې قضیه کې یوه بیلګه د رسنیو څیړنې لپاره د معلوماتو تولید ماډل دی.

په تحلیلي پلیټ فارمونو کې د ټیټ کوډ پلي کول

زموږ په قضیه کې د معلوماتو سرچینې خورا متفاوت او متنوع دي:

  • د خلکو میټرونه (د تلویزیون میټرونه) سافټویر او هارډویر وسایل دي چې د تلویزیون پینل ځواب ویونکو څخه د کارونکي چلند لوستل کوي - چا، کله او کوم تلویزیوني چینل په هغه کورنۍ کې لیدلی چې په مطالعې کې برخه اخلي. چمتو شوي معلومات د نشر لید لید وقفو جریان دی چې د میډیا کڅوړې او د میډیا محصول سره تړاو لري. د ډیټا لیک ته د بارولو په مرحله کې ډیټا د ډیموګرافیک ځانګړتیاو ، جیوسټریټیفیکیشن ، د وخت زون او نورو معلوماتو سره بډایه کیدی شي چې د ځانګړي میډیا محصول د تلویزیون لید تحلیل لپاره اړین دي. اخیستل شوي اندازه کول د اعلاناتو کمپاینونو تحلیل یا پلان کولو لپاره کارول کیدی شي، د لیدونکو فعالیت او غوره توبونه ارزوي، او د خپرونې شبکه تالیف کړي؛
  • ډاټا کولی شي د تلویزیوني خپرونو جریان کولو او په انټرنیټ کې د ویډیو سرچینو مینځپانګې لید اندازه کولو لپاره د نظارت سیسټمونو څخه راشي؛
  • په ویب چاپیریال کې د اندازه کولو وسیلې، په شمول د سایټ متمرکز او کاروونکي متمرکز میترونه. د ډیټا لیک لپاره د ډیټا چمتو کونکی د څیړنې بار براوزر اضافه کیدی شي او د جوړ شوي VPN سره ګرځنده غوښتنلیک وي.
  • معلومات د هغه سایټونو څخه هم راځي چې د آنلاین پوښتنلیکونو ډکولو پایلې او د شرکت سروې کې د تلیفون مرکو پایلې پیاوړې کوي؛
  • د ډیټا لیک اضافي بډایه کول د شریک شرکتونو لاګونو څخه د معلوماتو ډاونلوډ کولو سره پیښ کیدی شي.

لکه څنګه چې د سرچینې سیسټمونو څخه د خام ډیټا لومړني مرحله کې د بارولو پلي کول په مختلفو لارو تنظیم کیدی شي. که د دې موخو لپاره ټیټ کوډ وکارول شي، د میټاډاټا پراساس د بارولو سکریپټونو اتوماتیک تولید ممکن دی. په دې حالت کې، اړتیا نشته چې د نقشې نښه کولو لپاره د پراختیا سرچینې کچې ته لاړ شئ. د اتوماتیک بار کولو پلي کولو لپاره، موږ اړتیا لرو چې سرچینې سره اړیکه جوړه کړو، او بیا د بار کولو انٹرفیس کې د هغو ادارو لیست تعریف کړئ چې باید بار شي. په HDFS کې د لارښود جوړښت به په اوتومات ډول رامینځته شي او د سرچینې سیسټم کې د معلوماتو ذخیره کولو جوړښت سره مطابقت ولري.

په هرصورت، د دې پروژې په شرایطو کې، موږ پریکړه وکړه چې د ټیټ کوډ پلیټ فارم دا ځانګړتیا د دې حقیقت له امله وکاروو چې د میډیسکوپ شرکت لا دمخه په خپلواک ډول د Nifi + Kafka ترکیب په کارولو سره د ورته خدمت تولید لپاره کار پیل کړی.

دا د سمدستي په ګوته کولو ارزښت لري چې دا وسیلې د تبادلې وړ ندي ، بلکه بشپړونکي دي. نیفي او کافکا دواړه په مستقیم ډول کار کولی شي (Nifi -> کافکا) او په برعکس (کافکا -> Nifi) اړیکه کې. د رسنیو د څیړنې پلیټ فارم لپاره، د بنډل لومړۍ نسخه کارول شوې وه.

په تحلیلي پلیټ فارمونو کې د ټیټ کوډ پلي کول

زموږ په قضیه کې، NayFi اړتیا درلوده چې د سرچینې سیسټمونو څخه مختلف ډوله ډاټا پروسس کړي او د کافکا بروکر ته یې واستوي. په دې حالت کې، د PublishKafka Nifi پروسیسرونو په کارولو سره یو ځانګړي کافکا موضوع ته پیغامونه لیږل شوي. د دې پایپ لاینونو آرکیسټریشن او ساتنه په بصری انٹرفیس کې ترسره کیږي. د Nifi وسیله او د Nifi + کافکا ترکیب کارول د پراختیا لپاره د ټیټ کوډ طریقه هم بلل کیدی شي، کوم چې د لوی ډیټا ټیکنالوژیو ته د ننوتلو لپاره ټیټ خنډ لري او د غوښتنلیک پراختیا پروسه ګړندۍ کوي.

د پروژې په پلي کولو کې بل پړاو دا و چې مفصل معلومات یو واحد سیمانټیک پرت فارمیټ ته راوړي. که چیرې یو وجود تاریخي ځانګړتیاوې ولري، محاسبه د پوښتنې په برخه کې د ویش په شرایطو کې ترسره کیږي. که چیرې وجود تاریخي نه وي، نو دا په اختیاري توګه ممکنه ده چې یا د اعتراض ټول محتويات بیا محاسبه کړي، یا په بشپړ ډول د دې اعتراض له بیا حساب کولو څخه انکار وکړي (د بدلونونو د نشتوالي له امله). پدې مرحله کې، کیلي د ټولو ادارو لپاره رامینځته کیږي. کیلي د Hbase لارښودونو کې زیرمه شوي چې د ماسټر څیزونو سره مطابقت لري ، کوم چې په تحلیلي پلیټ فارم کې د کیليونو او د سرچینې سیسټمونو کلیدونو ترمینځ اړیکه لري. د اتومي ادارو یوځای کول د تحلیلي معلوماتو د لومړني محاسبې پایلو سره بډایه کول دي. د معلوماتو محاسبه کولو چوکاټ سپارک وو. یو واحد سیمانټیک ته د ډیټا راوړلو لپاره تشریح شوي فعالیت هم د ټیټ کوډ ډیټاګرام وسیلې څخه د نقشو پراساس پلي شوی و.

د هدف جوړښت د سوداګرۍ کاروونکو لپاره ډیټا ته د SQL لاسرسي ته اړتیا لري. Hive د دې اختیار لپاره کارول کیده. توکي په اوتومات ډول په Hive کې ثبت کیږي کله چې تاسو د ټیټ کوډ وسیلې کې د "راجستر Hive میز" اختیار فعال کړئ.

په تحلیلي پلیټ فارمونو کې د ټیټ کوډ پلي کول

د محاسبې جریان کنټرول

ډیټاګرام د کاري فلو فلو ډیزاینونو رامینځته کولو لپاره انٹرفیس لري. نقشه د Oozie مهالویش په کارولو سره پیل کیدی شي. د جریان پراختیا کونکي انٹرفیس کې ، دا ممکنه ده چې د موازي ، ترتیب ، یا اجرا پورې اړوند ډیټا بدلونونو لپاره سکیمونه رامینځته کړئ. د شیل سکریپټونو او جاوا برنامو لپاره ملاتړ شتون لري. دا هم امکان لري چې د اپاچي لیوی سرور وکاروئ. اپاچی لیوی د پرمختیایی چاپیریال څخه مستقیم غوښتنلیکونو چلولو لپاره کارول کیږي.

که چیرې شرکت دمخه د خپل پروسې آرکیسټرټر ولري ، نو دا ممکنه ده چې د REST API وکاروئ ترڅو نقشې په موجوده جریان کې ځای په ځای کړي. د مثال په توګه، موږ په PLSQL او کوټلین کې لیکل شوي آرکیسټریټرونو کې په سکالا کې د نقشه ایبیډ کولو خورا بریالۍ تجربه درلوده. د ټیټ کوډ وسیلې REST API کې عملیات شامل دي لکه د نقشه کولو ډیزاین پراساس د اجرا وړ کال رامینځته کول ، د نقشه کولو زنګ وهل ، د نقشه کولو لړۍ زنګ وهل ، او البته ، د نقشې چلولو لپاره URL ته د پیرامیټونو لیږدول.

د Oozie سره یوځای، دا ممکنه ده چې د هوا جریان په کارولو سره د محاسبې جریان تنظیم کړئ. شاید زه به د اوزي او ایر فلو ترمینځ پرتله کولو باندې ډیر وخت ونه اوسم ، مګر په ساده ډول به ووایم چې د میډیا څیړنې پروژې د کار په شرایطو کې ، انتخاب د ایر فلو په ګټه شو. اصلي دلیلونه دا ځل یوه فعاله ټولنه وه چې محصول ته وده ورکوي او یو ډیر پرمختللی انٹرفیس + API.

د هوا جریان هم ښه دی ځکه چې دا د محاسبې پروسې تشریح کولو لپاره محبوب پایتون کاروي. او په عموم کې ، د خلاصې سرچینې کاري فلو مدیریت پلیټ فارمونه شتون نلري. د پروسو اجرا کول او نظارت کول (د ګانټ چارټ په شمول) یوازې د هوا جریان کرما ته ټکي اضافه کوي.

د ټیټ کوډ حل میپینګونو پیل کولو لپاره د ترتیب کولو فایل فارمیټ په سپارک - سپارلو بدل شوی. دا د دوو دلیلونو لپاره پیښ شوي. لومړی، سپارک-سپارټ تاسو ته اجازه درکوي په مستقیم ډول د کنسول څخه د جار فایل چل کړئ. دوهم، دا کولی شي د کاري فلو تنظیم کولو لپاره ټول اړین معلومات ولري (کوم چې د سکریپټ لیکلو لپاره اسانه کوي چې ډاګ رامینځته کوي).
زموږ په قضیه کې د هوا جریان کاري فلو خورا عام عنصر د سپارک سبمیټ آپریټر و.

SparkSubmitOperator تاسو ته اجازه درکوي جار چل کړئ - بسته شوي ډیټاګرام نقشه د دوی لپاره د دمخه رامینځته شوي ان پټ پیرامیټونو سره.

دا د یادولو وړ ده چې د هوا جریان هره دنده په جلا تار کې پرمخ ځي او د نورو دندو په اړه هیڅ نه پوهیږي. له همدې امله، د دندو تر منځ تعامل د کنټرول آپریټرونو په کارولو سره ترسره کیږي، لکه DummyOperator یا BranchPythonOperator.

په ګډه اخیستل شوي، د ډیټاګرام ټیټ کوډ حل کارول د کنفیګریشن فایلونو نړیوال کولو (د ډاګ رامینځته کول) سره په ګډه د ډیټا بارولو جریان رامینځته کولو پروسې کې د پام وړ سرعت او ساده کولو لامل شو.

د محاسبې ښودنه

شاید د تحلیلي معلوماتو په تولید کې ترټولو فکري بار شوی مرحله د نمایشونو جوړولو مرحله ده. د یوې څیړنې شرکت د ډیټا محاسبې جریان په شرایطو کې ، پدې مرحله کې ، ډاټا د حوالې نشر ته راټیټیږي ، د وخت زونونو لپاره اصالحات په پام کې نیولو سره او د نشراتي شبکې سره وصل شوي. دا هم امکان لري چې د محلي نشراتي شبکې (سیمه ایز خبرونه او اعلاناتو) لپاره تنظیم کړئ. د نورو شیانو په مینځ کې ، دا مرحله د لید وقفو تحلیل پراساس د رسنیو محصولاتو دوامداره لید وقفې ماتوي. سمدلاسه، د لید ارزښتونه د دوی د اهمیت په اړه د معلوماتو پراساس "وزن شوي" دي (د سمون فاکتور محاسبه).

په تحلیلي پلیټ فارمونو کې د ټیټ کوډ پلي کول

د نمایشونو په چمتو کولو کې یو جلا ګام د معلوماتو اعتبار دی. د اعتبار الګوریتم د یو شمیر ریاضیاتو ساینس ماډلونو کارول شامل دي. په هرصورت، د ټیټ کوډ پلیټ فارم کارول تاسو ته اجازه درکوي یو پیچلي الګوریتم په یو شمیر جلا لید لید وړ نقشو کې مات کړئ. هر نقشه یو تنګه دنده ترسره کوي. د پایلې په توګه، منځګړیتوب ډیبګ کول، ننوتل او د معلوماتو چمتو کولو پړاوونو لیدل ممکن دي.

پریکړه وشوه چې د اعتبار الګوریتم په لاندې فرعي مرحلو کې جلا کړئ:

  • د 60 ورځو لپاره په سیمه کې د ټولو شبکو لیدلو سره په سیمه کې د تلویزیون شبکې لید انحصارونو راجسټریشن رامینځته کول.
  • د شاګرد شوي پاتې شونو محاسبه (د ریښتیني ارزښتونو انحراف له هغو څخه چې د ریګریشن ماډل لخوا وړاندوینه شوي) د ټولو راجسټریشن ټکو او د محاسبې ورځې لپاره.
  • د سیمه ایزو شبکو جوړو غیرعادلانه انتخاب، چیرې چې د حل کولو ورځې زده کونکي توازن له نورم څخه ډیر وي (د عملیاتو ترتیباتو لخوا مشخص شوی).
  • د هر ځواب ورکوونکي لپاره چې په سیمه کې یې شبکه لیدلې د غیر غیر معمولي سیمې - تلویزیون شبکې جوړه لپاره د سم شوي زده کونکي پاتې پاتې حساب بیاکتنه، د دې ځواب ورکوونکي ونډې ټاکي (د زده کونکي پاتې شوي پاتې کیدو کې د بدلون اندازه) کله چې د نمونې څخه د دې ځواب ورکوونکي لید پریښودل .
  • د هغو کاندیدانو په لټه کې شئ چې د دوی ایستل د معاش د زده کړې بیلانس بیرته عادي حالت ته راوړي.

پورتنۍ بیلګه دا فرضیه تاییدوي چې د ډیټا انجینر لا دمخه په خپل ذهن کې ډیر څه لري ... او که چیرې دا واقعیا یو "انجینر" وي نه "کوډر" ، نو د ټیټ کوډ وسیلو کارولو پرمهال د مسلکي تخریب ویره باید بالاخره شاتګ وکړي.

ټیټ کوډ نور څه کولی شي؟

په سکالا کې په لاسي ډول د کوډ لیکلو اړتیا پرته د بیچ او سټریم ډیټا پروسس کولو لپاره د ټیټ کوډ وسیلې غوښتنلیک ساحه پای ته نه رسیږي.

د ډیټالیک په پراختیا کې د ټیټ کوډ کارول لا دمخه زموږ لپاره یو معیار ګرځیدلی. موږ شاید ووایو چې د هډوپ سټیک پراساس حلونه د RDBMS پراساس د کلاسیک DWHs پراختیا لاره تعقیبوي. په هډوپ سټیک کې د ټیټ کوډ وسیلې کولی شي د ډیټا پروسس کولو دندې او د وروستي BI انٹرفیسونو رامینځته کولو دنده دواړه حل کړي. برسېره پردې، دا باید په پام کې ونیول شي چې BI نه یوازې د معلوماتو نمایندګۍ معنی لري، بلکې د سوداګرۍ کاروونکو لخوا د دوی ترمیم هم. موږ ډیری وختونه دا فعالیت کاروو کله چې د مالي سکتور لپاره تحلیلي پلیټ فارمونه رامینځته کوو.

په تحلیلي پلیټ فارمونو کې د ټیټ کوډ پلي کول

د نورو شیانو په مینځ کې ، د ټیټ کوډ او په ځانګړي توګه د ډیټاګرام په کارولو سره ، دا ممکنه ده چې د انفرادي ساحو (نسب) ته د اتومیت سره د ډیټا سټریم شیانو اصلي تعقیب ستونزه حل کړئ. د دې کولو لپاره، د ټیټ کوډ وسیله د اپاچي اتلس او کلاوډر نیویګیټر سره انٹرفیس پلي کوي. په لازمي ډول ، پراختیا کونکی اړتیا لري په اتلس لغتونو کې د شیانو سیټ راجستر کړي او د نقشې جوړولو پرمهال راجسټر شوي توکي راجع کړي. د ډیټا اصلي تعقیب یا د اعتراض انحصار تحلیل کولو میکانیزم خورا ډیر وخت خوندي کوي کله چې د محاسبې الګوریتمونو کې پرمختګ ته اړتیا وي. د مثال په توګه، کله چې د مالي بیاناتو چمتو کول، دا ځانګړتیا تاسو ته اجازه درکوي په آرامۍ سره د تقنیني بدلونونو دورې ژوندي پاتې شي. په هرصورت، هرڅومره چې موږ د مفصل پرت د شیانو په شرایطو کې د بین فارم انحصار باندې ښه پوهیږو ، هومره به موږ د "ناڅاپه" نیمګړتیاو سره مخ شو او د بیا کار کولو شمیر به کم کړو.

په تحلیلي پلیټ فارمونو کې د ټیټ کوډ پلي کول

د معلوماتو کیفیت او ټیټ کوډ

بله دنده چې د میډیسکوپ پروژه کې د ټیټ کوډ وسیلې لخوا پلي کیږي د ډیټا کیفیت ټولګي دنده وه. د څیړنې شرکت پروژې لپاره د ډیټا تصدیق کولو پایپ لاین پلي کولو یوه ځانګړې ځانګړتیا د اصلي معلوماتو محاسبې جریان فعالیت او سرعت باندې د اغیز نشتوالی و. د دې لپاره چې د خپلواک ډیټا تصدیق جریان تنظیم کړي ، دمخه پیژندل شوی اپاچی ایر فلو کارول شوی و. لکه څنګه چې د معلوماتو تولید هر ګام چمتو و، د DQ پایپ لاین جلا برخه په موازي توګه پیل شوه.

دا په تحلیلي پلیټ فارم کې د پیل کیدو له شیبې څخه د ډیټا کیفیت څارل ښه عمل ګڼل کیږي. د میټاډاټا په اړه د معلوماتو په درلودلو سره، موږ کولی شو د لومړنیو شرایطو سره مطابقت وګورو له هغه شیبې څخه چې معلومات لومړني پرت ته ننوځي - نه خالي، محدودیتونه، بهرنۍ کیلي. دا فعالیت په ډیټاګرام کې د ډیټا کیفیت کورنۍ د اتوماتیک تولید شوي نقشې پراساس پلي کیږي. پدې قضیه کې د کوډ تولید هم د ماډل میټاډاټا پراساس دی. د میډیسکوپ پروژه کې، انٹرفیس د تصدۍ معمار محصول میټاډاټا سره ترسره شوی.

د تصدۍ معمار سره د ټیټ کوډ وسیلې په جوړه کولو سره ، لاندې چیکونه په اوتومات ډول رامینځته شوي:

  • په ساحو کې د "نول" ارزښتونو شتون د "نول نه" ترمیم کونکي سره چک کول؛
  • د لومړني کیلي د نقلونو شتون چیک کول؛
  • د یوې ادارې بهرنۍ کیلي چک کول؛
  • د ساحو د سیټ پراساس د تار انفرادیت چیک کول.

د ډیټا شتون او اعتبار د ډیرو پیچلو چکونو لپاره، د سکالا ایکسپریشن سره نقشه جوړه شوه، کوم چې په زپیلین کې د شنونکو لخوا چمتو شوي بهرنۍ سپارک SQL چیک کوډ داخلوي.

په تحلیلي پلیټ فارمونو کې د ټیټ کوډ پلي کول

البته، د چکونو اتوماتیک نسل باید په تدریجي ډول ترلاسه شي. د تشریح شوي پروژې په چوکاټ کې، دا د لاندې ګامونو لخوا مخکې شوی و:

  • DQ په زپیلین نوټ بوک کې پلي شوی؛
  • DQ په نقشه کولو کې جوړ شوی؛
  • DQ د جلا لوی نقشو په شکل کې چې د جلا ادارې لپاره د چکونو بشپړ سیټ لري؛
  • یونیورسل پیرامیټریز شوی DQ نقشه چې د ان پټ په توګه د میټاډاټا او سوداګرۍ چکونو په اړه معلومات مني.

شاید د پیرامیټر شوي چیک خدمت رامینځته کولو اصلي ګټه د تولید چاپیریال ته د فعالیت وړاندې کولو لپاره د وخت کمول دي. د کیفیت نوي چیکونه کولی شي د پراختیا او ازموینې چاپیریالونو له لارې په غیر مستقیم ډول د کوډ وړاندې کولو کلاسیک نمونه پریږدي:

  • ټول میټاډاټا چیکونه په اوتومات ډول رامینځته کیږي کله چې ماډل په EA کې بدل شي؛
  • د ډیټا شتون چیک (په یو وخت کې د هر ډول ډیټا شتون ټاکنه) د لارښود پراساس رامینځته کیدی شي چې د شیانو په شرایطو کې د ډیټا راتلونکي برخې څرګندیدو تمه شوي وخت ذخیره کوي؛
  • د سوداګرۍ ډیټا تایید چیکونه د زپیلین نوټ بوکونو کې د شنونکو لخوا رامینځته شوي. له هغه ځایه دوی مستقیم د تولید چاپیریال کې د DQ ماډل تنظیم کولو میزونو ته لیږل کیږي.

تولید ته د مستقیم لیږلو سکریپټونو هیڅ خطر شتون نلري. حتی د ترکیب غلطی سره ، اعظمي هغه چې موږ ته ګواښ کوي د یو چیک ترسره کولو کې ناکامي ده ، ځکه چې د ډیټا محاسبې جریان او د کیفیت چیک لانچ جریان له یو بل څخه جلا شوي.

په اصل کې، د DQ خدمت د تل لپاره د تولید چاپیریال کې روان دی او چمتو دی چې خپل کار پیل کړي کله چې د معلوماتو بله برخه ښکاره شي.

پر ځای د يو پایلې

د ټیټ کوډ کارولو ګټه څرګنده ده. پراختیا کونکي اړتیا نلري چې غوښتنلیک له سکریچ څخه رامینځته کړي. او یو پروګرامر چې د اضافي کارونو څخه خلاص شوی وي ګړندی پایلې تولیدوي. سرعت، په بدل کې، د اصلاح کولو مسلو حل کولو لپاره اضافي وخت خلاصوي. له همدې امله، پدې حالت کې، تاسو کولی شئ په غوره او چټک حل باندې حساب وکړئ.

البته، ټیټ کوډ یوه درملنه نه ده، او جادو به پخپله پیښ نشي:

  • د ټیټ کوډ صنعت د "پیاوړې کیدو" مرحلې څخه تیریږي، او تر اوسه یو شان صنعتي معیارونه شتون نلري؛
  • ډیری ټیټ کوډ حلونه وړیا ندي ، او د دوی پیرود باید یو شعوري ګام وي ، کوم چې باید د دوی کارولو مالي ګټو باندې په بشپړ باور سره رامینځته شي.
  • ډیری ټیټ کوډ حلونه تل د GIT/SVN سره ښه کار نه کوي. یا دوی د کارولو لپاره ناامنه دي که چیرې رامینځته شوی کوډ پټ وي؛
  • کله چې د جوړښت پراخول، دا ممکن د ټیټ کوډ حل حل کولو ته اړتیا وي - کوم چې په پایله کې، د ټیټ کوډ حل په عرضه کوونکي باندې د "ملاقات او انحصار" اغیز هڅوي.
  • د امنیت کافي کچه ممکنه ده، مګر دا خورا سخت کار دی او د ټیټ کوډ سیسټم انجنونو کې پلي کول ستونزمن دي. د ټیټ کوډ پلیټ فارمونه باید نه یوازې د دوی کارولو څخه د ګټو په لټه کې د اصولو له مخې غوره شي. کله چې غوره کول، دا ارزښت لري چې د لاسرسي کنټرول لپاره د فعالیت شتون او د سازمان د ټول IT منظرې کچې کچې ته د پیژندنې ډیټا ته د پلاوي / تېښتې په اړه پوښتنې وپوښتل شي.

په تحلیلي پلیټ فارمونو کې د ټیټ کوډ پلي کول

په هرصورت، که چیرې د غوره شوي سیسټم ټولې نیمګړتیاوې تاسو ته معلومه وي، او د هغې کارولو ګټې، په هرصورت، په غالب اکثریت کې وي، نو بیا پرته له ویرې کوچني کوډ ته لاړ شئ. سربیره پردې، دې ته لیږد ناگزیر دی - لکه څنګه چې هر ډول تکامل ناگزیر دی.

که چیرې یو پرمخ وړونکی په ټیټ کوډ پلیټ فارم کې خپله دنده د دوه پراختیا کونکو په پرتله د ټیټ کوډ پرته ګړندي ترسره کړي ، نو دا شرکت ته په ټولو برخو کې سر پیل ورکوي. د ټیټ کوډ حلونو ته د ننوتلو حد د "دودیز" ټیکنالوژیو په پرتله ټیټ دی، او دا د پرسونل کمښت په مسله کې مثبت اغیزه لري. کله چې د ټیټ کوډ وسیلې وکاروئ ، نو دا ممکنه ده چې د فعال ټیمونو ترمینځ متقابل عمل ګړندی کړئ او د ډیټا ساینس څیړنې غوره شوي لارې سموالي په اړه ګړندي پریکړې وکړئ. د ټیټې کچې پلیټ فارمونه کولی شي د یوې ادارې ډیجیټل بدلون رامینځته کړي ځکه چې تولید شوي حلونه د غیر تخنیکي متخصصینو (په ځانګړي توګه د سوداګرۍ کاروونکو) لخوا درک کیدی شي.

که تاسو سخت مهال ویش لرئ، د سوداګرۍ منطق، د تخنیکي مهارت نشتوالی، او تاسو اړتیا لرئ چې بازار ته خپل وخت ګړندی کړئ، نو ټیټ کوډ ستاسو د اړتیاو پوره کولو یوه لاره ده.

د دودیز پرمختیایی وسیلو اهمیت څخه انکار نشته ، مګر په ډیری قضیو کې ، د ټیټ کوډ حلونو کارول د حل شوي دندو موثریت لوړولو غوره لاره ده.

سرچینه: www.habr.com

Add a comment