Представлен (http://blog.mongodb.org/post/82092813806/mongodb-2-6-our-big...) релиз ориентированной на хранение документов высокопроизводительной и высокомасштабируемой СУБД MongoDB 2.6 (http://www.mongodb.org), занимающей нишу между быстрыми и масштабируемыми системами, оперирующими данными в формате ключ/значение, и реляционными СУБД, функциональными и удобными в формировании запросов. Код MongoDB написан на языке C++ и распространяется в рамках лицензии AGPLv3.MongoDB поддерживает хранение документов в JSON-подобном формате, имеет достаточно гибкий язык для формирования запросов, может создавать индексы для различных хранимых атрибутов, эффективно обеспечивает хранение больших бинарных объектов, поддерживает журналирование операций по изменению и добавлению данных в БД, может работать в соответствии с парадигмой Map/Reduce, поддерживает репликацию и построение отказоустойчивых конфигураций.
В MongoDB имеются встроенные средства по обеспечению шардинга (распределение набора данных по серверам на основе определенного ключа), комбинируя который репликацией данных можно построить горизонтально масштабируемый кластер хранения, в котором отсутствует единая точка отказа (сбой любого узла не сказывается на работе БД), поддерживается автоматическое восстановление после сбоя и перенос нагрузки с вышедшего из строя узла. Расширение кластера или преобразование одного сервера в кластер производится без остановки работы БД простым добавлением новых машин.
По сравнению с прошлым выпуском в MongoDB 2.6 внесены следующие значительные улучшения (http://docs.mongodb.org/manual/release-notes/2.6/):
- Полностью переписан движок выполнения запросов к базе с целью увеличения масштабируемости и упрощения сопровождения кодовой базы. Реализована поддержка пересечения индексов (http://docs.mongodb.org/master/core/index-intersection/), которая стала первым шагом к созданию планировщика сложных запросов. В MongoDB 2.6 также заложены возможности для включения в следующем выпуске значительных улучшений в области обеспечения параллельной обработки запросов и реализации блокировок на уровне отдельных документов.
- Расширены возможности по агрегированию данных. Реализована возможность возврата результирующих наборов любого размера путем возврата курсора или записи вывода в коллекцию. При обеспечении агнерирования данных теперь допустимо использовать переменные или новые операторы для обработки наборов и редактирвоания данных. Для анализа выполнения операций агрегирования добавлена поддержка оператор explain;
- Включен по умолчанию механизм поиска текста в документах с использованием специального типа индексов "text", допускающего выполнение поисковых запросов в режиме реального времени с использованием стемминга и токенизации, в том числе для русского языка. Модернизирован формат индекса "text";
- Реализация операций добавления (insert) и обновления данных (update) расширена в направлении увеличения непротиворечивости изменённых данных (например, обеспечено сохранение порядка следования полей в документе). При обновлении данных обеспечена возможность использования операторов $bit, $min, $max, $currentDate, $mul;
- Представлен новый протокол для выполнения операций записи, предоставляющий улучшенные средства пакетной записи (http://docs.mongodb.org/master/reference/method/Bulk/#Bulk);
- Для платформы Windows началось формирование пакетов в формате MSI;
- Расширены возможности сервиса MMS (https://mms.mongodb.com/help-hosted/v1.4/management/changelog/) (MongoDB Management Service), направленного на упрощение управления экземплярами MongoDB. В дополнение к ранее доступным средствам мониторинга в MMS добавлены компоненты для организации резервного копирования и отката изменений на определённый момент времени. В будущем ожидается появление интерфейса для для автоматизации управления кластерами, использующими репликацию или шардинг.
- Добавлена поддержка аутентификации с использованием LDAP, x.509 и Kerberos, что упрощает интеграцию MongoDB в существующие инфраструктуры предприятий, использующих единый механизм аутентификации;
- Добавлена поддержка TLS-шифрования трафика при выполении операций обновления кластера и при обращении к mongod и mongos. Повышены требования к качеству используемых шифров (минимум 128 бит). По умолчанию отключена возможность обращения к интерфейсу без шифрования по http;
- Представлена новая модель авторизации, позволяющая создавать собственные роли (User-Defined Roles) и определять привилегии пользователей на уровне доступа к коллекциям. Реализована глобальная система управления пользователями, обеспечивающая хранения всех пользовательских ролей в административной БД и предоставляющая новые команды для управления пользователями и ролями.
URL: http://blog.mongodb.org/post/82092813806/mongodb-2-6-our-big...
Новость: http://www.opennet.dev/opennews/art.shtml?num=39524