Ukukhishwa kwegrafu ye-DBMS Nebula egxile kugrafu 3.2

Ukukhululwa kwe-DBMS Nebula Graph 3.2 evulekile kushicilelwe, eyenzelwe ukugcinwa okuphumelelayo kwamasethi amakhulu edatha exhumene eyenza igrafu engakwazi ukubala izigidigidi zamanodi kanye nezigidigidi zokuxhuma. Le phrojekthi ibhalwe nge-C++ futhi isatshalaliswa ngaphansi kwelayisensi ye-Apache 2.0. Imitapo yolwazi yeklayenti yokufinyelela i-DBMS ilungiselwe izilimi ze-Go, Python kanye ne-Java.

I-DBMS isebenzisa i-architecture esabalalisiwe ngaphandle kokwabelana ngezinsiza (okwabelwana-lutho), okusho ukwethulwa kwezinqubo ezizimele nezizimele zokucubungula imibuzo yegrafu kanye nezinqubo zokugcina ezigciniwe. I-meta-service ihlela ukuhamba kwedatha futhi inikeza ulwazi lwe-meta mayelana negrafu. Ukuqinisekisa ukuvumelana kwedatha, iphrothokholi esekelwe ku-algorithm ye-RAFT iyasetshenziswa.

Izici eziyinhloko ze-Nebula Graph:

  • Ukuqinisekisa ukuvikeleka ngokukhawulela ukufinyelela kuphela kubasebenzisi abagunyaziwe izimvume zabo ezisethwe ngohlelo lokulawula ukufinyelela olususelwe kwindima (i-RBAC).
  • Ikhono lokuxhuma izinhlobo ezahlukene zezinjini zokugcina. Usekelo lokukhulisa ulimi lokukhiqiza imibuzo ngama-algorithms amasha.
  • Ukuqinisekisa ukubambezeleka okuncane lapho ufunda noma ubhala idatha kanye nokugcina ukusebenza okuphezulu. Lapho ihlolwa kuqoqo le-graphd node eyodwa kanye nama-stored node amathathu, i-database engu-632 GB, okuhlanganisa igrafu yama-vertices ayizigidi eziyizinkulungwane ezingu-1.2 kanye nemiphetho eyizigidi eziyizinkulungwane ezingu-8.4, ukubambezeleka kwakungama-milliseconds ambalwa, futhi umphumela wawufinyelela kuzicelo eziyizinkulungwane ezingu-140 ngomzuzwana.
  • Ukukala komugqa.
  • Ulimi lombuzo olufana ne-SQL olunamandla futhi oluqondakala kalula. Imisebenzi esekelwayo ihlanganisa i-GO (i-bidirectional traversal of vertices yegrafu), GROUP BY, OROD BY, LIMIT, UNION, UNION DISTINCT, INTERSECT, MINUS, PIPE (usebenzisa umphumela ovela embuzweni wangaphambilini). Izinkomba nokuguquguquka okuchazwe ngumsebenzisi kuyasekelwa.
  • Ukuqinisekisa ukutholakala okuphezulu nokumelana nokwehluleka.
  • Usekelo lokudala izifinyezo ngocezu lwesimo sesizindalwazi ukuze kube lula ukudalwa kwamakhophi ayisipele.
  • Ilungele ukusetshenziswa ezimbonini (sezivele zisetshenziswa kungqalasizinda ye-JD, Meituan ne-Xiaohongshu).
  • Amandla okushintsha isikimu sokulondoloza idatha futhi usibuyekeze ngaphandle kokumisa noma ukuphazamisa imisebenzi eqhubekayo.
  • Ukusekelwa kwe-TTL ukuze kukhawulelwe ukuphila kwedatha.
  • Imiyalo yokuphatha izilungiselelo nabasingathi besitoreji.
  • Amathuluzi okuphatha umsebenzi nokuhlela ukwethulwa komsebenzi (kwemisebenzi esekelwayo njengamanje i-COMPACT ne-FLUSH).
  • Imisebenzi yokuthola indlela ephelele kanye nendlela emfushane phakathi kwama-vertices anikeziwe.
  • Isixhumi esibonakalayo se-OLAP sokuhlanganiswa nezinkundla zezibalo zenkampani yangaphandle.
  • Izinsiza zokungenisa idatha kusuka kumafayela e-CSV noma ku-Spark.
  • Khipha amamethrikhi okuqapha usebenzisa i-Prometheus ne-Grafana.
  • Isixhumi esibonakalayo sewebhu se-Nebula Graph Studio ukuze ubone ngeso lengqondo ukusebenza kwegrafu, ukuzulazula kwegrafu, ukuklama ukugcinwa kwedatha kanye nezikimu zokulayisha.

Ekukhishweni okusha:

  • Kwengezwe usekelo lomsebenzi we-extract() ukuze kukhishwe uchungechunge oluncane olufana nenkulumo enikeziwe.
  • Izilungiselelo ezilungiselelwe kufayela lokumisa.
  • Kungezwe imithetho yokuthuthukisa ukuze kususwe u-opharetha we-AppendVertices ongenamsebenzi futhi kukhubazwe ukusetshenziswa kwezihlungi zonqenqema kanye ne-vertex.
  • Inani ledatha elikopishelwe umsebenzi we-JOIN, kanye nama-opharetha we-Traverse ne-AppendVertices, lehlisiwe.
  • Ukusebenza okuthuthukisiwe kwe-SHORTEST PATH kanye ne-SUBGRAPH
  • Ukwabiwa kwenkumbulo okuthuthukisiwe (I-Arena Allocator inikwe amandla).

Source: opennet.ru

Engeza amazwana