Sber.DS bụ ikpo okwu na-enye gị ohere ịmepụta na mejuputa ụdị ọbụna na-enweghị koodu

Echiche na nzụkọ gbasara usoro ndị ọzọ nwere ike ime na-akpaghị aka na-ebilite na azụmahịa nke nha dị iche iche kwa ụbọchị. Ma na mgbakwunye na eziokwu ahụ bụ na a ga-eji oge dị ukwuu na-emepụta ihe nlereanya, ịkwesịrị iji ya na-enyocha ya na ịlele na nsonaazụ enwetara abụghị ihe efu. Mgbe emechara ya, a ga-enyocharịrị ụdị ọ bụla ma lelee ya kwa oge.

Ma ndị a bụ ọkwa niile dị mkpa ka emechaa na ụlọ ọrụ ọ bụla, n'agbanyeghị nha ya. Ọ bụrụ na anyị na-ekwu maka ọnụ ọgụgụ na ihe nketa nke Sberbank, ọnụ ọgụgụ nke mma-n'iji ya gee ntị na-abawanye nke ukwuu. Na njedebe nke 2019, Sber ejirila ihe karịrị ụdị 2000. O zughị naanị imepụta ihe nlere; ọ dị mkpa ijikọ na sistemu ụlọ ọrụ mmepụta ihe, mepụta marts data maka ụdị ụlọ, wee hụ na njikwa ọrụ ya na ụyọkọ ahụ.

Sber.DS bụ ikpo okwu na-enye gị ohere ịmepụta na mejuputa ụdị ọbụna na-enweghị koodu

Ndị otu anyị na-emepụta ikpo okwu Sber.DS. Ọ na-enye gị ohere iji dozie nsogbu mmụta igwe, na-eme ka usoro nyocha echiche dị ngwa, na ụkpụrụ na-eme ka usoro ịmepụta na ịkwado ụdị dị mfe, ma na-achịkwa nsonaazụ nke ihe nlereanya na PROM.

Ka ị ghara ịghọgbu atụmanya gị, achọrọ m ikwu tupu oge eruo na post a bụ ihe mmeghe, na n'okpuru ịkpụ, maka mmalite, anyị na-ekwu maka ihe, ụkpụrụ, dị n'okpuru mkpuchi nke ikpo okwu Sber.DS. Anyị ga-akọ akụkọ banyere usoro ndụ ndụ nke ihe nlereanya site na okike na mmejuputa iche iche.

Sber.DS nwere ọtụtụ akụkụ, ndị isi bụ ọbá akwụkwọ, usoro mmepe na usoro igbu ihe nlereanya.

Sber.DS bụ ikpo okwu na-enye gị ohere ịmepụta na mejuputa ụdị ọbụna na-enweghị koodu

Ọbá akwụkwọ na-achịkwa usoro ndụ nke ihe nlereanya ahụ site na oge echiche ịzụlite ya na-egosi ruo mgbe mmejuputa ya na PROM, nlekota na nkwụsị. Ọtụtụ ikike ọbá akwụkwọ na-ekpebi site n'iwu ndị na-achịkwa, dịka ọmụmaatụ, ịkọ akụkọ na nchekwa nke ọzụzụ na nlele nlele. N'ezie, nke a bụ ndekọ nke ụdị anyị niile.

Emebere usoro mmepe maka mmepe anya nke ụdị na usoro nkwenye. Ụdị ndị emepụtara na-enweta nkwado mbụ ma na-enye ya na usoro igbu egbu iji rụọ ọrụ azụmahịa ha. Ọzọkwa, na usoro ịgba ọsọ, enwere ike itinye ihe nlereanya ahụ na nyocha maka ebumnuche nke ịmalite usoro nkwado oge ụfọdụ iji nyochaa ọrụ ya.

Enwere ọtụtụ ụdị ọnụ na sistemụ. Emebere ụfọdụ iji jikọọ na isi mmalite data dị iche iche, ndị ọzọ emebere iji gbanwee data isi mmalite wee mee ka ya baa ụba (akara akara). Enwere ọtụtụ ọnụ maka iwulite ụdị dị iche iche na ọnụ maka ịkwado ha. Onye nrụpụta nwere ike ibunye data site na isi mmalite ọ bụla, gbanwee, nzacha, chepụta data etiti, wee kewaa ya n'ime akụkụ.

Ikpo okwu nwekwara modul emebere nke enwere ike ịdọrọ ma tụba na mpaghara imewe. A na-eme ihe niile site na iji interface anya. N'ezie, ị nwere ike dozie nsogbu ahụ na-enweghị otu akara koodu.

Ọ bụrụ na ike arụnyere ezughị ezu, usoro ahụ na-enye ike ịmepụta ngwa ngwa nke gị modul. Anyị mere ọnọdụ mmepe agbakwunyere dabere na Ọnụ ụzọ ámá Jupyter kernel maka ndị na-emepụta modul ọhụrụ site na ọkọ.

Sber.DS bụ ikpo okwu na-enye gị ohere ịmepụta na mejuputa ụdị ọbụna na-enweghị koodu

A na-ewu ụlọ nke Sber.DS na microservices. Enwere ọtụtụ echiche gbasara ihe microservices bụ. Ụfọdụ ndị na-eche na ọ bụ iji kewaa monolithic koodu n'ime akụkụ, ma n'otu oge ahụ ha ka na-aga otu nchekwa data. Microservice anyị ga-ejirịrị REST API nwee mkparịta ụka na microservice ọzọ. Enweghị ihe mgbochi iji nweta nchekwa data ozugbo.

Anyị na-agbalị ịhụ na ọrụ adịghị ibu nke ukwuu na mgbagwoju anya: otu ihe atụ ekwesịghị iri ihe karịrị 4-8 gigabytes nke RAM na ga-enye ikike nke horizontally ọnụ ọgụgụ nke arịrịọ site malite ọhụrụ ikpe. Ọrụ ọ bụla na-agwa ndị ọzọ okwu naanị site na REST API (Mepee API). Achọrọ otu ndị na-ahụ maka ọrụ ahụ ka API dakọtara azụ azụ ruo mgbe onye ahịa ikpeazụ na-eji ya.

Edere isi ngwa a na Java site na iji Framework Spring. Emebere ihe ngwọta ahụ na mbụ maka ntinye ngwa ngwa na akụrụngwa igwe ojii, ya mere e ji wuo ngwa ahụ site na iji usoro ntinye ihe Uhie okpu OpenShift (Kubernetes). Ikpo okwu na-agbanwe mgbe niile, ma n'ihe gbasara ịba ụba ọrụ azụmahịa (njikọ ọhụrụ, AutoML na-agbakwunye) na n'ihe gbasara nkà na ụzụ.

Otu n'ime njirimara nke ikpo okwu anyị bụ na anyị nwere ike ịgba ọsọ koodu mepụtara na interface visual na usoro igbu ihe nlereanya Sberbank ọ bụla. Ugbu a enwerelarị abụọ n'ime ha: otu na Hadoop, nke ọzọ na OpenShift (Docker). Anyị anaghị akwụsị ebe ahụ ma mepụta modul mbanye iji mee koodu na akụrụngwa ọ bụla, gụnyere n'ime ụlọ na igwe ojii. Banyere ohere nke ntinye dị irè n'ime gburugburu ebe obibi nke Sberbank, anyị na-eme atụmatụ ịkwado ọrụ na gburugburu ebe mkpochapụ dị ugbu a. N'ọdịnihu, a ga-ejikọta ihe ngwọta ahụ n'ụzọ na-agbanwe agbanwe "site na igbe" na mpaghara ọ bụla nke nzukọ ọ bụla.

Ndị gbalịrị ịkwado ihe ngwọta nke na-agba ọsọ Python na Hadoop na PROM maara na ezughị ezu iji kwadebe ma nyefee ebe ọrụ Python na datanode ọ bụla. Ọnụ ọgụgụ buru ibu nke ụlọ akwụkwọ C/C++ maka mmụta igwe na-eji modul Python agaghị ekwe ka ị zuru ike. Anyị ga-echeta imelite ngwungwu mgbe ị na-agbakwunye ọba akwụkwọ ọhụrụ ma ọ bụ sava, ka anyị na-ejigide ndakọrịta azụ na koodu ụdị emejuputalarị.

Enwere ụzọ dị iche iche isi mee nke a. Dịka ọmụmaatụ, kwadebe ọtụtụ ọba akwụkwọ ndị a na-ejikarị eme ihe tupu oge eruo ma mejuputa ha na PROM. Na nkesa Cloudera's Hadoop, ha na-ejikarị ngwugwu. Ọzọkwa ugbu a na Hadoop ọ ga-ekwe omume ịgba ọsọ docker-akpa. N'ọnọdụ ụfọdụ dị mfe ọ ga-ekwe omume ịnye koodu yana ngwugwu python.àkwá.

Ụlọ akụ ahụ na-eji nchekwa nke ịgba ọsọ koodu ndị ọzọ kpọrọ ihe, n'ihi ya, anyị na-eji ọtụtụ njirimara ọhụrụ nke Linux kernel, ebe usoro na-agba ọsọ na gburugburu ebe dịpụrụ adịpụ. Oghere aha Linux, ị nwere ike igbochi, dịka ọmụmaatụ, ịnweta netwọk na diski mpaghara, nke na-ebelata ike nke koodu ọjọọ. A na-echekwa mpaghara data nke ngalaba ọ bụla ma nweta naanị ndị nwe data a. Ikpo okwu na-eme ka o doo anya na data sitere n'otu mpaghara nwere ike iru mpaghara ọzọ naanị site na usoro mbipụta data na njikwa na ọkwa niile site na ịnweta isi mmalite ruo ọdịda data n'ihu ụlọ ahịa.

Sber.DS bụ ikpo okwu na-enye gị ohere ịmepụta na mejuputa ụdị ọbụna na-enweghị koodu

N'afọ a, anyị na-eme atụmatụ imecha MVP nke ụdị mmalite nke edere na Python/R/Java na Hadoop. Anyị etinyela onwe anyị nnukwu ọrụ nke ịmụ ka esi agba ọsọ gburugburu ebe obibi omenala na Hadoop, ka anyị ghara igbochi ndị ọrụ nke ikpo okwu anyị n'ụzọ ọ bụla.

Na mgbakwunye, dị ka ọ tụgharịrị, ọtụtụ ndị ọkachamara DS bụ ndị magburu onwe ha na mgbakọ na mwepụ na ọnụ ọgụgụ, na-eme ka ụdị dị mma, ma ha amaghị nke ọma na mgbanwe mgbanwe data buru ibu, ha chọrọ enyemaka nke ndị injinia data anyị iji kwadebe nlele ọzụzụ. Anyị kpebiri inyere ndị ọrụ ibe anyị aka ma mepụta modul dị mma maka mgbanwe ọkọlọtọ na nkwadebe nke atụmatụ maka ụdị na Spark engine. Nke a ga-enye gị ohere itinyekwu oge n'ichepụta ụdị ma ghara ichere ka ndị injinia data dozie ihe ọhụrụ dataset.

Anyị na-ewe ndị nwere ihe ọmụma n'ọrụ na mpaghara dị iche iche: Linux na DevOps, Hadoop na Spark, Java na Spring, Scala na Akka, OpenShift na Kubernetes. Oge ọzọ anyị ga-ekwu maka ọbá akwụkwọ ihe nlereanya, otú ihe nlereanya ahụ si agafe usoro ndụ n'ime ụlọ ọrụ ahụ, otú nkwenye na mmejuputa iwu si eme.

isi: www.habr.com

Tinye a comment