Релиз СУБД Neo4j 1.3, ориентированной на хранение графов
15 апреля 2011 года
Вышел релиз Neo4j 1.3, высокоэффективной БД для хранения данных в виде графов. Вместо столбцов, строк или ключей и их значений, модель хранения данных представляет собой структуру, похожую на сеть - задаются узлы, их свойства и отношения между собой. БД обеспечивает прекрасную производительность и широкие возможности по масштабированию решения - один сервер может обслуживать несколько миллиардов объектов. При увеличении объёма данных достаточно подключить дополнительный сервер.
Neo4j поддерживает транзакции, индексацию данных и обладает хорошей масштабируемостью - база может обслуживаться кластером из нескольких серверов. Для быстрого обхода узлов разработан специальный фреймворк. Возможна работа как в режиме обособленного сервера (доступ через REST API), так и в виде встраиваемой системы, позволяющей интегрировать функции работы с графом в пользовательские программы. Готовые биндинги распространяются для языков Clojure, Erlang, Gremlin, Groovy, Java, PHP, Python, Ruby и Scala. Код проекта написан на языке Java.
Примечательным новшеством новой в версии является переход на лицензию GPLv3, в ответ на пожелания пользователей системы, утверждавших, что ранее использованная лицензия AGPLv3, накладывает слишком большие ограничения на разработчиков. Например, лицензия AGPL требовала открывать код всех разработок при задействовании Neo4j для организации работы web-сервисов.
Из добавленных в новой версии улучшений можно отметить:
- Расширение ограничения максимального размера графа до 32 миллиардов узлов и 64 миллиардов свойств, чего по заявлению разработчиков достаточно для того чтобы построить граф связи между всеми людьми на земле;
- Применена новая техника организации хранения данных, позволяющая снизить потребление памяти при хранении строк, значительно уменьшить размеры файлов с базой и увеличить производительность за счет уменьшения обращений к диску;
- Переработан управляющий web-интерфейс. Добавлен новый метод визуализации хранимых данных, позволяющий наглядно оценить состав базы и связь между узлами графа;
- В число поддерживаемых алгоритмов поиска наикратчайшего пути в графе включён классический алгоритм Дейкстры;
- Проведена чистка API;
- Улучшена работа фреймворка для обеспечения прохода по узлам графа;
- Расширены возможности API для работы с индексами, REST API и API для создания серверных плагинов.
Источники
править
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.