MongoDB

Поделись знанием:
Перейти к: навигация, поиск
MongoDB
Тип

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

Разработчик

10gen

Лицензия

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

К:Википедия:Статьи без изображений (тип: не указан)

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





Возможности

К:Википедия:Статьи без источников (тип: не указан)

Основные возможности:

Архитектура

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

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

В MongoDB реализована асинхронная репликация в конфигурации «ведущий — ведомый» (англ. master — slave), основанная на передаче журнала изменений с ведущего узла на ведомые. Поддерживается автоматическое восстановление в случае выхода из строя ведущего узла. Серверы с запущенным процессом mongod должны образовать кворум, чтобы произошло автоматическое определение нового ведущего узла. Таким образом, если не используется специальный процесс-арбитр (процесс mongod, только участвующий в установке кворума, но не хранящий никаких данных), количество запущенных реплик должно быть нечётным.

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

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

Прочее

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

Заявляется, что релиз MongoDB 1.0.0 готов к использованию в производстве как в качестве единичного мастера, так и в связках «ведущий — ведомые». Код этого релиза достаточно стабилен и проверен в промышленной эксплуатации на протяжении 1,5 лет[2]. По возможности MongoDB должна быть развернута минимум на двух серверах, используя репликацию Master/Slave[3]. Это обеспечивает наличие актуальных данных при выходе из строя одной из СУБД.

Напишите отзыв о статье "MongoDB"

Примечания

  1. [blog.mongodb.org/post/18510469058/grails-in-the-land-of-mongodb The MongoDB NoSQL Database Blog, Grails in the Land of MongoDB]
  2. [www.nixp.ru/news/9901 MongoDB 1.0 GA — первый релиз новой СУБД — Новости GNU/Linux и Open Source (NIXP.RU)]
  3. [funix.ru/bazy-dannyx/master-slave-replikaciya-mongodb.html Master-Slave репликация MongoDB]

Литература

  • Кайл Бэнкер. MongoDB в действии = MongoDB in Action. — ДМК Пресс, 2014. — 394 с. — ISBN 978-5-97060-057-3.
  • Kristina Chodorow. MongoDB: The Definitive Guide, 2nd Edition. — O'Reilly Media, Inc., 2013. — 432 с. — ISBN 978-1-4493-4468-9.
  • David Hows, Peter Membrey, Eelco Plugge, Tim Hawkins. The Definitive Guide to MongoDB: A complete guide to dealing with Big Data using MongoDB, Third Edition. — Apress, 2015. — 376 с. — ISBN 978-1-4842-1183-0.
  • Eelco Plugge, Peter Membrey, Tim Hawkins. The Definitive Guide to MongoDB: The NoSQL Database for Cloud and Desktop Computing. — Apress, 2010. — 327 с. — ISBN 1-4302-3051-7.
  • Mithun Satheesh; Bruno Joseph D'mello; Jason Krol. Web Development with MongoDB and NodeJS - Second Edition. — Packt Publishing, 2015. — 300 с. — ISBN 978-1-78528-745-9.
  • Steve Hoberman. Data Modeling for MongoDB. — Technics Publications, 2014. — 226 с. — ISBN 978-1-935504-70-2.
  • Mitch Pirtle. MongoDB for Web Development. — Addison-Wesley Professional, 2011. — С. 360. — ISBN 9780321705334.

Ссылки

Сайты и порталы
  • [www.mongodb.org Официальный сайт]  (англ.)
  • [docs.mongodb.org/manual/ Официальная документация]  (англ.)
  • [jsman.ru/mongo-book/ The Little MongoDB Book по-русски]  (рус.)
Прочее
  • [www.mongodb.org/display/DOCS/Admin+UIs GUI инструменты для работы с MongoDB]
  • [krams915.blogspot.co.uk/2011/01/spring-mvc-3-using-document-oriented.html Spring MVC 3: Using a Document-Oriented Database — MongoDB]


Отрывок, характеризующий MongoDB

– Извините, генерал, – перебил его Кутузов и тоже поворотился к князю Андрею. – Вот что, мой любезный, возьми ты все донесения от наших лазутчиков у Козловского. Вот два письма от графа Ностица, вот письмо от его высочества эрцгерцога Фердинанда, вот еще, – сказал он, подавая ему несколько бумаг. – И из всего этого чистенько, на французском языке, составь mеmorandum, записочку, для видимости всех тех известий, которые мы о действиях австрийской армии имели. Ну, так то, и представь его превосходительству.
Князь Андрей наклонил голову в знак того, что понял с первых слов не только то, что было сказано, но и то, что желал бы сказать ему Кутузов. Он собрал бумаги, и, отдав общий поклон, тихо шагая по ковру, вышел в приемную.
Несмотря на то, что еще не много времени прошло с тех пор, как князь Андрей оставил Россию, он много изменился за это время. В выражении его лица, в движениях, в походке почти не было заметно прежнего притворства, усталости и лени; он имел вид человека, не имеющего времени думать о впечатлении, какое он производит на других, и занятого делом приятным и интересным. Лицо его выражало больше довольства собой и окружающими; улыбка и взгляд его были веселее и привлекательнее.
Кутузов, которого он догнал еще в Польше, принял его очень ласково, обещал ему не забывать его, отличал от других адъютантов, брал с собою в Вену и давал более серьезные поручения. Из Вены Кутузов писал своему старому товарищу, отцу князя Андрея:
«Ваш сын, – писал он, – надежду подает быть офицером, из ряду выходящим по своим занятиям, твердости и исполнительности. Я считаю себя счастливым, имея под рукой такого подчиненного».
В штабе Кутузова, между товарищами сослуживцами и вообще в армии князь Андрей, так же как и в петербургском обществе, имел две совершенно противоположные репутации.
Одни, меньшая часть, признавали князя Андрея чем то особенным от себя и от всех других людей, ожидали от него больших успехов, слушали его, восхищались им и подражали ему; и с этими людьми князь Андрей был прост и приятен. Другие, большинство, не любили князя Андрея, считали его надутым, холодным и неприятным человеком. Но с этими людьми князь Андрей умел поставить себя так, что его уважали и даже боялись.
Выйдя в приемную из кабинета Кутузова, князь Андрей с бумагами подошел к товарищу,дежурному адъютанту Козловскому, который с книгой сидел у окна.
– Ну, что, князь? – спросил Козловский.
– Приказано составить записку, почему нейдем вперед.
– А почему?
Князь Андрей пожал плечами.
– Нет известия от Мака? – спросил Козловский.
– Нет.
– Ежели бы правда, что он разбит, так пришло бы известие.
– Вероятно, – сказал князь Андрей и направился к выходной двери; но в то же время навстречу ему, хлопнув дверью, быстро вошел в приемную высокий, очевидно приезжий, австрийский генерал в сюртуке, с повязанною черным платком головой и с орденом Марии Терезии на шее. Князь Андрей остановился.
– Генерал аншеф Кутузов? – быстро проговорил приезжий генерал с резким немецким выговором, оглядываясь на обе стороны и без остановки проходя к двери кабинета.
– Генерал аншеф занят, – сказал Козловский, торопливо подходя к неизвестному генералу и загораживая ему дорогу от двери. – Как прикажете доложить?
Неизвестный генерал презрительно оглянулся сверху вниз на невысокого ростом Козловского, как будто удивляясь, что его могут не знать.
– Генерал аншеф занят, – спокойно повторил Козловский.
Лицо генерала нахмурилось, губы его дернулись и задрожали. Он вынул записную книжку, быстро начертил что то карандашом, вырвал листок, отдал, быстрыми шагами подошел к окну, бросил свое тело на стул и оглянул бывших в комнате, как будто спрашивая: зачем они на него смотрят? Потом генерал поднял голову, вытянул шею, как будто намереваясь что то сказать, но тотчас же, как будто небрежно начиная напевать про себя, произвел странный звук, который тотчас же пресекся. Дверь кабинета отворилась, и на пороге ее показался Кутузов. Генерал с повязанною головой, как будто убегая от опасности, нагнувшись, большими, быстрыми шагами худых ног подошел к Кутузову.
– Vous voyez le malheureux Mack, [Вы видите несчастного Мака.] – проговорил он сорвавшимся голосом.
Лицо Кутузова, стоявшего в дверях кабинета, несколько мгновений оставалось совершенно неподвижно. Потом, как волна, пробежала по его лицу морщина, лоб разгладился; он почтительно наклонил голову, закрыл глаза, молча пропустил мимо себя Мака и сам за собой затворил дверь.
Слух, уже распространенный прежде, о разбитии австрийцев и о сдаче всей армии под Ульмом, оказывался справедливым. Через полчаса уже по разным направлениям были разосланы адъютанты с приказаниями, доказывавшими, что скоро и русские войска, до сих пор бывшие в бездействии, должны будут встретиться с неприятелем.
Князь Андрей был один из тех редких офицеров в штабе, который полагал свой главный интерес в общем ходе военного дела. Увидав Мака и услыхав подробности его погибели, он понял, что половина кампании проиграна, понял всю трудность положения русских войск и живо вообразил себе то, что ожидает армию, и ту роль, которую он должен будет играть в ней.
Невольно он испытывал волнующее радостное чувство при мысли о посрамлении самонадеянной Австрии и о том, что через неделю, может быть, придется ему увидеть и принять участие в столкновении русских с французами, впервые после Суворова.