የ Sber ሚዛን ሲኖርዎት. ኣብ ኢኒሺዮ ከቀፎ እና ግሪንፕለም ንጥቀም።

ከተወሰነ ጊዜ በፊት፣ ከBig Data ጋር ለመስራት የኢቲኤል መሳሪያ የመምረጥ ጥያቄ አጋጥሞናል። ቀደም ሲል ጥቅም ላይ የዋለው የኢንፎርማቲካ BDM መፍትሄ በተገደበ ተግባራዊነት ምክንያት አልተስማማንም። አጠቃቀሙ የብልጭታ-ማስረከቢያ ትዕዛዞችን ለመጀመር ወደ ማዕቀፍ ተቀንሷል። በመርህ ደረጃ በየቀኑ ከምንሰራው የውሂብ መጠን ጋር ለመስራት የሚችሉ ብዙ አናሎጎች በገበያ ላይ አልነበሩም። መጨረሻ ላይ አብ ኢንቲዮን መረጥን። በአብራሪ ማሳያዎች ወቅት ምርቱ በጣም ከፍተኛ የውሂብ ሂደት ፍጥነት አሳይቷል. እዚ ኣብ ኢንቲዮ ራሽያኛ ዝረኣየሉ ምኽንያት ስለ ዝዀነ፡ ስለምንታይ ከም ሓበሬታ ኽንገልጽ ወሰንና።

አብ ኢንቲዮ ብዙ ክላሲክ እና ያልተለመዱ ለውጦች አሉት፣ ኮዱም የራሱን የፒዲኤል ቋንቋ በመጠቀም ሊራዘም ይችላል። ለአነስተኛ ንግድ, እንዲህ ዓይነቱ ኃይለኛ መሣሪያ ከመጠን በላይ መሙላቱ አይቀርም, እና አብዛኛው አቅሙ ውድ እና ጥቅም ላይ ያልዋለ ሊሆን ይችላል. ነገር ግን ሚዛንዎ ወደ Sberov's ቅርብ ከሆነ, አብ ኢንቲዮ ለእርስዎ አስደሳች ሊሆን ይችላል.

አንድ የንግድ ሥራ በዓለም አቀፍ ደረጃ ዕውቀትን እንዲያከማች እና ሥነ-ምህዳሩን እንዲያዳብር ይረዳል ፣ እና ገንቢ በ ETL ውስጥ ያለውን ችሎታ እንዲያሻሽል ፣ እውቀቱን በሼል ውስጥ እንዲያሻሽል ፣ የ PDL ቋንቋን የመቆጣጠር እድል ይሰጣል ፣ የመጫን ሂደቶችን ምስላዊ ምስል ይሰጣል እና ልማትን ያቃልላል። በተግባራዊ አካላት ብዛት ምክንያት.

በዚህ ጽሑፍ ውስጥ ስለ አብ ኢንቲዮ አቅም እናገራለሁ እና ከሂቭ እና ግሪንፕላም ጋር ያለውን ሥራ ንጽጽር ባህሪያትን አቀርባለሁ።

  • የኤምዲደብሊው መዋቅር መግለጫ እና ለግሪንፕለም ማበጀት ላይ ይሰራል
  • ኣብ ኢንቲዮ ኣፈፃፅማ ንፅፅር ቀፎን ግሪንፕሎምን።
  • ኣብ ኢኒሺዮ ከግሪንፕለም ንሰራሕተኛታት ናይ ሪል ታይም ሞድ


የዚህ ምርት ተግባራዊነት በጣም ሰፊ እና ለማጥናት ብዙ ጊዜ ይጠይቃል. ነገር ግን, በተገቢው የስራ ችሎታ እና ትክክለኛ የአፈፃፀም ቅንጅቶች, የውሂብ ሂደት ውጤቶች በጣም አስደናቂ ናቸው. Ab Initioን ለገንቢ መጠቀም አስደሳች ተሞክሮን ይሰጣል። ይህ በETL ልማት ላይ አዲስ ቅብብሎሽ ነው፣ በእይታ አካባቢ እና በአውርድ ልማት መካከል ያለ ስክሪፕት በሚመስል ቋንቋ።

ንግዶች ስነ-ምህዳሮቻቸውን እያዳበሩ ነው እና ይህ መሳሪያ ከመቼውም ጊዜ በበለጠ ጠቃሚ ነው። በአብ ኢንቲዮ አማካኝነት ስለአሁኑ ንግድዎ እውቀትን ማሰባሰብ እና ይህንን እውቀት የቆዩ እና አዳዲስ ንግዶችን ለመክፈት ይጠቀሙበት። ለአብ ኢንቲዮ አማራጮች የእይታ ልማት አካባቢዎችን ኢንፎርማቲካ BDM እና የማይታዩ የልማት አካባቢዎችን Apache Spark ያካትታሉ።

ኣብ ኢንቲዮ ገለጻ

አብ ኢንቲዮ፣ ልክ እንደሌሎች የኢቲኤል መሳሪያዎች፣ የምርት ስብስብ ነው።

የ Sber ሚዛን ሲኖርዎት. ኣብ ኢኒሺዮ ከቀፎ እና ግሪንፕለም ንጥቀም።

ኣብ ኢኒቲዮ ጂዲኢ (ግራፊካል ዴቨሎፕመንት ኢንቫይሮንመንት) ዳታ ትራንስፎርሜሽንን ኣዋቀርቲ ንጥፈታትን ብቀስት መልክዕ ከውጽእ ይኽእል እዩ። በዚህ ሁኔታ ፣ እንዲህ ዓይነቱ የለውጥ ስብስብ ግራፍ ይባላል-

የ Sber ሚዛን ሲኖርዎት. ኣብ ኢኒሺዮ ከቀፎ እና ግሪንፕለም ንጥቀም።

የተግባር አካላት የግብአት እና የውጤት ግንኙነቶች ወደቦች ናቸው እና በለውጦች ውስጥ የተሰሉ መስኮችን ይይዛሉ። በአፈፃፀማቸው ቅደም ተከተል ውስጥ በፍሰቶች መልክ የተገናኙ በርካታ ግራፎች እቅድ ይባላሉ.

በመቶዎች የሚቆጠሩ ተግባራዊ አካላት አሉ, ይህም በጣም ብዙ ነው. ብዙዎቹ ከፍተኛ ልዩ ባለሙያተኞች ናቸው. በአብ ኢንቲዮ ውስጥ ያሉ የጥንታዊ ለውጦች ችሎታዎች ከሌሎች የኢቲኤል መሳሪያዎች የበለጠ ሰፊ ናቸው። ለምሳሌ፣ Join በርካታ ውጤቶች አሉት። የውሂብ ስብስቦችን ከማገናኘት ውጤት በተጨማሪ ቁልፎቻቸው ሊገናኙ የማይችሉ የግቤት የውሂብ ስብስቦች የውጤት መዝገቦችን ማግኘት ይችላሉ። እንዲሁም ውድቀቶችን ፣ ስህተቶችን እና የትራንስፎርሜሽኑን ምዝግብ ማስታወሻ ማግኘት ይችላሉ ፣ ይህም ከጽሑፍ ፋይል ጋር በተመሳሳይ አምድ ውስጥ ሊነበብ እና ከሌሎች ለውጦች ጋር ሊሰራ ይችላል ።

የ Sber ሚዛን ሲኖርዎት. ኣብ ኢኒሺዮ ከቀፎ እና ግሪንፕለም ንጥቀም።

ወይም, ለምሳሌ, የውሂብ ተቀባይን በሠንጠረዥ መልክ ማዋል እና በተመሳሳይ አምድ ውስጥ ውሂብ ማንበብ ይችላሉ.

ኦሪጅናል ለውጦች አሉ። ለምሳሌ፣ የቃኘው ለውጥ ከትንታኔ ተግባራት ጋር ተመሳሳይነት ያለው ተግባር አለው። በራስ ገላጭ ስሞች ለውጦች አሉ፡ ዳታ ፍጠር፣ ኤክሴልን አንብብ፣ መደበኛ አድርግ፣ በቡድን መደርደር፣ ፕሮግራምን አሂድ፣ SQL አሂድ፣ ከዲቢ ጋር መቀላቀል፣ ወዘተ. ግራፎች የሩጫ ጊዜ መለኪያዎችን መጠቀም ይችላሉ፣ ግቤቶችን ከ ወይም ወደ የማለፍ እድልን ጨምሮ። ስርዓተ ክወናው . ወደ ግራፉ የተላለፉ ዝግጁ-የተሰራ የመለኪያዎች ስብስብ ያላቸው ፋይሎች ፓራሜትር ስብስቦች (ፕሴቶች) ይባላሉ።

እንደተጠበቀው፣ አብ ኢንቲዮ GDE የራሱ ማከማቻ EME (ኢንተርፕራይዝ ሜታ ኢንቫይሮንመንት) የሚባል አለው። ገንቢዎች ከአካባቢያዊ የኮድ ስሪቶች ጋር ለመስራት እና እድገታቸውን ወደ ማእከላዊው ማከማቻ የመፈተሽ እድል አላቸው።

በአፈፃፀም ወቅት ወይም ግራፉን ከፈጸሙ በኋላ ትራንስፎርሜሽኑን የሚያገናኝ ማንኛውንም ፍሰት ላይ ጠቅ ማድረግ እና በእነዚህ ለውጦች መካከል ያለፉትን መረጃዎች መመልከት ይቻላል ።

የ Sber ሚዛን ሲኖርዎት. ኣብ ኢኒሺዮ ከቀፎ እና ግሪንፕለም ንጥቀም።

Также есть возможность кликнуть по любому потоку и посмотреть tracking details – в сколько параллелей работала трансформация, сколько строк и байт в какой из параллелей загрузилось:

የ Sber ሚዛን ሲኖርዎት. ኣብ ኢኒሺዮ ከቀፎ እና ግሪንፕለም ንጥቀም።

የግራፉን አፈፃፀም በየደረጃው በመከፋፈል በመጀመሪያ ደረጃ (በዜሮ ደረጃ) ፣ ቀጣዩ በመጀመሪያው ምዕራፍ ፣ ቀጣዩ በሁለተኛው ክፍል ፣ ወዘተ አንዳንድ ለውጦች መከናወን እንዳለባቸው ምልክት ማድረግ ይቻላል ።

ለእያንዳንዱ ትራንስፎርሜሽን, አቀማመጥ ተብሎ የሚጠራውን (የሚተገበርበትን ቦታ) መምረጥ ይችላሉ-ያለ ትይዩዎች ወይም በትይዩ ክሮች ውስጥ, ቁጥራቸው ሊገለጽ ይችላል. በተመሳሳይ ጊዜ ለውጦች በሚሰሩበት ጊዜ አብ ኢንቲዮ የሚፈጥራቸው ጊዜያዊ ፋይሎች በአገልጋይ ፋይል ስርዓት እና በኤችዲኤፍኤስ ውስጥ ሊቀመጡ ይችላሉ።

በእያንዳንዱ ለውጥ፣ በነባሪው አብነት ላይ በመመስረት፣ በፒዲኤል ውስጥ የራስዎን ስክሪፕት መፍጠር ይችላሉ፣ ይህም እንደ ሼል ትንሽ ነው።

በፒዲኤል፣ የለውጦችን ተግባራዊነት ማራዘም ይችላሉ፣ እና በተለይም በተለዋዋጭ (በአሂድ ጊዜ) እንደ ሩጫ ጊዜ መለኪያዎች የዘፈቀደ የኮድ ቁርጥራጮችን መፍጠር ይችላሉ።

ኣብ ኢንቲዮ በሼል በኩል ከስርዓተ ክወናው ጋር በደንብ የዳበረ ውህደት አለው። በተለይ Sberbank linux ksh ይጠቀማል። ከሼል ጋር ተለዋዋጮችን መለዋወጥ እና እንደ ግራፍ መለኪያዎች መጠቀም ትችላለህ. ኣብ ኢንኢቲዮ ግራፍ ፈጻሚት ዛጎል ደው ምባል፡ ኣብ ውሽጢ ዓዲ ምዃን ተሓቢሩ።

Помимо Ab Initio GDE в поставку входит много других продуктов. Есть своя Co>Operation System с претензией называться операционной системой. Есть Control>Center, в котором можно ставить на расписание и мониторить потоки загрузки. Есть продукты для осуществления разработки на более примитивном уровне, чем позволяет Ab Initio GDE.

የኤምዲደብሊው መዋቅር መግለጫ እና ለግሪንፕለም ማበጀት ላይ ይሰራል

ከምርቶቹ ጋር፣ አቅራቢው የኤምዲደብሊው (ሜታዳታ Driven Warehouse) ምርትን ያቀርባል፣ ይህም የመረጃ መጋዘኖችን ወይም የመረጃ ቋቶችን ለመሙላት የተለመዱ ተግባራትን ለመርዳት የተነደፈ የግራፍ ውቅረት ነው።

ከሳጥኑ ውስጥ ብጁ (ፕሮጀክት-ተኮር) ሜታዳታ ተንታኞች እና ዝግጁ የሆኑ የኮድ ማመንጫዎችን ይዟል።

የ Sber ሚዛን ሲኖርዎት. ኣብ ኢኒሺዮ ከቀፎ እና ግሪንፕለም ንጥቀም።
እንደ ግብአት፣ ኤምዲደብሊው የውሂብ ሞዴል፣ ከመረጃ ቋት (Oracle፣ Teradata ወይም Hive) ጋር ግኑኝነትን ለማቀናበር የውቅር ፋይል እና አንዳንድ ሌሎች ቅንብሮችን ይቀበላል። የፕሮጀክት-ተኮር ክፍል, ለምሳሌ, ሞዴሉን ወደ ዳታቤዝ ያሰማራል. ከሳጥን ውጭ ያለው የምርት ክፍል መረጃን ወደ ሞዴል ሰንጠረዦች በመጫን ግራፎችን እና የማዋቀር ፋይሎችን ያመነጫል። በዚህ አጋጣሚ ግራፎች (እና ፕሴቶች) አካላትን በማዘመን ላይ ለብዙ የማስጀመሪያ እና የመጨመር ስራዎች ተፈጥረዋል።

በ Hive እና RDBMS ጉዳዮች፣ ለመጀመር እና ለመጨመሪያ ውሂብ ማሻሻያ የተለያዩ ግራፎች ይፈጠራሉ።

በሂቭ ጉዳይ ላይ የሚመጣው የዴልታ መረጃ በአብ ኢንቲዮ በኩል ተገናኝቷል ከዝማኔው በፊት በሰንጠረዡ ውስጥ ከነበረው መረጃ ጋር ይቀላቀሉ። በኤምዲደብሊው ውስጥ ያሉ የውሂብ ጫኚዎች (ሁለቱም በ Hive እና RDBMS) ከዴልታ አዲስ ውሂብ ማስገባት ብቻ ሳይሆን ዋና ቁልፎቹ ዴልታ የተቀበሉትን የመረጃ አስፈላጊ ጊዜዎችን ይዘጋሉ። በተጨማሪም, ያልተለወጠውን የውሂብ ክፍል እንደገና መፃፍ አለብዎት. ነገር ግን ይህ መደረግ ያለበት ምክንያቱም ቀፎ የማጥፋት ወይም የማዘመን ስራዎች ስለሌለው ነው።

የ Sber ሚዛን ሲኖርዎት. ኣብ ኢኒሺዮ ከቀፎ እና ግሪንፕለም ንጥቀም።

በRDBMS ጉዳይ፣ ለተጨማሪ መረጃ ማዘመን ግራፎች የበለጠ ጥሩ ይመስላሉ፣ ምክንያቱም RDBMS እውነተኛ የማዘመን ችሎታዎች ስላሉት ነው።

የ Sber ሚዛን ሲኖርዎት. ኣብ ኢኒሺዮ ከቀፎ እና ግሪንፕለም ንጥቀም።

የተቀበለው ዴልታ በመረጃ ቋቱ ውስጥ መካከለኛ ሠንጠረዥ ውስጥ ተጭኗል። ከዚህ በኋላ ዴልታ ከማሻሻያው በፊት በሰንጠረዡ ውስጥ ከነበረው መረጃ ጋር ተያይዟል. እና ይሄ የተፈጠረ የ SQL ጥያቄን በመጠቀም SQL በመጠቀም ይከናወናል. በመቀጠል የ SQL ትዕዛዞችን ሰርዝ + አስገባን በመጠቀም አዲስ መረጃ ከዴልታ ወደ ዒላማው ሰንጠረዥ ገብቷል እና ዋና ቁልፎቹ ዴልታ የተቀበሉት የመረጃው አስፈላጊ ጊዜዎች ይዘጋሉ።
ያልተለወጠ ውሂብ እንደገና መጻፍ አያስፈልግም.

ስለዚህ እኛ ወደ ድምዳሜ ደርሰናል ቀፎን በተመለከተ ኤምዲደብሊው ሙሉውን ጠረጴዛ ለመፃፍ መሄድ አለበት ምክንያቱም ቀፎ የማዘመን ተግባር የለውም። እና ማዘመን ሲፈጠር ውሂቡን ሙሉ በሙሉ ከመፃፍ የተሻለ ምንም ነገር የለም። በ RDBMS ጉዳይ ላይ, በተቃራኒው, የምርት ፈጣሪዎች የ SQL አጠቃቀምን የጠረጴዛዎችን ግንኙነት እና ማዘመን በአደራ መስጠት አስፈላጊ ሆኖ አግኝተውታል.

በ Sberbank ውስጥ ላለ ፕሮጀክት፣ ለግሪንፕለም የመረጃ ቋት ጫኝ አዲስ፣ እንደገና ጥቅም ላይ ሊውል የሚችል ትግበራ ፈጥረናል። ይህ የተደረገው MDW ለቴራዳታ በሚያመነጨው ስሪት ላይ በመመስረት ነው። ለዚህ በጣም ቅርብ እና ምርጥ የሆነው ቴራዳታ እንጂ Oracle አይደለም፣ ምክንያቱም... የ MPP ስርዓትም ነው። የቴራዳታ እና ግሪን ፕላም የስራ ዘዴዎች፣ እንዲሁም አገባብ ተመሳሳይ ሆነው ተገኝተዋል።

Примеры критичных для MDW различий между разными RDBMS таковы. В GreenPlum в отличии от Teradata при создании таблиц нужно писать клаузу

distributed by

ቴራዳታ እንዲህ ሲል ጽፏል-

delete <table> all

, እና በግሪንፕለም ውስጥ ይጽፋሉ

delete from <table>

በ Oracle ውስጥ, ለማመቻቸት ዓላማዎች ይጽፋሉ

delete from t where rowid in (<соединение t с дельтой>)

, እና Teradata እና GreenPlum ይጽፋሉ

delete from t where exists (select * from delta where delta.pk=t.pk)

ኣብ ኢንቲዮ ከግሪን ፕለም ጋር ለመስራት፣ በሁሉም የአብ ኢንቲዮ ክላስተር ኖዶች ላይ የግሪንፕሎም ደንበኛን መጫን አስፈላጊ እንደነበር እናስተውላለን። ይህ የሆነበት ምክንያት ከግሪንፕለም ጋር በአንድ ጊዜ ከክላስተር ውስጥ ካሉ ሁሉም አንጓዎች ስለተገናኘን ነው። እና ከግሪን ፕላም ማንበብ ትይዩ እንዲሆን እና እያንዳንዱ ትይዩ የአብ ኢንቲዮ ክር ከግሪንፕለም የራሱን የመረጃ ክፍል ለማንበብ በ SQL መጠይቆች "የት" ክፍል ውስጥ በአብ ኢንቲዮ የተረዳውን ግንባታ ማስቀመጥ ነበረብን።

where ABLOCAL()

እና ከትራንስፎርሜሽን ዳታቤዝ ውስጥ የመለኪያ ንባብን በመግለጽ የዚህን ግንባታ ዋጋ ይወስኑ

ablocal_expr=ÂŤstring_concat("mod(t.", string_filter_out("{$TABLE_KEY}","{}"), ",", (decimal(3))(number_of_partitions()),")=", (decimal(3))(this_partition()))Âť

, እሱም ወደ አንድ ነገር ያጠናቅራል

mod(sk,10)=3

፣ ማለትም እ.ኤ.አ. ለእያንዳንዱ ክፍልፍል ግልጽ ማጣሪያ ግሪንፕለም መጠየቅ አለቦት። ለሌሎች የውሂብ ጎታዎች (ቴራዳታ፣ ኦራክል)፣ አብ ኢንቲዮ ይህን ትይዩ በራስ ሰር ማከናወን ይችላል።

ኣብ ኢንቲዮ ኣፈፃፅማ ንፅፅር ቀፎን ግሪንፕሎምን።

Sberbank በኤምዲደብሊው የመነጩ ግራፎች አፈጻጸምን ከ Hive እና ከግሪንፕለም ጋር ለማነፃፀር ሙከራ አድርጓል። እንደ ሙከራው አካል፣ በሂቭ ጉዳይ ላይ እንደ አብ ኢንቲዮ በተመሳሳይ ክላስተር ላይ 5 ኖዶች ነበሩ፣ እና ግሪንፕላም ላይ በተለየ ክላስተር ላይ 4 ኖዶች ነበሩ። እነዚያ። ቀፎ ከግሪንፕለም በላይ የሃርድዌር ጥቅም ነበረው።

በ Hive እና GreenPlum ውስጥ መረጃን የማዘመን ተመሳሳይ ተግባር የሚያከናውኑ ሁለት ጥንድ ግራፎችን ተመልክተናል። በተመሳሳይ ጊዜ በኤምዲደብሊው ውቅረት የተፈጠሩት ግራፎች ተጀምረዋል፡

  • የመነሻ ጭነት + በዘፈቀደ የመነጨ ውሂብ ወደ ቀፎ ጠረጴዛ መጨመር
  • የመነሻ ጭነት + ጭማሪ ጭነት በዘፈቀደ የመነጨ ውሂብ ወደ ተመሳሳይ የግሪንፕለም ሰንጠረዥ

በሁለቱም ሁኔታዎች (Hive እና GreenPlum) በተመሳሳይ የአብ ኢንቲዮ ክላስተር ላይ ወደ 10 ትይዩ ክሮች ሰቀላዎችን ያደርጉ ነበር። ኣብ Initio በኤችዲኤፍኤስ ውስጥ ለማስላት መካከለኛ ውሂብን አስቀምጧል (ከአብ ኢንቲዮ አንፃር፣ HDFS በመጠቀም MFS አቀማመጥ ጥቅም ላይ ውሏል)። በዘፈቀደ የመነጨው አንድ መስመር በሁለቱም ሁኔታዎች 200 ባይት ይይዛል።

ውጤቱም ይህን ይመስላል።

ቀፎ

በቀፎ ውስጥ የመጀመሪያ ጭነት

ረድፎች ገብተዋል።
6 000 000
60 000 000
600 000 000

የማስጀመሪያ ቆይታ
በሰከንዶች ውስጥ ማውረድ
41
203
1 601

በቀፎ ውስጥ መጨመር

በ ውስጥ የሚገኙት የረድፎች ብዛት
በሙከራው መጀመሪያ ላይ የዒላማ ሰንጠረዥ
6 000 000
60 000 000
600 000 000

የተተገበሩ የዴልታ መስመሮች ብዛት
በሙከራው ወቅት የዒላማ ሰንጠረዥ
6 000 000
6 000 000
6 000 000

የመጨመር ቆይታ
በሰከንዶች ውስጥ ማውረድ
88
299
2 541

ግሪንፕለም

በግሪንፕለም ውስጥ የመጀመሪያ ጭነት

ረድፎች ገብተዋል።
6 000 000
60 000 000
600 000 000

የማስጀመሪያ ቆይታ
በሰከንዶች ውስጥ ማውረድ
72
360
3 631

በግሪንፕለም ውስጥ ተጨማሪ ጭነት

በ ውስጥ የሚገኙት የረድፎች ብዛት
በሙከራው መጀመሪያ ላይ የዒላማ ሰንጠረዥ
6 000 000
60 000 000
600 000 000

የተተገበሩ የዴልታ መስመሮች ብዛት
በሙከራው ወቅት የዒላማ ሰንጠረዥ
6 000 000
6 000 000
6 000 000

የመጨመር ቆይታ
በሰከንዶች ውስጥ ማውረድ
159
199
321

በሁለቱም Hive እና GreenPlum ውስጥ ያለው የመነሻ የመጫኛ ፍጥነት በመረጃው መጠን ላይ የተመሰረተ እንደሆነ እና ለተሻለ ሃርድዌር ምክንያት ከግሪንፕለም ይልቅ ለቀፎ ትንሽ ፈጣን እንደሆነ እናያለን።

በ Hive ውስጥ ያለው ጭማሪ በቀጥታ በዒላማው ሠንጠረዥ ውስጥ ባለው ቀድሞ በተጫኑት የውሂብ መጠን ላይ የሚመረኮዝ ሲሆን ድምጹ ሲያድግ በጣም በዝግታ ይቀጥላል። ይህ የሚከሰተው የታለመውን ሰንጠረዥ ሙሉ በሙሉ እንደገና መጻፍ አስፈላጊ ነው. ይህ ማለት በትልልቅ ጠረጴዛዎች ላይ ትናንሽ ለውጦችን መተግበር ለቀፎ ጥሩ ጥቅም አይደለም ማለት ነው.

በግሪንፕለም ውስጥ ያለው ጭማሪ በደካማ ሁኔታ በዒላማው ሠንጠረዥ ውስጥ ባለው የተጫነው የውሂብ መጠን ላይ የሚመረኮዝ እና በፍጥነት ይከናወናል። ይህ የሆነው ለSQL Joins እና ለግሪን ፕላም አርክቴክቸር ምስጋና ይግባውና ይህም የመሰረዝ ስራን ይፈቅዳል።

ስለዚህ ግሪን ፕላም ዴልታውን የ Delta+ insert ዘዴን ይጨምራል፣ ነገር ግን ቀፎ ሰርዝ ወይም ማዘመን ስራዎች የሉትም፣ ስለዚህ አጠቃላይ የዳታ አደራደር እየጨመረ በሚሄድበት ጊዜ ሙሉ በሙሉ እንደገና ለመፃፍ ተገድዷል። በድብቅ የደመቁት የሕዋሶች ንጽጽር በጣም ገላጭ ነው፣ ምክንያቱም ከሀብት-ተኮር ውርዶችን ለመጠቀም በጣም የተለመደው አማራጭ ጋር ስለሚዛመድ። በዚህ ፈተና ግሪንፕላም ቀፎን 8 ጊዜ እንዳሸነፈ አይተናል።

ኣብ ኢኒሺዮ ከግሪንፕለም ንሰራሕተኛታት ናይ ሪል ታይም ሞድ

በዚ ሙከራ፣ የአብ ኢንቲዮ የግሪንፕለም ሰንጠረዥን በዘፈቀደ በተፈጠሩ የመረጃ ቋቶች በቅርብ ጊዜ የማዘመን ችሎታን እንፈትሻለን። የምንሰራበትን የግሪንፕለም ሰንጠረዥ dev42_1_db_usl.TESTING_SUBJ_org_finvalን እናስብ።

ከእሱ ጋር ለመስራት ሶስት የአብ ኢንቲዮ ግራፎችን እንጠቀማለን-

1) ግራፍ Create_test_data.mp - በ HDFS ውስጥ የውሂብ ፋይሎችን ከ10 ረድፎች ጋር በ6 ትይዩ ክሮች ይፈጥራል። መረጃው በዘፈቀደ ነው, አወቃቀሩ ወደ ጠረጴዛችን ለማስገባት የተደራጀ ነው

የ Sber ሚዛን ሲኖርዎት. ኣብ ኢኒሺዮ ከቀፎ እና ግሪንፕለም ንጥቀም።

የ Sber ሚዛን ሲኖርዎት. ኣብ ኢኒሺዮ ከቀፎ እና ግሪንፕለም ንጥቀም።

2) ግራፍ mdw_load.day_one.current.dev42_1_db_usl_testing_subj_org_finval.pset - ኤምዲደብሊው የመነጨ ግራፍ በ 10 ትይዩ ክሮች ውስጥ በሠንጠረዡ ውስጥ የውሂብ ማስገባትን በማስጀመር (በግራፍ (1) የተፈጠረ የፈተና መረጃ ጥቅም ላይ ይውላል)

የ Sber ሚዛን ሲኖርዎት. ኣብ ኢኒሺዮ ከቀፎ እና ግሪንፕለም ንጥቀም።

3) mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset - በግራፍ (10) የመነጨ አዲስ የተቀበሉትን መረጃዎች (ዴልታ) በ1 ትይዩ ክሮች በመጠቀም ሰንጠረዡን ለመጨመር በMDW የተፈጠረ ግራፍ

የ Sber ሚዛን ሲኖርዎት. ኣብ ኢኒሺዮ ከቀፎ እና ግሪንፕለም ንጥቀም።

ከታች ያለውን ስክሪፕት በNRT ሁነታ እናሂድ፡

  • 6 የሙከራ መስመሮችን ያመነጫሉ
  • የመጀመሪያ ጭነት 6 የሙከራ ረድፎችን ወደ ባዶ ጠረጴዛ አስገባ
  • ተጨማሪ ማውረድ 5 ጊዜ ይድገሙት
    • 6 የሙከራ መስመሮችን ያመነጫሉ
    • ተጨማሪ 6 የሙከራ ረድፎችን ወደ ሠንጠረዡ አስገባ (በዚህ አጋጣሚ የሚፈጀው_ለ_ሰዓት የሚያበቃበት ጊዜ ወደ አሮጌው ውሂብ ተቀናብሯል እና ተጨማሪ የቅርብ ጊዜ ውሂብ በተመሳሳይ ዋና ቁልፍ ገብቷል)

ይህ ሁኔታ የአንድ የተወሰነ የንግድ ስርዓት የእውነተኛ አሠራር ሁኔታን ይመስላል - በጣም ትልቅ የሆነ አዲስ መረጃ በእውነተኛ ጊዜ ይታያል እና ወዲያውኑ ወደ ግሪንፕለም ውስጥ ይፈስሳል።

አሁን የስክሪፕቱን መዝገብ እንመልከት፡-

Create_test_data.input.pset ጀምር 2020-06-04 11:49:11
በ2020-06-04 11:49:37 ላይ Create_test_data.input.pset ጨርስ
ጀምር mdw_load.day_one.current.dev42_1_db_usl_testing_subj_org_finval.pset በ2020-06-04 11:49:37
ጨርስ mdw_load.day_one.current.dev42_1_db_usl_testing_subj_org_finval.pset በ2020-06-04 11:50:42
Create_test_data.input.pset ጀምር 2020-06-04 11:50:42
በ2020-06-04 11:51:06 ላይ Create_test_data.input.pset ጨርስ
ጀምር mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset በ2020-06-04 11:51:06
ጨርስ mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset በ2020-06-04 11:53:41
Create_test_data.input.pset ጀምር 2020-06-04 11:53:41
በ2020-06-04 11:54:04 ላይ Create_test_data.input.pset ጨርስ
ጀምር mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset በ2020-06-04 11:54:04
ጨርስ mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset በ2020-06-04 11:56:51
Create_test_data.input.pset ጀምር 2020-06-04 11:56:51
በ2020-06-04 11:57:14 ላይ Create_test_data.input.pset ጨርስ
ጀምር mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset በ2020-06-04 11:57:14
ጨርስ mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset በ2020-06-04 11:59:55
Create_test_data.input.pset ጀምር 2020-06-04 11:59:55
በ2020-06-04 12:00:23 ላይ Create_test_data.input.pset ጨርስ
ጀምር mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset በ2020-06-04 12:00:23
ጨርስ mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset በ2020-06-04 12:03:23
Create_test_data.input.pset ጀምር 2020-06-04 12:03:23
በ2020-06-04 12:03:49 ላይ Create_test_data.input.pset ጨርስ
ጀምር mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset በ2020-06-04 12:03:49
ጨርስ mdw_load.regular.current.dev42_1_db_usl_testing_subj_org_finval.pset በ2020-06-04 12:06:46

ይህ ምስል ተለወጠ።

ግራፍ
የመጀመሪያ ሰዓት
ጊዜ ጨርስ
ርዝመት

የፈተና_ውሂብ.input.pset ይፍጠሩ
04.06.2020: 11: 49: 11
04.06.2020: 11: 49: 37
00:00:26

mdw_load.day_one.የአሁኑ።
dev42_1_db_usl_testing_subj_org_finval.pset
04.06.2020: 11: 49: 37
04.06.2020: 11: 50: 42
00:01:05

የፈተና_ውሂብ.input.pset ይፍጠሩ
04.06.2020: 11: 50: 42
04.06.2020: 11: 51: 06
00:00:24

mdw_load.መደበኛ.የአሁኑ።
dev42_1_db_usl_testing_subj_org_finval.pset
04.06.2020: 11: 51: 06
04.06.2020: 11: 53: 41
00:02:35

የፈተና_ውሂብ.input.pset ይፍጠሩ
04.06.2020: 11: 53: 41
04.06.2020: 11: 54: 04
00:00:23

mdw_load.መደበኛ.የአሁኑ።
dev42_1_db_usl_testing_subj_org_finval.pset
04.06.2020: 11: 54: 04
04.06.2020: 11: 56: 51
00:02:47

የፈተና_ውሂብ.input.pset ይፍጠሩ
04.06.2020: 11: 56: 51
04.06.2020: 11: 57: 14
00:00:23

mdw_load.መደበኛ.የአሁኑ።
dev42_1_db_usl_testing_subj_org_finval.pset
04.06.2020: 11: 57: 14
04.06.2020: 11: 59: 55
00:02:41

የፈተና_ውሂብ.input.pset ይፍጠሩ
04.06.2020: 11: 59: 55
04.06.2020: 12: 00: 23
00:00:28

mdw_load.መደበኛ.የአሁኑ።
dev42_1_db_usl_testing_subj_org_finval.pset
04.06.2020: 12: 00: 23
04.06.2020: 12: 03: 23
00:03:00

የፈተና_ውሂብ.input.pset ይፍጠሩ
04.06.2020: 12: 03: 23
04.06.2020: 12: 03: 49
00:00:26

mdw_load.መደበኛ.የአሁኑ።
dev42_1_db_usl_testing_subj_org_finval.pset
04.06.2020: 12: 03: 49
04.06.2020: 12: 06: 46
00:02:57

6 ጭማሪ መስመሮች በ000 ደቂቃ ውስጥ ሲሰሩ እናያለን ይህም በጣም ፈጣን ነው።
በዒላማው ሰንጠረዥ ውስጥ ያለው መረጃ እንደሚከተለው ተሰራጭቷል፡

select valid_from_ts, valid_to_ts, count(1), min(sk), max(sk) from dev42_1_db_usl.TESTING_SUBJ_org_finval group by valid_from_ts, valid_to_ts order by 1,2;

የ Sber ሚዛን ሲኖርዎት. ኣብ ኢኒሺዮ ከቀፎ እና ግሪንፕለም ንጥቀም።
የገባው ውሂብ ግራፎች ከተጀመሩበት ጊዜ ጋር ያለውን ግንኙነት ማየት ይችላሉ።
ይህ ማለት ተጨማሪ የመረጃ ጭነት ወደ ግሪንፕለም በአብ ኢንቲዮ ውስጥ በከፍተኛ ድግግሞሽ ማሄድ እና ይህንን መረጃ ወደ ግሪንፕላም ለማስገባት ከፍተኛ ፍጥነትን መከታተል ይችላሉ። እርግጥ ነው፣ በሴኮንድ አንድ ጊዜ ማስጀመር አይቻልም፣ ምክንያቱም አብ ኢንቲዮ፣ ልክ እንደ ማንኛውም የኢቲኤል መሳሪያ፣ ሲጀመር “ለመጀመር” ጊዜ ስለሚፈልግ ነው።

መደምደሚያ

Ab Initio በአሁኑ ጊዜ በ Sberbank ውስጥ የተዋሃደ የትርጉም ዳታ ንብርብር (ESS) ለመገንባት ጥቅም ላይ ይውላል። ይህ ፕሮጀክት የተለያዩ የባንክ የንግድ ተቋማትን ሁኔታ አንድ ወጥ የሆነ ሥሪት መገንባትን ያካትታል። መረጃ ከተለያዩ ምንጮች የተገኘ ሲሆን ግልባጮቹ በ Hadoop ላይ ተዘጋጅተዋል. በንግድ ፍላጎቶች ላይ በመመስረት የውሂብ ሞዴል ተዘጋጅቷል እና የውሂብ ለውጦች ተገልጸዋል. አብ ኢንቲዮ መረጃን ወደ ኢኤስኤን ይጭናል እና የወረደው መረጃ ለንግድ ስራው ፍላጎት ብቻ ሳይሆን ዳታ ማርቶችን ለመገንባትም እንደ ምንጭ ሆኖ ያገለግላል። በተመሳሳይ ጊዜ የምርቱ ተግባራዊነት የተለያዩ ስርዓቶችን እንደ ተቀባይ (ቀፎ ፣ ግሪንፕለም ፣ ቴራዳታ ፣ ኦራክል) እንዲጠቀሙ ይፈቅድልዎታል ፣ ይህም ለንግድ ሥራ በሚያስፈልጉት ቅርፀቶች በቀላሉ ለማዘጋጀት ያስችላል ።

የአብ ኢንቲዮ አቅም ሰፊ ነው፡ ለምሳሌ፡ የተካተተው የኤምዲደብሊው መዋቅር ቴክኒካል እና ቢዝነስ ታሪካዊ መረጃዎችን ከሳጥን ውስጥ ለመገንባት ያስችላል። ለገንቢዎች፣ Ab Initio መንኮራኩሩን እንደገና ላለመፍጠር፣ ነገር ግን ብዙ ነባር የተግባር ክፍሎችን ለመጠቀም ያስችላል፣ እነሱም ከውሂብ ጋር ሲሰሩ በመሰረቱ አስፈላጊ የሆኑ ቤተ-መጻሕፍት ናቸው።

ደራሲው በ Sberbank SberProfi DWH/BigData ሙያዊ ማህበረሰብ ውስጥ ባለሙያ ነው. የ SberProfi DWH/BigData ፕሮፌሽናል ማህበረሰብ እንደ ሃዱፕ ስነ-ምህዳር፣ ቴራዳታ፣ ኦራክል ዲቢ፣ ግሪንፕለም፣ እንዲሁም BI መሳሪያዎች Qlik፣ SAP BO፣ Tableau፣ ወዘተ ባሉ አካባቢዎች ብቃቶችን የማሳደግ ሃላፊነት አለበት።

ምንጭ: hab.com

አስተያየት ያክሉ