Увидела свет многоцелевая открытая СУБД ArangoDB 2.4, предоставляющая гибкие модели хранения документов, графов и данных в формате ключ-значение. Работа с базой осуществляется через SQL-подобный язык запросов AQL или через специальные расширения на языке JavaScript. Средства для хранения данных соответствуют требованиям ACID (атомарность, согласованность, изолированность, надежность), поддерживают транзакции и обеспечивают как горизонтальную, так и вертикальную масштабируемость. Управление СУБД может производиться через web-интерфейс или консольный клиент ArangoSH. Код ArangoDB распространяется под лицензией Apache 2. Проект написан на языках Си и JavaScript.

Ключевые особенности ArangoDB:

  • Отсутствие необходимости определения схемы хранения данных (Schema-free), данные структурируются в форме документов, в которых метаданные и информация о структуре отделена от пользовательских данных;
  • Возможность использования ArangoDB в качестве сервера для web-приложений на языке JavaScript. Поддержка доступа к базе через REST/Web API;
  • Использование JavaScript как для обращающихся к БД браузерных приложений, так и для обработчиков, выполняемых на стороне СУБД;
  • Многопоточная архитектура, распределяющая нагрузку на все ядра CPU;
  • Гибкая модель хранения данных, в которой могут быть комбинированы пары ключ-значение, документы и параметры, определяющие связи между записями (предоставляются средства для обхода вершин графа);
  • Возможность выбора типа индекса, соответствующего решаемым задачам (например, можно использовать индекс для полнотекстового поиска);
  • Настраиваемая надёжность: приложение само может определять, что для него важнее: более высокая надёжность или более высокая производительность;
  • Эффективное хранилище, в котором в полной мере используются возможности современного оборудования (например, SSD-накопители) и могут применяться большие кэши;
  • Транзакции: возможность запускать запросы сразу для нескольких документов или коллекций с опциональной согласованностью транзакций и изоляцией;
  • Поддержка репликации и шардинга: возможность создания master-slave конфигураций и разнесения наборов данных на разные серверы в зависимости от определённого признака.

В новом выпуске осуществлён переход на новую версию движка V8, что позволило добавить поддержку конструкций ECMAScript 6, таких как итераторы, тип symbol, типизированные массивы, списки (sets) и хэши (maps). В реализации языка AQL увеличена эффективность групповых запросов при использовании выражения COUNT, улучшена обработка индексов при фильтрации запросов, добавлено выражение RETURN для передачи значений из запросов модификации данных. Добавлен новый JavaScript-драйвер arangojs 3.0. Представлен новый фреймворк Foxx-Generator, позволяющий создавать Web API и простые web-приложения поверх ArangoDB. В web-интерфейсе полностью переработана вкладка для управления приложениями, в том числе обеспечена возможность генерации приложений и установки программ из Github и zip-архивов.



Источник: http://www.opennet.ru/opennews/art.shtml?num=41494