Giablihan sa Yandex ang code sa gipang-apod-apod nga DBMS YDB nga nagsuporta sa SQL

Gipatik sa Yandex ang gigikanan nga mga teksto sa gipang-apod-apod nga YDB DBMS, nga nagpatuman sa suporta alang sa SQL dialect ug mga transaksyon sa ACID. Ang DBMS gimugna gikan sa wala ug sa sinugdan naugmad uban ang usa ka mata aron masiguro ang pagtugot sa sayup, awtomatik nga pagbawi kung adunay mga kapakyasan ug pagkadako. Namatikdan nga ang Yandex naglunsad sa nagtrabaho nga mga cluster sa YDB, lakip ang labaw sa 10 ka libo nga mga node, nga nagtipig sa gatusan ka mga petabytes nga datos ug nagserbisyo sa minilyon nga gipang-apod-apod nga mga transaksyon kada segundo. Ang YDB gigamit sa mga proyekto sa Yandex sama sa Market, Cloud, Smart Home, Alice, Metrika ug Auto.ru. Ang code gisulat sa C/C++ ug giapod-apod ubos sa Apache 2.0 nga lisensya. Para sa familiarization ug dali nga paglansad, mahimo nimong gamiton ang usa ka andam nga sudlanan nga Docker.

Mga Feature sa Proyekto:

  • Paggamit sa relational data model nga adunay mga lamesa. Ang YQL (YDB Query Language) gigamit sa pagpangutana ug pagpasabot sa eskema sa datos, nga usa ka diyalekto sa SQL nga gipahaom sa pagtrabaho uban sa dagkong gipang-apod-apod nga mga database. Kung maghimo usa ka laraw sa pagtipig, ang usa ka sama sa kahoy nga paggrupo sa mga lamesa gisuportahan, nga susama sa mga direktoryo sa usa ka file system. Gihatag ang usa ka API alang sa pagtrabaho sa datos sa format nga JSON.
    Giablihan sa Yandex ang code sa gipang-apod-apod nga DBMS YDB nga nagsuporta sa SQL
  • Suporta alang sa pag-access sa datos gamit ang mga pangutana sa pag-scan nga gidesinyo sa paghimo sa analytical ad-hoc nga mga pangutana batok sa database, gipatuman sa read-only mode ug pagbalik sa usa ka grpc stream.
  • Ang interaksyon sa DBMS ug pagpadala sa mga hangyo gihimo gamit ang command line interface, ang built-in nga web interface o ang YDB SDK, nga naghatag og mga librarya alang sa C ++, C # (.NET), Go, Java, Node.js, PHP ug Python.
  • Ang abilidad sa pagmugna og fault-tolerant nga mga configuration nga nagpadayon sa pagtrabaho kung ang indibidwal nga mga disk, node, racks, ug bisan ang mga data center mapakyas. Gisuportahan sa YDB ang pag-deploy ug dungan nga pagkopya sa tulo ka mga sona nga magamit samtang gipadayon ang kahimsog sa cluster kung adunay kapakyasan sa usa sa mga zone.
  • Awtomatikong mabawi gikan sa mga kapakyasan nga adunay gamay nga paglangan alang sa mga aplikasyon ug awtomatiko nga ipadayon ang gipiho nga redundancy kung magtipig sa datos.
  • Awtomatikong paghimo sa mga indeks sa panguna nga yawe ug ang abilidad sa paghubit sa mga sekondaryang indeks aron mapauswag ang kahusayan sa pag-access sa mga arbitraryong kolum.
  • Horizontal scalability. Samtang ang load ug ang gidak-on sa gitipigan nga data motubo, ang cluster mahimong mapalapad pinaagi lamang sa pagkonektar sa bag-ong mga node. Ang compute ug storage nga mga tier gibulag, nga nagtugot sa compute ug storage scaling nga gilain. Ang DBMS mismo ang nagmonitor sa uniporme nga pag-apod-apod sa datos ug load, nga gikonsiderar ang anaa nga mga kahinguhaan sa hardware. Posible nga i-deploy ang geographically distributed configurations nga naglangkob sa daghang mga data center sa lain-laing bahin sa kalibutan.
  • Suporta alang sa lig-on nga pagkamakanunayon nga modelo ug mga transaksyon sa ACID sa pagproseso sa mga pangutana nga naglangkob sa daghang mga node ug mga lamesa. Aron mapauswag ang pasundayag, mahimo nimong pilion nga i-disable ang pagkontrol sa pagkamakanunayon.
  • Automatic data replication, automatic partitioning (partitioning, sharding) kung motaas ang gidak-on o load, ug automatic load ug data balance between nodes.
  • Direkta nga pagtipig sa datos sa mga block device gamit ang lumad nga PDisk component ug VDisk layer. Sa ibabaw sa VDisk, ang DSProxy nagdagan, nga nag-analisar sa pagkaanaa ug paghimo sa mga disk aron dili iapil kini kung adunay mga problema nga nakit-an.
  • Usa ka flexible nga arkitektura nga nagtugot kanimo sa paghimo sa ibabaw sa YDB, lainlaing mga serbisyo, hangtod sa mga virtual block device ug padayon nga mga pila (persistent queue). Kaangayan sa aplikasyon alang sa lain-laing klase sa workload, OLTP ug OLAP (analytical nga mga pangutana).
  • Suporta para sa multi-user (multitenant) ug walay server nga mga configuration. Abilidad sa pag-authenticate sa mga kliyente. Ang mga tiggamit makahimo sa ilang kaugalingon nga mga virtual cluster ug database sa usa ka komon nga gipaambit nga imprastraktura, nga gikonsiderar ang pagkonsumo sa kapanguhaan sa lebel sa gidaghanon sa mga hangyo ug gidak-on sa datos, o pinaagi sa pag-abang / pagreserba sa piho nga mga kapanguhaan sa kompyuter ug espasyo sa pagtipig.
  • Posibilidad sa pag-adjust sa tibuok kinabuhi sa mga rekord alang sa awtomatikong pagtangtang sa karaan nga datos.

Source: opennet.ru

Idugang sa usa ka comment