Yandex mepere koodu nke DBMS YDB ekesa na-akwado SQL

Yandex ebipụtala ederede isi mmalite nke YDB DBMS kesara, nke na-akwado nkwado maka olumba SQL na azụmahịa ACID. Emepụtara DBMS site na ọkọ ma jiri anya mepụta ya na mbụ iji hụ na nnagide mmejọ, mgbake na-akpaghị aka ma ọ bụrụ na ọdịda na scalability. Achọpụtara na Yandex bidoro na-arụ ọrụ ụyọkọ YDB, gụnyere ihe karịrị 10 puku ọnụ, na-echekwa ọtụtụ narị petabytes nke data na ijere ọtụtụ nde azụmahịa kesara kwa sekọnd. A na-eji YDB na ọrụ Yandex dị ka Market, Cloud, Smart Home, Alice, Metrika na Auto.ru. Edere koodu ahụ na C/C++ wee kesaa n'okpuru ikike Apache 2.0. Maka ịmara na mmalite ngwa ngwa, ị nwere ike iji akpa Docker emebere ya.

Atụmatụ oru ngo:

  • Iji ụdị data mmekọrịta nwere tebụl. A na-eji YQL (Asụsụ ajụjụ YDB) wee jụọ ajụjụ wee kọwapụta atụmatụ data, nke bụ olumba SQL emebere ka ọ rụọ ọrụ na nnukwu ọdụ data ekesa. Mgbe ị na-emepụta atụmatụ nchekwa, a na-akwado nchịkọta tebụl dịka osisi, nke yiri akwụkwọ ndekọ aha na usoro faịlụ. Enyere API maka iji data rụọ ọrụ n'ụdị JSON.
    Yandex mepere koodu nke DBMS YDB ekesa na-akwado SQL
  • Nkwado maka ịnweta data site na iji ajụjụ nyocha emebere iji mee ajụjụ ad-hoc nyocha megide nchekwa data, mebie na ọnọdụ ọgụgụ naanị yana iweghachi iyi grpc.
  • A na-eme mmekọrịta ya na DBMS na izipu arịrịọ site na iji interface ahịrị ahịrị iwu, ebe nrụọrụ weebụ wuru ma ọ bụ YDB SDK, nke na-enye ọba akwụkwọ maka C ++, C # (.NET), Go, Java, Node.js, PHP na Python.
  • Ikike ịmepụta nhazi ndị na-anabata mmejọ nke na-aga n'ihu na-arụ ọrụ mgbe diski onye ọ bụla, ọnụ, racks, na ọbụna ebe data dara. YDB na-akwado ntinye na mmegharị mmekọrịta n'ofe mpaghara nnweta atọ ka ọ na-edobe ahụike nke ụyọkọ ahụ ma ọ bụrụ na ọdịda nke otu mpaghara ahụ dara.
  • Naghachi na akpaghị aka site na ọdịda yana obere igbu oge maka ngwa ma jikwaa nkwụghachi ụgwọ akọwapụtara ozugbo mgbe ị na-echekwa data.
  • Mepụta indexes na-akpaghị aka na igodo isi yana ikike ịkọwapụta ndepụta nke abụọ iji melite arụmọrụ nke ịnweta ogidi aka ike.
  • scalability kwụ ọtọ. Ka ibu na nha data echekwara na-eto, enwere ike ịgbasa ụyọkọ ahụ site na ijikọta ọnụ ọhụrụ. A na-ekewa ọkwa mgbakọ na mwepụ, na-enye ohere maka ịgbakọ na nchekwa nchekwa iche iche. DBMS n'onwe ya na-enyocha nhazi nkesa data na ibu, na-eburu n'uche akụrụngwa ngwaike dị. Ọ ga-ekwe omume ibuga nhazi nhazi nkesa na mpaghara na-ekpuchi ọtụtụ ebe data n'akụkụ dị iche iche nke ụwa.
  • Nkwado maka ụdị nkwụsi ike siri ike yana azụmahịa ACID mgbe ị na-edozi ajụjụ gbasara ọtụtụ ọnụ ọnụ na tebụl. Iji kwalite arụmọrụ, ị nwere ike họrọ gbanyụọ njikwa ngbanwe.
  • Ntugharị data akpaaka, nkewa akpaaka (nkewa, sharding) mgbe oke ma ọ bụ ibu na-abawanye, yana ibu akpaka na nhazi data n'etiti ọnụ.
  • Na-echekwa data ozugbo na ngwaọrụ ngọngọ site na iji mpaghara PDisk na oyi akwa VDisk. N'elu VDisk, DProxy na-agba ọsọ, nke na-enyocha ịdị adị na arụmọrụ nke diski iji wepụ ha ma ọ bụrụ na achọpụtara nsogbu.
  • Ihe owuwu na-agbanwe agbanwe nke na-enye gị ohere ịmepụta n'elu YDB, ọrụ dị iche iche, ruo ngwaọrụ mgbochi mebere na ahịrị na-adịgide adịgide ( kwụ n'ahịrị na-adịgide adịgide). Ngwa dabara adaba maka ụdị ọrụ dị iche iche, OLTP na OLAP (ajụjụ nyocha).
  • Nkwado maka ọtụtụ onye ọrụ (multitenant) na nhazi enweghị ihe nkesa. Ikike ịnwapụta ndị ahịa. Ndị ọrụ nwere ike ịmepụta ụyọkọ mebere nke ha na ọdụ data n'ime akụrụngwa a na-ekekọrịta, na-eburu n'uche oriri akụrụngwa n'ogo nke ọnụọgụ arịrịọ na nha data, ma ọ bụ site na ịgbazite / idokwa ụfọdụ akụrụngwa mgbakọ na mwepụ na ohere nchekwa.
  • Enwere ike ịhazigharị oge ndụ ndekọ maka ihichapụ data adịkwaghị adị.

isi: opennet.ru

Tinye a comment