релиз открытой СУБД , предназначенной для эффективного хранения крупных наборов связанных между собой данных, образующих граф, который может насчитывать миллиарды узлов и триллионы связей. Проект написан на языке С++ и под лицензией Apache 2.0. Клиентские библиотеки для обращения к СУБД подготовлены для языков Go, Python и Java. Развивающий СУБД стартап VESoft несколько дней назад первый транш инвестиций в размере 8 млн долларов.
В СУБД распределённая архитектура без разделения ресурсов (shared-nothing), подразумевающая запуск независимых и самодостаточных процессов обработки запросов graphd и процессов хранения storaged. Оркестровкой перемещения данных и предоставлением мета-информации о графе занимаются мета-сервис. Для обеспечения согласованности данных используется протокол на базе алгоритма .
Nebula Graph peamised omadused:
- Обеспечение через предоставление доступа только аутентифицированным пользователям, полномочия которых задаются через систему управления доступа на основе ролей (RBAC).
- подключения разных типов движков хранения. Поддержка расширения языка формирования запросов новыми алгоритмами.
- Обеспечение минимальных задержек при чтении или записи данных и поддержание высокой пропускной способности. При в кластере из одного узла graphd и трёх узлов storaged БД размером 632 GB, включающей гарф из 1.2 миллиарда вершин и 8.4 миллиарда рёбер задержки были на уровне нескольких миллисекунд, а пропускная способность составила до 140 тысяч запросов в секунду.
- Lineaarne skaaleeritavus.
- SQL-sarnane päringute keel, piisavalt võimas ja arusaadav. Toetatakse selliseid operatsioone nagu GO (kahe suuna graafipunktide läbimine), GROUP BY, ORDER BY, LIMIT, UNION, UNION DISTINCT, INTERSECT, MINUS, PIPE (eelneva päringu tulemuse kasutamine). Toetatakse indekseid ja kasutaja määratud muutujaid.
- Tagab kõrge kättesaadavuse ja tõrke suhtes vastupidavuse.
- Toetab andmebaasi olekukäkkide loomist varukoopia loomise lihtsustamiseks.
- Tööstuslikuks kasutamiseks valmis (juba kasutatakse ettevõtetes nagu JD, Meituan ja Xiaohongshu).
- Andmete salvestus- ja uuendusskeemide muutmise võimalus ilma operatsioonide peatamise või mõjutamiseta.
- TTL-i toetus andmete eluea piiramiseks.
- Käsud salvestussete ja hostide seadete haldamiseks.
- Tööde haldamise ja käivitamisplaani tööriistad (hetkel toetatakse COMPACT ja FLUSH tööde jaoks).
- Täispika tee ja lühima tee määramise toimingud antud tippude vahel.
- OLAP-liides, et integreerida kolmandate osapoolte analüüsiplatformidega.
- Kasutusvahendid andmete importimiseks CSV-failidest või Sparkist.
- Экспорт метрик для мониторинга при помози Prometheus и Grafana.
- Veebiliides
для визуализации операций с графом, навигации по графу, проектирования схемы хранения и загрузки данных.
Allikas: opennet.ru
