Otu anyị siri mebe isi nke azụmaahịa itinye ego nke Alfa-Bank dabere na Tarantool

Otu anyị siri mebe isi nke azụmaahịa itinye ego nke Alfa-Bank dabere na Tarantool
Site na ihe nkiri ahụ "Eluigwe na Ala nzuzo anyị: Ndụ zoro ezo nke cell"

Azụmahịa achụmnta ego bụ otu n'ime ebe kachasị mgbagwoju anya na ụwa ụlọ akụ, n'ihi na ọ bụghị naanị mbinye ego, nbinye na nkwụnye ego, kamakwa nchekwa, ego, ngwa ahịa, ihe mmepụta na ụdị mgbagwoju anya n'ụdị ngwaahịa ahaziri ahazi.

N'oge na-adịbeghị anya, anyị ahụwo mmụba na ọgụgụ isi ego nke ndị mmadụ. Ọtụtụ ndị mmadụ na-etinye aka n'ịzụ ahịa na ahịa nchekwa. Akaụntụ itinye ego n'otu n'otu pụtara n'oge adịghị anya gara aga. Ha na-enye gị ohere ịzụ ahịa ahịa nchekwa ma nweta mwepu ụtụ isi ma ọ bụ zere ịkwụ ụtụ isi. Na ndị ahịa niile na-abịakwute anyị chọrọ ijikwa pọtụfoliyo ha wee hụ ịkọ akụkọ ozugbo. Ọzọkwa, ọtụtụ mgbe Pọtụfoliyo a bụ ọtụtụ ngwaahịa, ya bụ, ndị mmadụ bụ ndị ahịa nke ahịrị azụmaahịa dị iche iche.

Na mgbakwunye, mkpa nke ndị na-achịkwa, ma ndị Russia na ndị mba ọzọ, na-eto eto.

Iji gboo mkpa dị ugbu a ma tọọ ntọala maka nkwalite n'ọdịnihu, anyị ewepụtala isi azụmaahịa azụmaahịa dabere na Tarantool.

Ụfọdụ ọnụ ọgụgụ. Azụmahịa itinye ego nke Alfa-Bank na-enye ọrụ ndị na-ere ahịa maka ndị mmadụ n'otu n'otu na ụlọ ọrụ iwu iji nye ohere ịzụ ahịa na ahịa nchekwa dị iche iche, ọrụ nkwụnye ego maka nchekwa nchekwa, ọrụ njikwa ntụkwasị obi maka ndị mmadụ n'otu n'otu nwere isi obodo na nke buru ibu, ọrụ maka ịnye nchekwa maka ụlọ ọrụ ndị ọzọ. . Azụmahịa itinye ego nke Alfa-Bank gụnyere ihe karịrị puku kwuru puku atọ kwa nkeji, nke a na-ebudata site na nyiwe azụmaahịa dị iche iche. N'ime ụbọchị ọrụ, a na-emechi ihe karịrị 3 puku azụmahịa na ahịa n'aha ụlọ akụ ma ọ bụ ndị ahịa ya. Ruo 300 puku iwu ogbugbu kwa nkeji na-eme na nyiwe mpụga na nke ime. N'otu oge ahụ, ndị ahịa niile, ma n'ime ma n'èzí, chọrọ ịhụ ọnọdụ ha ozugbo.

prehistory

Ebe site na mmalite nke 2000s, ebe anyị na-achụmnta ego achụmnta ego mepụtara onwe ha: mgbanwe trading, brokerage ọrụ, ego trading, n'elu-na-counter trading na ala na dị iche iche mmepụta. N'ihi ya, anyị adabawo n'ọnyà nke olulu mmiri na-arụ ọrụ. Kedu ihe ọ bụ? Ahịrị azụmaahịa ọ bụla nwere usoro nke ya nke na-emegharị ọrụ nke ọ bụla. Usoro ọ bụla nwere ụdị data nke ya, ọ bụ ezie na ha na-arụ ọrụ na otu echiche: azụmahịa, ngwá ọrụ, ndị mmekọ, okwu, na ihe ndị ọzọ. Na ka usoro nke ọ bụla si malite n'onwe ya, ụdị teknụzụ dị iche iche pụtara.

Na mgbakwunye, koodu isi nke sistemụ ahụ adịlarị nke ọma, n'ihi na ngwaahịa ụfọdụ sitere na etiti 1990s. Na mpaghara ụfọdụ nke a mere ka usoro mmepe ahụ kwụsịlata, enwerekwa nsogbu arụmọrụ.

Ihe ndị chọrọ maka ngwọta ọhụrụ

Azụmahịa achọpụtala na mgbanwe teknụzụ dị mkpa maka mmepe ọzọ. Enyere anyị ọrụ:

  1. Chịkọta data azụmaahịa niile n'otu ebe nchekwa ngwa ngwa yana n'otu ụdị data.
  2. Anyị agaghị atụfu ma ọ bụ gbanwee ozi a.
  3. Ọ dị mkpa ịmepụta data ahụ, n'ihi na n'oge ọ bụla onye nchịkwa nwere ike ịrịọ maka ọnụ ọgụgụ maka afọ ndị gara aga.
  4. Anyị agaghị eweta ụfọdụ DBMS ọhụrụ, mana mepụta ikpo okwu maka idozi nsogbu azụmahịa.

Na mgbakwunye, ndị na-ese ụkpụrụ ụlọ setịpụrụ ọnọdụ nke ha:

  1. Ihe ngwọta ọhụrụ ahụ ga-abụrịrị ụlọ ọrụ ụlọ ọrụ, ya bụ, a ga-anwalerịrị ya na ụfọdụ nnukwu ụlọ ọrụ.
  2. Ụdị ọrụ ngwọta kwesịrị ịdị oke mkpa. Nke a pụtara na anyị ga-anọrịrị n'ọtụtụ ebe data n'otu oge wee jiri nwayọ lanarị mpụ nke otu ebe data.
  3. Sistemu ahụ ga-adịrịrị n'ụzọ kwụ ọtọ. Nke bụ eziokwu bụ na sistemụ anyị niile dị ugbu a bụ naanị kwụ ọtọ, ma anyị na-akụrị elu ụlọ n'ihi obere uto nke ike ngwaike. Ya mere, oge abịala mgbe anyị kwesịrị inwe sistemu nwere ike ịlanarị iji dị ndụ.
  4. Tinyere ihe ndị ọzọ, a gwara anyị na ngwọta kwesịrị ịdị ọnụ ala.

Anyị gbasoro ụzọ ọkọlọtọ: anyị mepụtara ihe ndị a chọrọ ma kpọtụrụ ngalaba ịzụrụ ihe. Site n'ebe ahụ anyị nwetara ndepụta nke ụlọ ọrụ ndị, n'ozuzu, dị njikere imere anyị nke a. Anyị gwara onye ọ bụla banyere nsogbu ahụ, ma nweta nyocha nke ngwọta site na isii n'ime ha.

N'ụlọ akụ, anyị anaghị ewere okwu onye ọ bụla maka ya; anyị na-achọ ịnwale ihe niile n'onwe anyị. Ya mere, ọnọdụ amanyere iwu nke asọmpi obi anyị bụ ịgafe ule ibu. Anyị chepụtara ọrụ nnwale ibu, na atọ n'ime ụlọ ọrụ isii ekwenyelarị imejuputa ihe ngwọta prototype dabere na teknụzụ ebe nchekwa na ego nke aka ha iji nwalee ya.

Agaghị m agwa gị otu anyị si nwalee ihe niile na ogologo oge ọ were, m ga-achikota: arụmọrụ kacha mma na ule ibu gosipụtara site na ihe ngwọta prototype dabere na Tarantool sitere na otu mmepe otu Mail.ru Group. Anyị bịanyere aka n'akwụkwọ nkwekọrịta wee malite mmepe. Enwere mmadụ anọ sitere na Mail.ru Group, na site na Alfa-Bank enwere ndị mmepe atọ, ndị nyocha usoro atọ, onye na-ese ihe ngwọta, onye nwe ngwaahịa na onye isi Scrum.

Ọzọ, m ga-agwa gị banyere otú usoro anyị si eto, otú o si malite, ihe anyị mere na ihe mere kpọmkwem nke a.

Mmepe

Ajụjụ mbụ anyị jụrụ onwe anyị bụ ka anyị ga-esi nweta data sitere na sistemụ anyị ugbu a. Anyị kpebiri na HTTP dabara anyị nke ọma, n'ihi na sistemụ niile dị ugbu a na-ekwurịta okwu site na izipu XML ma ọ bụ JSON karịa HTTP.

Anyị na-eji ihe nkesa HTTP wuru n'ime Tarantool n'ihi na anyị adịghị mkpa ịkwụsị oge SSL, na arụmọrụ ya ezuola anyị.

Dị ka m kwuru na mbụ, usoro anyị niile na-ebi n'ụdị data dị iche iche, na ntinye anyị kwesịrị iweta ihe ahụ na ihe nlereanya anyị na-akọwa onwe anyị. A chọrọ asụsụ nke kwere ka agbanwe data. Anyị họọrọ Lua dị mkpa. Anyị na-agba koodu ntụgharị data niile n'ime igbe ájá - nke a bụ ebe nchekwa karịa nke koodu ịgba ọsọ na-agaghị aga. Iji mee nke a, anyị na-ebu naanị koodu achọrọ, na-ekepụta gburugburu nwere ọrụ na-enweghị ike igbochi ma ọ bụ dobe ihe ọ bụla.

Otu anyị siri mebe isi nke azụmaahịa itinye ego nke Alfa-Bank dabere na Tarantool
Mgbe ntụgharị gasịrị, a ga-enyocha data maka nnabata na ụdị anyị na-eke. Anyị tụlere ogologo oge ihe nlereanya kwesịrị ịbụ na asụsụ anyị ga-eji kọwaa ya. Anyị họọrọ Apache Avro n'ihi na asụsụ ahụ dị mfe ma nwee nkwado sitere na Tarantool. Enwere ike itinye ụdị ọhụrụ nke ụdị na koodu omenala n'ọrụ ọtụtụ ugboro n'ụbọchị, ọbụlagodi n'okpuru ibu ma ọ bụ na-enweghị, n'oge ọ bụla n'ụbọchị, na ime mgbanwe na mgbanwe ngwa ngwa.

Otu anyị siri mebe isi nke azụmaahịa itinye ego nke Alfa-Bank dabere na Tarantool
Mgbe nkwenye gasịrị, a ga-echekwa data ahụ. Anyị na-eme nke a site na iji vshard (anyị nwere ụdị nke shards gbasasịrị agbasa).

Otu anyị siri mebe isi nke azụmaahịa itinye ego nke Alfa-Bank dabere na Tarantool
Ọzọkwa, nkọwapụta bụ na ọtụtụ sistemụ na-ezigara anyị data anaghị eche ma anyị nwetara ya ma ọ bụ na anyị enwetaghị ya. Ọ bụ ya mere anyị ji tinye n'ahịrị nrụzi site na mmalite. Kedu ihe ọ bụ? Ọ bụrụ na n'ihi ihe ụfọdụ, ihe anaghị enweta mgbanwe data ma ọ bụ nkwenye, anyị ka na-akwado nnata, ma n'otu oge ahụ chekwaa ihe ahụ n'ahịrị nrụzi. Ọ na-agbanwe agbanwe ma dị na ụlọ nkwakọba ihe data azụmahịa bụ isi. Anyị degaara ya ozugbo interface nchịkwa, metrics na alerts dị iche iche. N'ihi ya, anyị anaghị atụfu data. Ọbụna ma ọ bụrụ na ihe gbanwere na isi iyi, ọ bụrụ na ụdị data agbanweela, anyị ga-achọpụta ozugbo ma nwee ike imeghari.

Otu anyị siri mebe isi nke azụmaahịa itinye ego nke Alfa-Bank dabere na Tarantool
Ugbu a ịkwesịrị ịmụ ka esi eweghachi data echekwara. Anyị ji nlezianya nyochaa usoro anyị wee hụ na nchịkọta Java na Oracle kpochapụrụ nwere ụdị ORM nke na-agbanwe data site na njikọ na ihe. Ya mere, gịnị kpatara na ị gaghị enye ngwa ngwa ngwa ngwa na usoro n'ụdị eserese? Ya mere, anyị ji obi ụtọ nakwere GraphQL, nke gbochiri mkpa anyị niile. Ọ na-enye gị ohere ịnweta data n'ụdị eserese wee wepụta naanị ihe ịchọrọ ugbu a. Ị nwere ike ọbụna mbipụta API site na iji ọtụtụ mgbanwe.

Otu anyị siri mebe isi nke azụmaahịa itinye ego nke Alfa-Bank dabere na Tarantool
Ihe fọrọ nke nta ka ọ bụrụ ozugbo anyị chọpụtara na data anyị na-ewepụta ezughị. Anyị kere ọrụ ndị nwere ike jikọọ na ihe dị na ihe nlereanya - n'ezie, gbakọọ ubi. Ya bụ, anyị na-etinye ụfọdụ ọrụ na ubi, nke, dịka ọmụmaatụ, na-agbakọ ọnụ ahịa ọnụahịa. Na ndị na-azụ ahịa dị n'èzí nke na-arịọ data ahụ amaghịdị na nke a bụ ubi gbakọrọ.

Otu anyị siri mebe isi nke azụmaahịa itinye ego nke Alfa-Bank dabere na Tarantool
Tinyere usoro nyocha.

Otu anyị siri mebe isi nke azụmaahịa itinye ego nke Alfa-Bank dabere na Tarantool
Mgbe ahụ, anyị chọpụtara na ọrụ dị iche iche pụtara ná mkpebi anyị. Ọrụ bụ ụdị nchịkọta ọrụ. Dịka, ọrụ nwere profaịlụ ojiji akụrụngwa dị iche iche:

  • T-Jikọọ: na-ejikwa njikọ mbata, oke CPU, obere ebe nchekwa oriri, enweghị obodo.
  • IB-Core: na-agbanwe data ọ na-enweta site na protocol Tarantool, ya bụ, ọ na-arụ ọrụ na tebụl. Ọ naghị echekwa steeti ma nwee ike ịbelata.
  • Nchekwa: naanị na-echekwa data, anaghị eji mgbagha ọ bụla. Nke a na-arụ ọrụ mejuputa mfe interfaces. Ekele dịrị vshard.

Otu anyị siri mebe isi nke azụmaahịa itinye ego nke Alfa-Bank dabere na Tarantool
Ya bụ, n'iji ọrụ, anyị na-ekekọta akụkụ dị iche iche nke ụyọkọ ahụ n'otu n'otu, nke nwere ike ịgbatị n'adabereghị onwe ya.

Yabụ, anyị ekepụtala ndekọ ọsọ data azụmahịa asynchronous yana kwụ n'ahịrị nrụzi nwere interface nchịkwa. Ndekọ a na-emekọ ihe site na echiche azụmahịa: ọ bụrụ na anyị na-ekwe nkwa ịdere onwe anyị data, n'agbanyeghị ebe, mgbe ahụ anyị ga-akwado ya. Ọ bụrụ na akwadoghị ya, mgbe ahụ ihe na-aga nke ọma na ekwesịrị iziga data ahụ. Nke a bụ ndekọ asynchronous.

Ule

Site na mmalite nke oru ngo a, anyị kpebiri na anyị ga-agba mbọ mejuputa mmepe ule. Anyị na-eji usoro tarantool/tap na-ede ule otu na Lua, yana ule ntinye na Python na-eji usoro pytest. N'otu oge ahụ, anyị na-etinye ma ndị mmepe na ndị nyocha na nyocha ntinye akwụkwọ.

Kedu otu anyị si eji mmepe achụmnta ego?

Ọ bụrụ na anyị chọrọ ụfọdụ atụmatụ ọhụrụ, anyị na-agbalị ka anyị buru ụzọ dee ule maka ya. Mgbe anyị chọpụtara ahụhụ, anyị na-ahụ na anyị ga-ebu ụzọ dee ule, na-edozi ya. Na mbụ ọ na-esiri ike ịrụ ọrụ dị otú a, enwere nghọtahie n'akụkụ ndị ọrụ, ọbụna mmebi: "Ka anyị dozie ya ngwa ngwa ugbu a, mee ihe ọhụrụ, wee kpuchie ya na ule." Naanị nke a "emechaa" ọ fọrọ nke nta ka ọ ghara ịbịa.

Ya mere, ịkwesịrị ịmanye onwe gị ka ị buru ụzọ dee ule wee rịọ ndị ọzọ ka ha mee ya. Kwere m, nwale chụpụrụ mmepe na-eweta abamuru ọbụlagodi na obere oge. Ị ga-eche na ndụ gị adịlarị mfe. Anyị na-eche na 99% nke koodu a na-ekpuchi ugbu a site na ule. Nke a dị ka ọtụtụ, mana anyị enweghị nsogbu ọ bụla: ule na-agba ọsọ na nkwa ọ bụla.

Agbanyeghị, ihe kacha amasị anyị bụ ịnwale ibu; anyị na-ewere ya dị ka ihe kacha mkpa ma na-eme ya mgbe niile.

M ga-agwa gị obere akụkọ banyere otú anyị rụrụ na mbụ ogbo nke ibu ule nke otu n'ime mbụ nsụgharị. Anyị na-etinye usoro ahụ na laptọọpụ onye mmepụta, gbanye ibu ma nweta 4 puku azụmahịa kwa nkeji. Nsonaazụ dị mma maka laptọọpụ. Anyị wụnye ya na bench nke sava anọ, adịghị ike karịa na mmepụta. Ebugara na opekempe. Anyị na-agba ya, anyị na-enwetakwa nsonaazụ dị njọ karịa na laptọọpụ na otu eri. Ọdịnaya ujo.

O wutere anyị nke ukwuu. Anyị na-elele ibu nkesa, mana ọ na-apụta na ha anaghị arụ ọrụ.

Otu anyị siri mebe isi nke azụmaahịa itinye ego nke Alfa-Bank dabere na Tarantool
Anyị na-akpọ ndị mmepe, ha na-akọwara anyị, ndị si na ụwa Java, na Tarantool bụ otu eriri. Enwere ike iji ya rụọ ọrụ nke ọma site na otu isi ihe nrụpụta n'okpuru ibu. Mgbe ahụ, anyị wepụrụ ọnụ ọgụgụ Tarantool kachasị elu na nkesa ọ bụla, gbanye ibu ma nwetalarị 14,5 puku azụmahịa kwa nkeji.

Otu anyị siri mebe isi nke azụmaahịa itinye ego nke Alfa-Bank dabere na Tarantool
Ka m kọwaara ya ọzọ. N'ihi nkewa n'ime ọrụ na-eji akụrụngwa dị iche iche, ọrụ anyị na-ahụ maka nhazi njikọ na mgbanwe data na-ebu naanị ihe nrụpụta, yana nha nha nha nha.

Otu anyị siri mebe isi nke azụmaahịa itinye ego nke Alfa-Bank dabere na Tarantool
Otu anyị siri mebe isi nke azụmaahịa itinye ego nke Alfa-Bank dabere na Tarantool
N'okwu a, a na-eji ebe nchekwa naanị maka nhazi njikọ na-abata na ihe nwa oge.

Otu anyị siri mebe isi nke azụmaahịa itinye ego nke Alfa-Bank dabere na Tarantool
N'ụzọ megidere nke ahụ, na sava nchekwa, ibu ihe nrụpụta na-abawanye, mana ọ dị nwayọ karịa na sava ndị na-ahazi njikọ.

Otu anyị siri mebe isi nke azụmaahịa itinye ego nke Alfa-Bank dabere na Tarantool
Na oriri ebe nchekwa tolitere n'ụzọ ziri ezi na ọnụọgụ data eburu.

Otu anyị siri mebe isi nke azụmaahịa itinye ego nke Alfa-Bank dabere na Tarantool

Services

Iji mepụta ngwaahịa ọhụrụ anyị kpọmkwem dị ka ikpo okwu ngwa, anyị mepụtara akụrụngwa maka ibuga ọrụ na ọba akwụkwọ na ya.

Ọrụ abụghị naanị obere mpempe koodu na-arụ ọrụ na mpaghara ụfọdụ. Ha nwere ike ịbụ nnukwu ụlọ dị mgbagwoju anya nke bụ akụkụ nke ụyọkọ, lelee data ntụnye aka, na-eme mgbagha azụmahịa na nzaghachi nzaghachi. Anyị na-ebupụ atụmatụ ọrụ ahụ na GraphQL, ndị na-azụ ahịa na-enwetakwa ohere ịnweta data zuru ụwa ọnụ, yana nleba anya n'ofe ụdị ahụ dum. Ọ dị mma nke ukwuu.

Ebe ọ bụ na ọrụ nwere ọtụtụ ọrụ ndị ọzọ, anyị kpebiri na ekwesịrị inwe ụlọ akwụkwọ ebe anyị ga-ebugharị koodu ndị a na-ejikarị eme ihe. Anyị gbakwunyere ha na gburugburu ebe nchekwa, ebe anyị nyochaburu na ọ naghị agbaji anyị ihe ọ bụla. Ma ugbu a, anyị nwere ike kenye mgbakwunye gburugburu ka ọ rụọ ọrụ n'ụdị ọba akwụkwọ.

Anyị chọrọ inwe ikpo okwu ọ bụghị naanị maka nchekwa, kamakwa maka ịgbakọ. Ma ebe ọ bụ na anyị enweelarị ụyọkọ nke replicas na shards, anyị na-emejuputa ụdị nkesa mgbakọ na mwepụ na-akpọ ya map belata, n'ihi na ọ tụgharịrị yiri nke mbụ map belata.

Usoro ochie

Ọ bụghị usoro ihe nketa anyị niile nwere ike ịkpọ anyị HTTP wee jiri GraphQL, n'agbanyeghị na ha na-akwado protocol. Ya mere, anyị mepụtara usoro nke na-enye ohere ịmegharị data n'ime usoro ndị a.

Otu anyị siri mebe isi nke azụmaahịa itinye ego nke Alfa-Bank dabere na Tarantool
Ọ bụrụ na ihe gbanwere maka anyị, a na-ebute ihe na-akpali akpali pụrụ iche na ọrụ Nchekwa na ozi na mgbanwe ahụ na-ejedebe na nhazi nhazi. A na-ezigara ya na sistemu mpụga site na iji ọrụ mmegharị dị iche. Ọrụ a anaghị echekwa steeti.

Nkwalite ọhụrụ

Dị ka ị na-echeta, site na echiche azụmahịa, anyị mere ndekọ asynchronous. Ma mgbe ahụ, ha ghọtara na ọ gaghị ezuru, n'ihi na e nwere otu klas nke usoro nke kwesịrị ịnweta nzaghachi ozugbo banyere ọnọdụ nke ọrụ ahụ. Ya mere, anyị gbatịpụrụ GraphQL anyị ma tinye ngbanwe. Ha dabara n'ụzọ nkịtị n'ime usoro dị adị nke ịrụ ọrụ na data. Maka anyị, nke a bụ otu isi ihe na-agụ ma na-ede maka klas ọzọ nke usoro.

Otu anyị siri mebe isi nke azụmaahịa itinye ego nke Alfa-Bank dabere na Tarantool
Anyị chọpụtakwara na naanị ọrụ agaghị ezuru anyị, n'ihi na enwere akụkọ dị arọ nke kwesịrị ịrụ otu ugboro n'ụbọchị, n'izu, n'ọnwa. Nke a nwere ike iwe ogologo oge, na akụkọ nwere ike igbochi loop mmemme Tarantool. Ya mere, anyị mepụtara ọrụ dị iche iche: nhazi na onye na-agba ọsọ. Ndị na-agba ọsọ anaghị echekwa steeti. Ha na-arụ nnukwu ọrụ ndị anyị na-enweghị ike ịgbakọ na ofufe. Na ọrụ nhazi oge na-enyocha usoro mmalite nke ọrụ ndị a, nke a kọwara na nhazi. A na-echekwa ọrụ ndị ahụ n'onwe ha n'otu ebe dị ka data azụmahịa. Mgbe oge kwesịrị ekwesị bịara, onye nhazi oge na-arụ ọrụ ahụ, nye ya ụfọdụ ndị na-agba ọsọ, na-agụta ya ma chekwaa nsonaazụ ya.

Otu anyị siri mebe isi nke azụmaahịa itinye ego nke Alfa-Bank dabere na Tarantool
Ọ bụghị ọrụ niile ka a ga-arụ na nhazi oge. Ekwesịrị ịgụ akụkọ ụfọdụ na-achọrọ. Ozugbo ihe a chọrọ, a na-emepụta ọrụ na igbe ájá ma zigara onye na-agba ọsọ maka igbu ya. Mgbe oge ụfọdụ gasịrị, onye ọrụ na-enweta nzaghachi asynchronous na agbakọla ihe niile na akụkọ ahụ adịla njikere.

Otu anyị siri mebe isi nke azụmaahịa itinye ego nke Alfa-Bank dabere na Tarantool
Na mbụ, anyị na-agbaso ụkpụrụ nke ịchekwa data niile, mbipute ya ma ghara ihichapụ ya. Mana na ndụ, site n'oge ruo n'oge, ị ka ga-ehichapụ ihe, ọkachasị ụfọdụ ozi adịchaghị ma ọ bụ nke etiti. Dabere na kubie ume, anyị mepụtara usoro maka ihicha nchekwa site na data emechiela.

Otu anyị siri mebe isi nke azụmaahịa itinye ego nke Alfa-Bank dabere na Tarantool
Anyị na-aghọtakwa na n'oge na-adịghị anya, ọnọdụ ga-abịa mgbe a na-agaghị enwe ohere zuru ezu iji chekwaa data na ebe nchekwa, ma ka o sina dị, a ghaghị ịchekwa data ahụ. Maka ebumnuche ndị a, n'oge na-adịghị anya anyị ga-eme nchekwa diski.

Otu anyị siri mebe isi nke azụmaahịa itinye ego nke Alfa-Bank dabere na Tarantool

nkwubi

Anyị malitere site n'ọrụ nke itinye data n'ime otu ụdị ma nọrọ ọnwa atọ na-emepụta ya. Anyị nwere sistemụ ịnye data isii. Koodu mgbanwe niile n'ime otu ụdị dị ihe dị ka ahịrị puku 30 na Lua. Ọtụtụ ọrụ ka dịkwa n'ihu. Mgbe ụfọdụ enwere enweghị mkpali sitere na otu ndị agbata obi, na enwere ọtụtụ ọnọdụ na-eme ka ọrụ ahụ sie ike. Ọ bụrụ na otu ọrụ yiri nke ahụ chere gị ihu, were ugboro atọ ma ọ bụ ọbụna anọ mụbaa oge dị gị mma maka mmejuputa ya.

Chetakwa na nsogbu ndị dị na usoro azụmahịa enweghị ike idozi site na iji DBMS ọhụrụ, ọbụlagodi nke na-arụpụta nke ọma. Gịnị ka m pụtara? Ná mmalite nke ọrụ anyị, anyị mepụtara echiche n'etiti ndị ahịa na ugbu a, anyị ga-eweta nchekwa data ngwa ngwa ọhụrụ na anyị ga-adị ndụ! Usoro ga-aga ngwa ngwa, ihe niile ga-adị mma. N'ezie, nkà na ụzụ adịghị edozi nsogbu nke usoro azụmahịa nwere, n'ihi na usoro azụmahịa bụ ndị mmadụ. Na mkpa ka gị na ndị mmadụ na-arụkọ ọrụ, ọ bụghị nkà na ụzụ.

Mmepe a nwalere na-akpata nwere ike na-egbu mgbu ma na-ewe oge n'oge mmalite. Ma mmetụta dị mma nke ya ga-apụta ìhè ọbụna n'oge dị mkpirikpi, mgbe ọ dịghị mkpa ka ị mee ihe ọ bụla iji mee nyocha nlọghachi.

Ọ dị oke mkpa ịme nnwale ibu na ọkwa niile nke mmepe. Ngwa ngwa ị ga-ahụ ntụpọ ụfọdụ n'ime ihe owuwu ahụ, ọ ga-adị mfe idozi ya, nke ga-azọpụta gị oge dị ukwuu n'ọdịnihu.

Ọ dịghị ihe ọjọọ na Lua. Onye ọ bụla nwere ike ịmụta ide na ya: onye nrụpụta Java, onye nrụpụta Javascript, onye nrụpụta Python, n'ihu ma ọ bụ azụ azụ. Ọbụna ndị nyocha anyị na-ede na ya.

Mgbe anyị na-ekwu maka eziokwu ahụ bụ na anyị enweghị SQL, ọ na-atụ ndị mmadụ ụjọ. "Kedu ka ị ga-esi nweta data na-enweghị SQL? Nke ahụ ọ ga-ekwe omume? N'ezie. Na sistemụ klas OLTP, SQL adịghị mkpa. Enwere ụzọ ọzọ n'ụdị ụdị asụsụ nke na-eweghachi gị ozugbo na nlele dabere na akwụkwọ. Dịka ọmụmaatụ, GraphQL. Na e nwere ihe ọzọ n'ụdị nkesa kọmputa.

Ọ bụrụ n’ịghọta na ị ga-achọ nha, wee chepụta ihe ngwọta gị na Tarantool n'ụzọ ọ ga-esi na-agba ọsọ n'otu oge n'ọtụtụ oge Tarantool. Ọ bụrụ na ịmeghị nke a, ọ ga-esi ike ma na-egbu mgbu ma emechaa, ebe Tarantool nwere ike iji naanị otu isi processor rụọ ọrụ nke ọma.

isi: www.habr.com

Tinye a comment