Задать вопрос

В последнее время появилось много критики Монго. С чем связано это?

В последнее время появилось много критики Монго. С чем связано это? Раньше она всем нравилась, а сейчас столько негатива о не слышу.
  • Вопрос задан
  • 9015 просмотров
Подписаться 10 Оценить 1 комментарий
Решения вопроса 1
@baadf00d
эйфория от новых возможностей прошла и вскрылись недостатки, на мой взгляд основные их них:
— Слабая производительность на 1-серверной БД. Особенно заметно на map-reduce по данным, которые полностью влезли в память.
— Особенности документо-ориентированной структуры. Многие переходили с табличных БД и тут понеслась: сначала радость, что не надо возиться со структурой, а потом расплата — в одной коллекции куча разных объектов и приложение регулярно читает из вроде бы известной коллекции что-то для себя неожиданное (очень старые объекты, некорректно измененные и т.п.).
— Целостность данных. Кто-то привык, что БД контролирует этот вопрос, вешают констрейнты и ловят ошибки в логе в случае какой промашки по части бизнес-логики. Монга же ничего такого сама не контролирует, ну и получаются внутри БД ссылки на объекты, которых нет.
— Отсутствие полноценных транзакций. Те, кто бросились все хранить в монге с ужасом поняли, что для биллинга нужно что-то другое. (должен оговориться, что не все пока поняли)

По моему мнению отказаться от классической реляционной БД в пользу монги может позволить далеко не каждый проект. Если перетаскивать какой-нибудь небольшой интернет-магазин, то с бОльшей вероятностью это принесет боль и страдание нежели ожидаемый профит. Эффективным решением будет параллельное использование монги и реляционной БД, но чтобы это имело смысл — проект должен быть соответствующих размеров. Для небольшого проекта городить такой огород контрпродуктивно.

PS Мое мнение основано на годичном опыте неплотной работы с монгой, опыт работы с реляционными БД — примерно 10 лет.
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
merlin-vrn
@merlin-vrn
Куча недалёких школьников решили, что это серебряная пуля, и стали пихать её туда и туда. А потом выяснилось, что как и любое другое решение, в котором функциональность заведомо ограничена (в данном случае, в пользу скорости), она оказалась совсем не универсальна, и скорость-то, как выяснилось, получается только в определённом, не особенно-то и широком классе задач. Зато неудобства от ограниченной функциональности проявляются везде.

Короче, куча тупой рекламы. От этой рекламы ощущения как от фразы — «давайте встроим в стульчак bluetooth — с ним любая вещь лучше».
Ответ написан
Комментировать
nekipelov
@nekipelov
Сначала все руководствовались слухами, а теперь собственным опытом? :-)

Лично я много раз расстраивался, используя mongo. Уже по коду первый версий видно, что БД пишется далеко не профессиональными программистами (ну а кому еще взбредет в голову переопределять стандартные C функции? пруф: github.com/mongodb/mongo/blob/v1.4/util/assert_util.h, github.com/mongodb/mongo/blob/v1.4/util/allocator.h). Но вроде бы, от версии к версии, с проблемами сталкиваемся все реже. Только вот наш продукт еще на этапе разработки, кто знает, что будет в реальной работе…
Ответ написан
weirdan
@weirdan
Перерекламировали.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы