MongoDB

MongoDB
MongoDB
Logo-mongoDB.png
Логотип MongoDB
Тип

Документо-ориентированная СУБД

Разработчик

MongoDB

Написана на

C++

Операционная система

Кроссплатформенное программное обеспечение

Последняя версия

2.2.2 (27 ноября 2012)

Лицензия

GNU AGPL (СУБД) и Apache License (драйверы)

Сайт

www.mongodb.org

MongoDB — документо-ориентированная система управления базами данных (СУБД) с открытым исходным кодом, не требующая описания схемы таблиц. Написана на языке C++ и распространяется в рамках лицензии Creative Commons.

Содержание

Философия

При разработке авторы исходили из необходимости специализации баз данных, благодаря чему им удалось отойти от принципа «один размер подо всё». За счёт минимизации семантики для работы с транзакциями появляется возможность решения целого ряда проблем, связанных с недостатком производительности, причём горизонтальное масштабирование становится проще. Используемая модель документов хранения данных (JSON/BSON) проще кодируется, проще управляется (в том числе за счёт применения т. н. «бессхемного стиля» (англ. schemaless style)[1]), а внутренняя группировка релевантных данных обеспечивает дополнительный выигрыш в быстродействии. Нереляционный подход весьма удобен для создания баз данных, у которых горизонтальное масштабирование подразумевает разворачивание на множестве машин. Возможность обеспечивать наилучшую производительность должна существовать параллельно с поддержкой более обширной функциональности, чем это позволяет использование пар «ключ-значение» (в чистом виде). Технология баз данных должна работать везде, начиная с серверов пользователя и виртуальных машин и заканчивая облачными технологиями[2].

MongoDB, по мнению разработчиков, должна заполнить разрыв между простыми хранилищами данных типа «ключ-значение» (быстрыми и легко масштабируемыми) и большими РСУБД (со структурными схемами и мощными запросами).

Возможности

Основные возможности данной СУБД:

Архитектура

СУБД управляет наборами JSON-подобных документов, хранимых в двоичном виде в формате BSON. Хранение и поиск файлов в MongoDB происходит благодаря вызовам протокола GridFS. Подобно другим документо-ориентированным СУБД (CouchDB и др.), MongoDB не является реляционной СУБД. Среди других отличий от традиционных реляционных СУБД:

  • Отсутствует оператор «join». Обычно данные могут быть организованы более денормализованным способом, но на разработчиков ложится дополнительная нагрузка по обеспечению непротиворечивости данных.
  • Нет такого понятия, как «транзакция». Атомарность гарантируется только на уровне целого документа, т.е. частичное обновление документа произойти не может.
  • Отсутствует понятие «изоляции». Любые данные, которые считываются одним клиентом, могут параллельно изменяться другим клиентом[3].

История разработки

Сотрудничество

6 Июня 2012 г. компания разработчик MongoDB, 10gen, начала длительное сотрудничество с корпорацией Microsoft, предоставив MongoDB ее облаку Windows Azure. В результате этого партнерства разработчики получили простой установщик для запуска MongoDB на виртуальных машинах Windows Azure. В дополнение к расширению опций облака и хостинга, доступных разработчикам MongoDB, этот шаг объединяет возможности ведущей базы данных NoSQL с технологиями Microsoft, включая Windows Azure, .NET и другие технологии с открытым исходным кодом, которые поддерживает Microsoft.[4]

Прочее

Имеется подробная и качественная документация, большое число примеров и драйверов под популярные языки Java, Node.js, C++, C#, PHP, Python, Perl, Ruby[5], Grails&Groovy[6].

Заявляется, что релиз MongoDB 1.0.0 готов к использованию в производстве как в качестве единичного мастера, так и в связках master/slave. Код этого релиза достаточно стабилен и проверен в промышленной эксплуатации на протяжении 1,5 лет[7]. По возможности MongoDB должна быть развернута минимум на двух серверах, используя репликацию Master/Slave[8]. Это обеспечивает наличие актуальных данных при выходе из строя одной из СУБД. MongoDB — продукт довольно молодой, и в нем встречаются ошибки, появляются новые возможности и т. д. Характерен высокий темп разработки (проект пишут не только волонтеры, но и компания людей на полной занятости).[9] Компания-разработчик предоставляет платные поддержку, хостинг, консультации.

Примечания

Литература

См. также

Ссылки

Сайты и порталы
Прочее

Wikimedia Foundation. 2010.

Игры ⚽ Поможем написать курсовую

Полезное


Смотреть что такое "MongoDB" в других словарях:

  • MongoDB — Developer(s) 10gen Initial release 2009 Stable release 2.0.1 / October 22, 2011; 31 days ago ( …   Wikipedia

  • MongoDB — Entwickler 10gen Erscheinungsjahr 2009 Betriebssystem Cross platform Programmier­sprache …   Deutsch Wikipedia

  • MongoDB — Développeurs 10gen Première version 2009 Dernière version …   Wikipédia en Français

  • Список версий MongoDB — Значимость предмета статьи поставлена под сомнение. Пожалуйста, покажите в статье значимость её предмета, добавив в неё доказательства значимости по частным критериям значимости или, в случае если частные критерии значимости для… …   Википедия

  • Cloud database — A cloud database is a database running on Cloud Computing platform, such as Amazon EC2, GoGrid and Rackspace. There are two common deployment models: Users can run databases on the cloud independently, using a Virtual Machine image, or they can… …   Wikipedia

  • CouchDB — Apache CouchDB Тип Документо ориентированная СУБД Автор …   Википедия

  • NoSQL — En informatique, NoSQL est un buzzword pour désigner une catégorie de système de gestion de base de données (abr. SGBD) destinés à manipuler des bases de données géantes pour des sites web de très grande audience tels que Google, Amazon.com,… …   Wikipédia en Français

  • Document-oriented database — A document oriented database is a computer program designed for storing, retrieving, and managing document oriented, or semi structured data, information. Document oriented databases are one of the main categories of so called NoSQL databases and …   Wikipedia

  • Firebird — У этого термина существуют и другие значения, см. Firebird (значения). Firebird Логотип Firebird Тип Реляционная СУБД Разработчик Сообщество Firebird Напис …   Википедия

  • MongoHQ — Type Private Founder Ben Wyrosdick Jason McCay Headquarters Mountain View, California, United States …   Wikipedia


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»