Paglabas ng graph-oriented na DBMS Nebula Graph 3.2

Ang paglabas ng bukas na DBMS Nebula Graph 3.2 ay nai-publish, na idinisenyo para sa mahusay na pag-imbak ng malalaking hanay ng magkakaugnay na data na bumubuo ng isang graph na maaaring bilyun-bilyong mga node at trilyong koneksyon. Ang proyekto ay nakasulat sa C++ at ipinamahagi sa ilalim ng lisensya ng Apache 2.0. Ang mga library ng kliyente para sa pag-access sa DBMS ay inihanda para sa mga wikang Go, Python at Java.

Gumagamit ang DBMS ng isang distributed architecture nang hindi nagbabahagi ng mga mapagkukunan (shared-nothing), na nagpapahiwatig ng paglulunsad ng mga independyente at self-sufficient na graphd na proseso ng pagpoproseso ng query at storaged storage na proseso. Inoorkestrate ng meta-service ang paggalaw ng data at nagbibigay ng meta-impormasyon tungkol sa graph. Upang matiyak ang pagkakapare-pareho ng data, ginagamit ang isang protocol batay sa RAFT algorithm.

Mga pangunahing tampok ng Nebula Graph:

  • Tinitiyak ang seguridad sa pamamagitan ng paghihigpit sa pag-access lamang sa mga na-authenticate na user na ang mga pahintulot ay itinakda sa pamamagitan ng isang role-based access control (RBAC) system.
  • Kakayahang ikonekta ang iba't ibang uri ng mga storage engine. Suporta para sa pagpapalawak ng wika ng pagbuo ng query gamit ang mga bagong algorithm.
  • Tinitiyak ang kaunting latency kapag nagbabasa o nagsusulat ng data at nagpapanatili ng mataas na throughput. Kapag sinubukan sa isang kumpol ng isang naka-graph na node at tatlong naka-imbak na node, isang 632 GB na database, kabilang ang isang graph na 1.2 bilyong vertices at 8.4 bilyong mga gilid, ang mga latency ay ilang millisecond, at ang throughput ay hanggang 140 libong mga kahilingan sa bawat segundo.
  • Linear scalability.
  • Isang mala-SQL na query language na makapangyarihan at madaling maunawaan. Kasama sa mga sinusuportahang operasyon ang GO (bidirectional traversal ng graph vertices), GROUP BY, ORDER BY, LIMIT, UNION, UNION DISTINCT, INTERSECT, MINUS, PIPE (gamit ang resulta mula sa nakaraang query). Sinusuportahan ang mga index at mga variable na tinukoy ng gumagamit.
  • Tinitiyak ang mataas na kakayahang magamit at katatagan sa mga pagkabigo.
  • Suporta para sa paglikha ng mga snapshot na may isang slice ng estado ng database upang pasimplehin ang paglikha ng mga backup na kopya.
  • Handa para sa pang-industriya na paggamit (ginamit na sa imprastraktura ng JD, Meituan at Xiaohongshu).
  • Ang kakayahang baguhin ang scheme ng pag-iimbak ng data at i-update ito nang hindi humihinto o nakakaapekto sa mga patuloy na operasyon.
  • TTL support para limitahan ang buhay ng data.
  • Mga utos para sa pamamahala ng mga setting at mga host ng storage.
  • Mga tool para sa pamamahala ng trabaho at pag-iskedyul ng mga paglulunsad ng trabaho (sa mga gawaing kasalukuyang sinusuportahan ay COMPACT at FLUSH).
  • Mga operasyon ng paghahanap ng kumpletong landas at ang pinakamaikling landas sa pagitan ng mga ibinigay na vertice.
  • OLAP interface para sa pagsasama sa mga third-party na analytics platform.
  • Mga utility para sa pag-import ng data mula sa mga CSV file o mula sa Spark.
  • I-export ang mga sukatan para sa pagsubaybay gamit ang Prometheus at Grafana.
  • Ang web interface ng Nebula Graph Studio para sa pagpapakita ng mga pagpapatakbo ng graph, pag-navigate sa graph, pagdidisenyo ng pag-iimbak ng data at mga scheme ng paglo-load.

Sa bagong release:

  • Nagdagdag ng suporta para sa extract() function para mag-extract ng substring na tumutugma sa isang naibigay na expression.
  • Mga na-optimize na setting sa configuration file.
  • Nagdagdag ng mga panuntunan sa pag-optimize upang maalis ang walang silbi na operator ng AppendVertices at hindi paganahin ang aplikasyon ng mga filter sa gilid at vertex.
  • Ang dami ng data na kinopya para sa JOIN operation, gayundin para sa Traverse at AppendVertices operator, ay nabawasan.
  • Na-optimize na pagganap ng SHORTEST PATH at SUBGRAPH
  • Pinahusay na paglalaan ng memorya (pinagana ang Arena Allocator).

Pinagmulan: opennet.ru

Bumili ng maaasahang pagho-host para sa mga site na may proteksyon ng DDoS, mga server ng VPS VDS 🔥 Bumili ng maaasahang website hosting na may proteksyon ng DDoS, VPS VDS servers | ProHoster