В последнее время все большую популярность набирают СУБД, не опирающиеся на классическую реляционную модель. В их числе серверы БД для обработки данных, имеющих структуру графов. Согласно прошлогоднему прогнозу Forrester Research, к 2017 г. четверть предприятий будет использовать для своих приложений нового поколения СУБД такого типа. Одним из наиболее популярных продуктов данной категории является опенсорсная СУБД Neo4j, разработанная компанией Neo Technology. Только что объявлено о выходе очередной ее версии 2.3.
Вендор характеризует Neo4j как встроенную дисковую транзакционную СУБД, реализованную на Java и способную эффективно работать с данными, структура которых естественным образом описывается не набором таблиц, а графами. Она поставляется в трех редакциях: Community, Enterprise и Government. Первая бесплатна, но поддерживает только одноузловые серверные конфигурации и не позволяет делать горячее резервное копирование. Вторая не имеет подобных ограничений, но требует покупки лицензии, если использующее ее приложение не является опенсорсным. Третья выступает в роли расширения редакции Enterprise, настроенного на применение в госсекторе.
В версии 2.3 за счет того, что объектный кэш данных вынесен за пределы Java-машины на более низкий уровень, существенно улучшены производительность и масштабируемость. Как пояснили представители вендора, если хранить кэш внутри Java-машины, то при больших нагрузках (запись и чтение гигабайтов данных в секунду) он переполняется и существенные процессорные ресурсы тратятся на уборку мусора. Еще одно заметное новшество связано с более качественной стоимостной оптимизацией планов обработки запросов на специализированном декларативном языке Cypher, разработанном специалистами Neo Technology для Neo4j и переданном в нынешнем году сообществу Open Source в рамках нового проекта openCypher. Его участниками наряду с Neo Technology уже стали такие известные компании, как Oracle и Tableau.
Важным событием в Neo Technology считают заключение партнерского договора с IBM, цель которого — выпуск мощных систем на процессорах Power8 с большими объемами ОЗУ, настроенных и сконфигурированных для оптимальной эксплуатации экстремально больших БД под управлением граф-ориентированной Neo4j.