ΠΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ Π²ΡΠΏΡΡΠΊ ΠΎΡΠΊΡΡΡΠΎΠΉ Π‘Π£ΠΠ Nebula Graph 3.2, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΠΎΠΉ Π΄Π»Ρ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΠ³ΠΎ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΊΡΡΠΏΠ½ΡΡ Π½Π°Π±ΠΎΡΠΎΠ² ΡΠ²ΡΠ·Π°Π½Π½ΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΠ±ΠΎΠΉ Π΄Π°Π½Π½ΡΡ , ΠΎΠ±ΡΠ°Π·ΡΡΡΠΈΡ Π³ΡΠ°Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ΅Ρ Π½Π°ΡΡΠΈΡΡΠ²Π°ΡΡ ΠΌΠΈΠ»Π»ΠΈΠ°ΡΠ΄Ρ ΡΠ·Π»ΠΎΠ² ΠΈ ΡΡΠΈΠ»Π»ΠΈΠΎΠ½Ρ ΡΠ²ΡΠ·Π΅ΠΉ. ΠΡΠΎΠ΅ΠΊΡ Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° ΡΠ·ΡΠΊΠ΅ Π‘++ ΠΈ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·ΠΈΠ΅ΠΉ Apache 2.0. ΠΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π΄Π»Ρ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊ Π‘Π£ΠΠ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Ρ Π΄Π»Ρ ΡΠ·ΡΠΊΠΎΠ² Go, Python ΠΈ Java.
Π Π‘Π£ΠΠ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½Π°Ρ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ° Π±Π΅Π· ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠ΅ΡΡΡΡΠΎΠ² (shared-nothing), ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°ΡΡΠ°Ρ Π·Π°ΠΏΡΡΠΊ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡΡ ΠΈ ΡΠ°ΠΌΠΎΠ΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ² graphd ΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² Ρ ΡΠ°Π½Π΅Π½ΠΈΡ storaged. ΠΡΠΊΠ΅ΡΡΡΠΎΠ²ΠΊΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΌΠ΅ΡΠ°-ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ Π³ΡΠ°ΡΠ΅ Π·Π°Π½ΠΈΠΌΠ°Π΅ΡΡΡ ΠΌΠ΅ΡΠ°-ΡΠ΅ΡΠ²ΠΈΡ. ΠΠ»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡΠΈ Π΄Π°Π½Π½ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» Π½Π° Π±Π°Π·Π΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° RAFT.
Mga pangunahing tampok ng Nebula Graph:
- ΠΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΡΠ΅ΡΠ΅Π· ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π΄ΠΎΡΡΡΠΏΠ° ΡΠΎΠ»ΡΠΊΠΎ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ, ΠΏΠΎΠ»Π½ΠΎΠΌΠΎΡΠΈΡ ΠΊΠΎΡΠΎΡΡΡ Π·Π°Π΄Π°ΡΡΡΡ ΡΠ΅ΡΠ΅Π· ΡΠΈΡΡΠ΅ΠΌΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π΄ΠΎΡΡΡΠΏΠ° Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠΎΠ»Π΅ΠΉ (RBAC).
- ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠ°Π·Π½ΡΡ ΡΠΈΠΏΠΎΠ² Π΄Π²ΠΈΠΆΠΊΠΎΠ² Ρ ΡΠ°Π½Π΅Π½ΠΈΡ. ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ ΡΠ·ΡΠΊΠ° ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² Π½ΠΎΠ²ΡΠΌΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ°ΠΌΠΈ.
- ΠΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΡ Π·Π°Π΄Π΅ΡΠΆΠ΅ΠΊ ΠΏΡΠΈ ΡΡΠ΅Π½ΠΈΠΈ ΠΈΠ»ΠΈ Π·Π°ΠΏΠΈΡΠΈ Π΄Π°Π½Π½ΡΡ ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅ Π²ΡΡΠΎΠΊΠΎΠΉ ΠΏΡΠΎΠΏΡΡΠΊΠ½ΠΎΠΉ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΠΈ. ΠΡΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ Π² ΠΊΠ»Π°ΡΡΠ΅ΡΠ΅ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ·Π»Π° graphd ΠΈ ΡΡΡΡ ΡΠ·Π»ΠΎΠ² storaged ΠΠ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ 632 GB, Π²ΠΊΠ»ΡΡΠ°ΡΡΠ΅ΠΉ Π³ΡΠ°Ρ ΠΈΠ· 1.2 ΠΌΠΈΠ»Π»ΠΈΠ°ΡΠ΄Π° Π²Π΅ΡΡΠΈΠ½ ΠΈ 8.4 ΠΌΠΈΠ»Π»ΠΈΠ°ΡΠ΄Π° ΡΡΠ±Π΅Ρ Π·Π°Π΄Π΅ΡΠΆΠΊΠΈ Π±ΡΠ»ΠΈ Π½Π° ΡΡΠΎΠ²Π½Π΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄, Π° ΠΏΡΠΎΠΏΡΡΠΊΠ½Π°Ρ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΡ ΡΠΎΡΡΠ°Π²ΠΈΠ»Π° Π΄ΠΎ 140 ΡΡΡΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ.
- 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.
- ΠΠΊΡΠΏΠΎΡΡ ΠΌΠ΅ΡΡΠΈΠΊ Π΄Π»Ρ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Prometheus ΠΈ Grafana.
- Web-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Nebula Graph Studio Π΄Π»Ρ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Ρ Π³ΡΠ°ΡΠΎΠΌ, Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ ΠΏΠΎ Π³ΡΠ°ΡΡ, ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΡ Π΅ΠΌΡ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈ Π·Π°Π³ΡΡΠ·ΠΊΠΈ Π΄Π°Π½Π½ΡΡ .
Sa bagong release:
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΡΠ½ΠΊΡΠΈΠΈ extract() Π΄Π»Ρ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄ΡΡΡΠΎΠΊΠΈ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΉ Π·Π°Π΄Π°Π½Π½ΠΎΠΌΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ.
- ΠΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π² ΡΠ°ΠΉΠ»Π΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Ρ ΠΏΡΠ°Π²ΠΈΠ»Π° ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΠΉ Π±Π΅ΡΠΏΠΎΠ»Π΅Π·Π½ΠΎΠ³ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° AppendVertices ΠΈ ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠΈΠ»ΡΡΡΠΎΠ² ΡΡΠ±Π΅Ρ ΠΈ Π²Π΅ΡΡΠΈΠ½.
- Π‘ΠΎΠΊΡΠ°ΡΡΠ½ ΠΎΠ±ΡΡΠΌ Π΄Π°Π½Π½ΡΡ , ΠΊΠΎΠΏΠΈΡΡΠ΅ΠΌΡΡ Π΄Π»Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ JOIN, Π° ΡΠ°ΠΊΠΆΠ΅ Π΄Π»Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² Traverse ΠΈ AppendVertices.
- ΠΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ SHORTEST PATH ΠΈ SUBGRAPH
- Π£Π»ΡΡΡΠ΅Π½ΠΎ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡΠΈ (Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°Π½ Arena Allocator).
Pinagmulan: opennet.ru