Uitgave van de grafiekgeoriënteerde DBMS Nebula Graph 3.2

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

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

Belangrijkste kenmerken van Nebula Graph:

  • Обеспечение безопасности через предоставление доступа только аутентифицированным пользователям, полномочия которых задаются через систему управления доступа на основе ролей (RBAC).
  • Возможность подключения разных типов движков хранения. Поддержка расширения языка формирования запросов новыми алгоритмами.
  • Обеспечение минимальных задержек при чтении или записи данных и поддержание высокой пропускной способности. При тестировании в кластере из одного узла graphd и трёх узлов storaged БД размером 632 GB, включающей граф из 1.2 миллиарда вершин и 8.4 миллиарда рёбер задержки были на уровне нескольких миллисекунд, а пропускная способность составила до 140 тысяч запросов в секунду.
  • Lineaire schaalbaarheid.
  • Een SQL-achtige querytaal die krachtig en gemakkelijk te begrijpen is. Ondersteunde bewerkingen zijn onder meer GO (bidirectionele verplaatsing van grafiekhoekpunten), GROUP BY, ORDER BY, LIMIT, UNION, UNION DISTINCT, INTERSECT, MINUS, PIPE (met behulp van het resultaat van een eerdere query). Indexen en door de gebruiker gedefinieerde variabelen worden ondersteund.
  • Garanderen van hoge beschikbaarheid en veerkracht bij storingen.
  • Ondersteuning voor het maken van snapshots met een deel van de databasestatus om het maken van back-upkopieën te vereenvoudigen.
  • Klaar voor industrieel gebruik (reeds gebruikt in de infrastructuur van JD, Meituan en Xiaohongshu).
  • De mogelijkheid om het gegevensopslagschema te wijzigen en bij te werken zonder de lopende activiteiten te stoppen of te beïnvloeden.
  • TTL-ondersteuning om de levensduur van gegevens te beperken.
  • Commando's voor het beheren van instellingen en opslaghosts.
  • Hulpmiddelen voor het beheren van werk en het plannen van werklanceringen (van de momenteel ondersteunde werken zijn COMPACT en FLUSH).
  • Bewerkingen voor het vinden van het volledige pad en het kortste pad tussen gegeven hoekpunten.
  • OLAP-interface voor integratie met analyseplatforms van derden.
  • Hulpprogramma's voor het importeren van gegevens uit CSV-bestanden of uit Spark.
  • Экспорт метрик для мониторинга при помощи Prometheus и Grafana.
  • Web-интерфейс Nebula Graph Studio для визуализации операций с графом, навигации по графу, проектирования схемы хранения и загрузки данных.

In de nieuwe uitgave:

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

Bron: opennet.ru

Voeg een reactie