První stabilní vydání grafově orientovaného Nebula Graph DBMS
odehrál se vydání otevřeného DBMS Graf mlhoviny 1.0.0, navržený k efektivnímu ukládání velkých sad vzájemně propojených dat, která tvoří graf, který může obsahovat miliardy uzlů a biliony spojení. Projekt je napsán v C++ a distribuovány licencováno pod Apache 2.0. Klientské knihovny pro přístup k DBMS jsou připraveny pro jazyky Go, Python a Java. DBMS vývojový startup VESoft před pár dny obdržel první tranše investic ve výši 8 milionů USD.
V DBMS aplikováno distribuovaná architektura bez sdílení zdrojů (shared-nothing), což znamená spuštění nezávislých a soběstačných procesů grafického zpracování požadavků a procesů ukládání. Metaslužba organizuje pohyb dat a poskytuje metainformace o grafu. Pro zajištění konzistence dat se používá protokol založený na algoritmu VOR.
Hlavní rysy Nebula Graph:
Bezpečnostní zabezpečení poskytováním přístupu pouze ověřeným uživatelům, jejichž oprávnění jsou nastavena prostřednictvím systému řízení přístupu založeného na rolích (RBAC).
Příležitost propojení různých typů skladovacích motorů. Podpora rozšíření jazyka pro generování dotazů o nové algoritmy.
Zajištění minimální latence při čtení nebo zápisu dat a zachování vysoké propustnosti. Na testování ve shluku jednoho grafového uzlu a tří uložených databázových uzlů o velikosti 632 GB, včetně garfu 1.2 miliardy vrcholů a 8.4 miliardy hran, byly latence na úrovni několika milisekund a propustnost až 140 tisíc požadavků za sekundu .
Lineární škálovatelnost.
Dotazovací jazyk podobný SQL, který je výkonný a snadno srozumitelný. Mezi podporované operace patří GO (obousměrné procházení vrcholů grafu), GROUP BY, ORDER BY, LIMIT, UNION, UNION DISTINCT, INTERSECT, MINUS, PIPE (s použitím výsledku z předchozího dotazu). Jsou podporovány indexy a uživatelem definované proměnné.
Zajištění vysoké dostupnosti a odolnosti vůči poruchám.
Podpora pro vytváření snímků s částí stavu databáze pro zjednodušení vytváření záložních kopií.
Připraveno pro průmyslové použití (již používáno v infrastruktuře JD, Meituan a Xiaohongshu).
Možnost změnit schéma ukládání dat a aktualizovat je bez zastavení nebo ovlivnění probíhajících operací.
Podpora TTL pro omezení životnosti dat.
Příkazy pro správu nastavení a hostitelů úložiště.
Nástroje pro správu práce a plánování spouštění prací (z aktuálně podporovaných prací jsou COMPACT a FLUSH).
Operace hledání úplné cesty a nejkratší cesty mezi danými vrcholy.
Rozhraní OLAP pro integraci s analytickými platformami třetích stran.
Nástroje pro import dat ze souborů CSV nebo ze Sparku.
Exportujte metriky pro monitorování pomocí Prometheus a Grafana.
webové rozhraní Nebula Graph Studio pro vizualizaci operací s grafy, navigaci v grafech, navrhování schémat ukládání dat a načítání.