Divilgasyon DBMS Nebula Graph ki oryante sou graf 3.2

Опубликован выпуск открытой СУБД Nebula Graph 3.2, предназначенной для эффективного хранения крупных наборов связанных между собой данных, образующих граф, который может насчитывать миллиарды узлов и триллионы связей. Проект написан на языке С++ и распространяется под лицензией Apache 2.0. Клиентские библиотеки для обращения к СУБД подготовлены для языков Go, Python и Java.

В СУБД применяется распределённая архитектура без разделения ресурсов (shared-nothing), подразумевающая запуск независимых и самодостаточных процессов обработки запросов graphd и процессов хранения storaged. Оркестровкой перемещения данных и предоставлением мета-информации о графе занимается мета-сервис. Для обеспечения согласованности данных используется протокол на базе алгоритма RAFT.

Karakteristik prensipal Nebula Graph:

  • Обеспечение безопасности через предоставление доступа только аутентифицированным пользователям, полномочия которых задаются через систему управления доступа на основе ролей (RBAC).
  • Возможность подключения разных типов движков хранения. Поддержка расширения языка формирования запросов новыми алгоритмами.
  • Обеспечение минимальных задержек при чтении или записи данных и поддержание высокой пропускной способности. При тестировании в кластере из одного узла graphd и трёх узлов storaged БД размером 632 GB, включающей граф из 1.2 миллиарда вершин и 8.4 миллиарда рёбер задержки были на уровне нескольких миллисекунд, а пропускная способность составила до 140 тысяч запросов в секунду.
  • Évolutivité lineyè.
  • Yon lang rechèch ki sanble ak SQL ki pwisan ak fasil pou konprann. Operasyon ki sipòte yo enkli GO (travèse bidireksyon nan somè graf), GROUP BY, ORDER BY, LIMIT, UNION, UNION DISTINCT, INTERSECT, MINUS, PIPE (itilize rezilta yon rechèch anvan). Endèks ak varyab itilizatè-defini yo sipòte.
  • Asire segondè disponiblite ak rezistans nan echèk.
  • Sipò pou kreye snapshots ak yon tranch nan eta baz done a senplifye kreyasyon an nan kopi backup.
  • Pare pou itilizasyon endistriyèl (deja itilize nan enfrastrikti JD, Meituan ak Xiaohongshu).
  • Kapasite pou chanje konplo depo done yo epi mete ajou li san yo pa sispann oswa afekte operasyon kontinyèl yo.
  • TTL sipò pou limite done lavi.
  • Kòmandman pou jere anviwònman ak lame depo.
  • Zouti pou jere travay ak orè lanse travay (nan travay yo sipòte kounye a se KONPATT ak FLUSH).
  • Operasyon pou jwenn chemen konplè a ak chemen ki pi kout ant somè yo bay yo.
  • Koòdone OLAP pou entegrasyon ak platfòm analiz twazyèm pati.
  • Itilite pou enpòte done ki soti nan dosye CSV oswa ki soti nan Spark.
  • Экспорт метрик для мониторинга при помощи Prometheus и Grafana.
  • Web-интерфейс Nebula Graph Studio для визуализации операций с графом, навигации по графу, проектирования схемы хранения и загрузки данных.

Nan nouvo lage a:

  • Добавлена поддержка функции extract() для извлечения подстроки, соответствующей заданному выражению.
  • Оптимизированы настройки в файле конфигурации.
  • Добавлены правила оптимизации для удалений бесполезного оператора AppendVertices и отключения применения фильтров рёбер и вершин.
  • Сокращён объём данных, копируемых для операции JOIN, а также для операторов Traverse и AppendVertices.
  • Оптимизирована производительность SHORTEST PATH и SUBGRAPH
  • Улучшено распределение памяти (задействован Arena Allocator).

Sous: opennet.ru

Add nouvo kòmantè