Разработчики: | Vesoft |
Технологии: | СУБД |
Содержание |
Основная статья: Система управления базами данных (СУБД)
2023: Китайский разработчик СУБД, которую используют China Mobile и WeChat, официально пришёл в Россию
В январе 2023 года у Vesoft, китайского разработчика графовой СУБД с открытым исходным кодом Nebula Graph, появился дистрибутор в России – Factor Group. В этом статусе компания будет представлять интересы Vesoft не только в России, но и в ближнем зарубежье.
В Factor Group пояснили TAdviser, что выполняют роль официального регионального представителя вендора, центра компетенции и технической поддержки в регионе на русском языке. Это включает работу с заказчиками, партнёрами, развитие партнёрских программ, организацию обучения заказчиков и партнеров, продвижение/развитие/консалтинг/внедрение/поддержку на русском языке. Помимо этого, Factor Group также развивает Open Source-сообщество пользователей открытой ветки продукта.
Nebula Graph является относительно новым решением на рынке: первый стабильный выпуск этой СУБД имел место в середине 2020 года[1]. Однако к 2023 году у неё уже есть крупные пользователи. Среди них такие компании, как WeChat, China Mobile, Tencent, Meituan, JD Digits и Kuaishou. Nebula Graph используется в работе социальных сетей, рекомендательных систем, графов знаний, кибербезопасности, инвестициях, ИИ и др.
СУБД распространяется в свободной редакции (Community Edition) и коммерческой версии (Enterprise Edition). Последняя предоставляет больше функциональных возможностей и профессиональную техподдержку.
Сотрудничество Factor Group и Nebula Graph позволит обеим компаниям без каких-либо ограничений поставлять передовые технологии графовых вычислений клиентам в регионе и обеспечить лучшую поддержку баз данных, чтобы способствовать цифровой трансформации организаций различных отраслей, - говорит Аллен Ду (Allen Du), вице-президент по продажам NebulaGraph. |
Nebula Graph использует механизм хранения данных RocksDB для обеспечения чтения и записи с низкой задержкой и высокой пропускной способностью. Разработчики заявляют, что их решение обеспечивает параллельный доступ, быструю обработку графов и эффективное использование памяти, может хранить и обрабатывать графы с триллионами рёбер (связей) и вершин (объектов).
Графовые БД иногда выделяют, как отдельный класс решений, хотя чаще всего относят к более широкому классу – NoSQL. Особенностью графовых БД является способность обрабатывать графы с минимальной задержкой, что крайне важно для решения различных задач в сферах финтеха, ИИ, информационной безопасности и т.д. Применяются они, например, для задач риск-менеджмента, выявления фрода, для клиентской аналитики и рекомендательных систем.
Аналитики The Insight Partners констатируют повышение спроса на графовые СУБД в мире и прогнозируют среднегодовые темпы роста этого рынка в долларах примерно на 22% в 2022-2028, с $1,85 млрд до $7,22 млрд. Потребность в графовых СУБД подстёгивает в том числе увеличение спроса на системы, которые могут справляться с обработкой запросов с минимальными задержками, полагают в The Insight Partners[2].
А Gartner прогнозирует, что графовые технологии к 2025 году будут использоваться в 80% инноваций в области данных и аналитики. В 2021 году, по оценкам аналитиков, этот показатель составлял 10%[3].
Среди ключевых мировых игроков на рынке графовых СУБД такие компании, как Amazon Web Services, Oracle, Teradata, IBM, Microsoft, Callidus Software, MarkLogic Corporation, Neo4j, OpenLink Software и ряд др. Одна из самых известных графовых СУБД – свободно распространяемая Neo4J, была выпущена ещё в 2007 году.
Многие зарубежные игроки в 2022 году ушли из России. Nebula Graph сможет составить конкурентную замену аналогичным решениям, полагают в Factor Group.
Если говорить об отличиях графовых баз данных от SQL баз, то в целом, графовые БД — достаточно нишевое решение, отмечает Виктор Смирнов, директор по развитию бизнеса в области создания ПО «Крок». Например, в отличие от документоориентированных, которые завоевали популярность в части распространения NoSQL. Подобные БД имеют достаточно ограниченную область применения, где могут быть действительно эффективны относительно традиционных реляционных БД. И здесь, конечно, речь идет о действительно больших объемах данных.
Основной пример – это социальный граф, который реализуют знакомые нам соцсети. Или другие системы, где требуется учитывать множество заранее неопределенных критериев при построении аналитики. А для этого необходимо хранить большое количество связей между данными. И как раз графовая БД может гораздо эффективнее управлять взаимосвязанными данными. Перспективы применения видятся в основном в замещении решений ушедших с рынка западных вендоров, - отмечает Виктор Смирнов. |
Графом в математике называется сеть связанных между собой объектов. Графовые базы данных предназначены для хранения и изучения информации о таких сетях, объясняет Иван Панченко, заместитель гендиректора Postgres Professional. Например, они позволяют быстро ответить на запросы типа «какой ближайший маршрут между Иоханнесбургом и Анадырем» или «найти общих друзей Иванова и Петрова». Поэтому графовые базы лежат в основе социальных сетей, где между пользователями формируются связи по большому списку критериев.
Однако готовые коробочные решения соцсети, том числе и российская VK, не используют, предпочитая им базы данных собственной разработки, говорит Иван Панченко.
Графовые базы также часто используются в базах знаний, науке, и прежде всего, в изучении социальных феноменов.
Поскольку графовые базы в нашей стране уже давно широко используются, появление российского дистрибутора ещё одной СУБД (к слову, свободно распространяемой), радикально ландшафта не поменяет, хотя и улучшит условия работы с этой СУБД в России, - полагает заместитель гендиректора Postgres Professional. |
2022: Выпуск графо-ориентированной СУБД Nebula Graph 3.2
19 июля 2022 года стало известно, что опубликован выпуск открытой СУБД Nebula Graph 3.2, предназначенной для эффективного хранения крупных наборов связанных между собой данных, образующих граф, который может насчитывать миллиарды узлов и триллионы связей. Проект написан на языке С++ и распространяется под лицензией Apache 2.0. Клиентские библиотеки для обращения к СУБД подготовлены для языков Go, Python и Java.
В СУБД применяется распределённая архитектура без разделения ресурсов (shared-nothing), подразумевающая запуск независимых и самодостаточных процессов обработки запросов graphd и процессов хранения storaged. Оркестровкой перемещения данных и предоставлением мета-информации о графе занимается мета-сервис. Для обеспечения согласованности данных используется протокол на базе алгоритма RAFT.
Основные особенности Nebula Graph:
- Обеспечение безопасности через предоставление доступа только аутентифицированным пользователям, полномочия которых задаются через систему управления доступа на основе ролей (RBAC).
- Возможность подключения разных типов движков хранения. Поддержка расширения языка формирования запросов алгоритмами.
- Обеспечение минимальных задержек при чтении или записи данных и поддержание высокой пропускной способности. При тестировании в кластере из одного узла graphd и трёх узлов storaged БД размером 632 GB, включающей граф из 1.2 миллиарда вершин и 8.4 миллиарда рёбер задержки были на уровне нескольких миллисекунд, а пропускная способность составила до 140 тысяч запросов в секунду.
- Линейная масштабируемость.
- SQL-подобный язык запросов, достаточной мощный и простой для восприятия. Поддерживаются такие операции, как GO (двунаправленный обход вершин графа), GROUP BY, ORDER BY, LIMIT, UNION, UNION DISTINCT, INTERSECT, MINUS, PIPE (использование результата от предыдущего запроса). Поддерживаются индексы и определяемые пользователем переменные.
- Обеспечение высокой доступности и устойчивость к сбоям.
- Поддержка создания снапшотов со срезом состояния БД для упрощения создания резервных копий.
- Готовность для промышленного применения (уже используется в инфраструктуре компаний JD, Meituan и Xiaohongshu).
- Возможность изменения схемы хранения и обновления данных без остановки или влияния на выполняемые операции.
- Поддержка TTL для ограничения времени жизни данных.
- Команды для управления настройками и хостами хранения.
- Инструменты для управления работами и планированием запуска работ (из работ пока поддерживаются COMPACT и FLUSH).
- Операции поиска полного пути и кратчайшего пути между заданными вершинами.
- Интерфейс OLAP для интеграции со сторонними платформами аналитики.
- Утилиты для импорта данных из файлов CSV или из Spark.
- Экспорт метрик для мониторинга при помощи Prometheus и Grafana.
- Web-интерфейс Nebula Graph Studio для визуализации операций с графом, навигации по графу, проектирования схемы хранения и загрузки данных[4].
Примечания
Подрядчики-лидеры по количеству проектов
SAP CIS (САП СНГ) (38)
Softline (Софтлайн) (35)
РДТЕХ (33)
BeringPro (БерингПойнт) ранее BearingPoint Russia (28)
ФОРС - Центр разработки (25)
Другие (733)
Сапиенс солюшнс (Sapiens solutions) (7)
BeringPro (БерингПойнт) ранее BearingPoint Russia (3)
Navicon (Навикон) (3)
Softline (Софтлайн) (2)
Wone IT (ранее SoftwareONE Россия, СофтвэрУАН и Awara IT Russia, Авара Ай Ти Солюшенс) (2)
Другие (35)
Группа Борлас (Borlas) (1)
Диасофт (Diasoft) (1)
КРИТ (KRIT) (1)
Arenadata (Аренадата Софтвер) (1)
Корус Консалтинг (1)
Другие (20)
Распределение вендоров по количеству проектов внедрений (систем, проектов) с учётом партнёров
Oracle (44, 179)
SAP SE (6, 178)
Microsoft (23, 142)
PostgreSQL Global Development Group (14, 126)
Постгрес профессиональный (ППГ, Postgres Professional) (6, 40)
Другие (263, 243)
SAP SE (3, 11)
Microsoft (3, 11)
PostgreSQL Global Development Group (3, 10)
Oracle (2, 4)
Постгрес профессиональный (ППГ, Postgres Professional) (2, 3)
Другие (10, 13)
PostgreSQL Global Development Group (4, 9)
Постгрес профессиональный (ППГ, Postgres Professional) (2, 6)
VK Tech (ранее VK Цифровые технологии, ВК Цифровые технологии и Mail.ru Цифровые технологии) (2, 3)
Arenadata (Аренадата Софтвер) (3, 2)
Apache Software Foundation (ASF) (2, 2)
Другие (9, 9)
PostgreSQL Global Development Group (3, 13)
Постгрес профессиональный (ППГ, Postgres Professional) (1, 6)
Arenadata (Аренадата Софтвер) (3, 5)
Apache Software Foundation (ASF) (3, 4)
Тантор Лабс (Tantor Labs) (2, 3)
Другие (8, 10)
PostgreSQL Global Development Group (4, 11)
Arenadata (Аренадата Софтвер) (3, 6)
VMware (2, 6)
Постгрес профессиональный (ППГ, Postgres Professional) (2, 5)
Диасофт (Diasoft) (1, 3)
Другие (6, 7)
Распределение базовых систем по количеству проектов, включая партнерские решения (проекты, партнерские проекты)
Oracle Database - 143 (106, 37)
Microsoft SQL Server - 135 (104, 31)
PostgreSQL СУБД - 126 (80, 46)
SAP NetWeaver Business Warehouse (SAP BW/4HANA) - 103 (103, 0)
SAP HANA (High Performance Analytic Appliance) - 76 (72, 4)
Другие 74
PostgreSQL СУБД - 10 (7, 3)
Microsoft SQL Server - 10 (9, 1)
SAP NetWeaver Business Warehouse (SAP BW/4HANA) - 8 (8, 0)
Oracle Database - 3 (3, 0)
SAP HANA (High Performance Analytic Appliance) - 3 (3, 0)
Другие 6
PostgreSQL СУБД - 9 (2, 7)
Tarantool Платформа in‑memory вычислений - 3 (2, 1)
Oracle Database - 3 (2, 1)
VMware Tanzu Greenplum - 2 (0, 2)
Firebird (database server) - 1 (0, 1)
Другие -6
PostgreSQL СУБД - 13 (4, 9)
VMware Tanzu Greenplum - 3 (0, 3)
Apache Hadoop - 2 (1, 1)
ClickHouse - система управления базами данных (СУБД) - 2 (2, 0)
Apache Kafka - 2 (2, 0)
Другие -9
PostgreSQL СУБД - 11 (5, 6)
VMware Tanzu Greenplum - 5 (0, 5)
Diasoft Digital Q.Database - 3 (3, 0)
Apache Hadoop - 2 (0, 2)
Сбер Platform V Pangolin - 2 (2, 0)
Другие -10