MongoDB или MySQL ?
MongoDB или MySQL ?
Всем привет!
Озадачился таким вопросом. Пишу проект в котором будет модуль с сущностями и динамическими атрибутами. Оптимально для этого подходит MongoDB. Со всем остальным справляется MySQL. Пока в голове мысль использовать обе базы данных. Хотелось бы услышать МИНУСЫ MongoDB по сравнению с MySQL?
Озадачился таким вопросом. Пишу проект в котором будет модуль с сущностями и динамическими атрибутами. Оптимально для этого подходит MongoDB. Со всем остальным справляется MySQL. Пока в голове мысль использовать обе базы данных. Хотелось бы услышать МИНУСЫ MongoDB по сравнению с MySQL?
В сознании новичка много возможностей, в сознании эксперта — лишь несколько.
- Stamm
- Сообщения: 407
- Зарегистрирован: 2010.03.14, 18:59
- Откуда: Россия, Москва
- Контактная информация:
Re: MongoDB или MySQL ?
Что значит минусы? Это немного другой продукт =)
Единственное что приходит в голову - это нет транзакций
Единственное что приходит в голову - это нет транзакций
Re: MongoDB или MySQL ?
Я успешно использую mysql + mongodb в пределах одного проекта в зависимости от задачи.
Re: MongoDB или MySQL ?
Если MongoDB так хорош зачем используют MySQL или это дело привычки?Stamm писал(а):Что значит минусы? Это немного другой продукт =)
Единственное что приходит в голову - это нет транзакций
В сознании новичка много возможностей, в сознании эксперта — лишь несколько.
- Stamm
- Сообщения: 407
- Зарегистрирован: 2010.03.14, 18:59
- Откуда: Россия, Москва
- Контактная информация:
Re: MongoDB или MySQL ?
Есть несколько причин для этого.
Первая причина - это надёжность. Чтобы полностью заменить mysql, нужно поднимать 3 инстанса монги, потому что есть верояность, что mongodb упадёт. А MySQL уже пилят много лет и в целом продукт стабильный. Хотя на проекте Яндекс.Диске используют mongodb и не жаловались на субботнике.
Вторая причина - под php драйвер ужасно нестабильный (Вылетал с segmentation fault и с couldnt send query). Мы сейчас юзаем версию 1.2.6, хотя уже есть версия 1.2.12.
А так mongodb мне нравится. Но использовать нужно с умом и в нужных применениях, как собственно и любой другой инструмент.
Первая причина - это надёжность. Чтобы полностью заменить mysql, нужно поднимать 3 инстанса монги, потому что есть верояность, что mongodb упадёт. А MySQL уже пилят много лет и в целом продукт стабильный. Хотя на проекте Яндекс.Диске используют mongodb и не жаловались на субботнике.
Вторая причина - под php драйвер ужасно нестабильный (Вылетал с segmentation fault и с couldnt send query). Мы сейчас юзаем версию 1.2.6, хотя уже есть версия 1.2.12.
А так mongodb мне нравится. Но использовать нужно с умом и в нужных применениях, как собственно и любой другой инструмент.
Последний раз редактировалось Stamm 2012.08.02, 22:55, всего редактировалось 1 раз.
Re: MongoDB или MySQL ?
Ок. Спасибо за консультацию.
В сознании новичка много возможностей, в сознании эксперта — лишь несколько.
Re: MongoDB или MySQL ?
Если использовать обе базы, то по каким критериям распределять их "обязанности" (что где хранить и что для чего лучше использовать)? Можно ли как-то в общем тезисно ответить на этот вопрос?
- Stamm
- Сообщения: 407
- Зарегистрирован: 2010.03.14, 18:59
- Откуда: Россия, Москва
- Контактная информация:
Re: MongoDB или MySQL ?
Если собираетесь использовать сразу две базы, то задумайтесь сразу о синхронизации, тут могут возникнуть трудности.
Монга отлично подходит под
* логи
* данные, которые организовывались через EAV на РСУБД, например товары, у которых разный набор характеристик
Я бы очень не рекомендовал внутри одного продукта, читай одного веб-сайта делать модели с разными БД. Тут будет больше мороки, чем пользы.
Монга отлично подходит под
* логи
* данные, которые организовывались через EAV на РСУБД, например товары, у которых разный набор характеристик
Я бы очень не рекомендовал внутри одного продукта, читай одного веб-сайта делать модели с разными БД. Тут будет больше мороки, чем пользы.
Re: MongoDB или MySQL ?
Спасибо, Stamm. В общем, нужно смотреть, работы с какими данными будет больше, и исходя из этого выбирать что-то одно (хотя подход с 2-мя БД широко используется). Просто термин Not Only SQL как бы намекает...)
-
- Сообщения: 130
- Зарегистрирован: 2012.06.13, 12:48
Re: MongoDB или MySQL ?
Да лааадно. Ни разу не падала, не выдумывайте. Если бы она падала так ак вы пишете, тот же яндекс бы не использовал.что есть верояность, что mongodb упадёт
обрабатывали на пхп и пихали в монгу огромные XML-и, ничего не падало никогда, хз с какой версией драйвера правда. Но все же - не выдумывайте. Это ваши локальные проблемы, а не глобальные.Вылетал с segmentation fault и с couldnt send query
А вы не понимаете сути. Монго и мускл -это 2 кардинально разные бд, с кардинально разным подходом к хранению данных. У них разные цели и предназначение.Если MongoDB так хорош зачем используют MySQL или это дело привычки?
И если вы не знаете точно, то монго вам не нужна, а вероятно будет достаточно использовать паттерн EAV,весьма красивая реализация которого есть на Yii - viewtopic.php?f=9&t=383 и https://github.com/yiiext/eav-behavior - я думаю вам этого будет достаточно.
Эти 2 базы бывают используют вместе, для определенного профита, но надо точно понимать что и зачем. Чем вы явно похвастаться не можете.
Re: MongoDB или MySQL ?
У меня конечно не большой опыт работы с монго, но:
Из плюсов:
- ИМХО, она реально удобней при работе с динамическими сущностями
- Ни разу не падала
Из минусов:
- Кода придется писать больше
- Нет удобных программ для работы с монго (редактирование, просмотр данных, составление запросов)
Из плюсов:
- ИМХО, она реально удобней при работе с динамическими сущностями
- Ни разу не падала
Из минусов:
- Кода придется писать больше
- Нет удобных программ для работы с монго (редактирование, просмотр данных, составление запросов)
Re: MongoDB или MySQL ?
Пользуюсь rockmongo. Не фонтан, конечно, но за неимением лучшего... Впрочем, вы наверное, в курсе)- Нет удобных программ для работы с монго (редактирование, просмотр данных, составление запросов)
- Stamm
- Сообщения: 407
- Зарегистрирован: 2010.03.14, 18:59
- Откуда: Россия, Москва
- Контактная информация:
Re: MongoDB или MySQL ?
Накладно =) Если у вас не падала, то это не значит, что нет вероятности её падения. У нас тоже не падала.YaZabylStariyNick писал(а):Да лааадно. Ни разу не падала, не выдумывайте. Если бы она падала так ак вы пишете, тот же яндекс бы не использовал.что есть верояность, что mongodb упадёт
Поищите по слову crash в монговской джире.
Падение монги решается реплика-сетом, но это нужно как минимум 3 тачки, ну или 3 демона на одной машине, т.е. нужно заморочить админа, если такой имеется. А если нет - то самому. Вот что я имел ввиду.
Я не выдумываю, я говорю как есть. Начали использовать версию 1.2.8. Она бажила и пых вылетал с segmentation fault. Нашли такую же ошибку в интернетах, человек даунгреднулся - и у него всё заработало. Также поступили, сначала поставили 1.2.7 - глючила также, поставили 1.2.6 - перестала глючить. Потом я решил на одном сервере обновить до 1.2.11 - также падала, откатилсь. Это факт, а не локальные проблемы. Локальная проблема - это когда у меня на маке падает, а на CentOs не падает. А если падает и там, и там, то это глобальная проблема, но в каких то определённых ситуациях, которые мы там и не определили.YaZabylStariyNick писал(а):обрабатывали на пхп и пихали в монгу огромные XML-и, ничего не падало никогда, хз с какой версией драйвера правда. Но все же - не выдумывайте. Это ваши локальные проблемы, а не глобальные.Вылетал с segmentation fault и с couldnt send query
У вас интересная точка зрения: у меня этого не было, значит этого не может быть в принципе. Я не считаю эту точку зрения правильной.
И не выдумывайте, что я выдумал!
-
- Сообщения: 130
- Зарегистрирован: 2012.06.13, 12:48
Re: MongoDB или MySQL ?
Спорно на самом деле. Монго своей структурой не дает сделать запросов на десятки строк. А вот скл запросы с кучей джоинов..mitaichik писал(а): Из минусов:
- Кода придется писать больше
На вкус и цветmitaichik писал(а): - Нет удобных программ для работы с монго (редактирование, просмотр данных, составление запросов)
rockmongo, phpmoadmin.
Мне так было достаточно самого mongoshell-a к-й вместе с ней идет.
-
- Сообщения: 130
- Зарегистрирован: 2012.06.13, 12:48
Re: MongoDB или MySQL ?
Я честно не знаю про версии к-й юзались у нас, это было прошлой осенью\зимой. Но тогда под дебианом на сервере и убунтами на рабочиз машинах все работало по сути из коробки с последними на тот момент версиями драйверов. А вообще печально вамиописанное, да.1.2.7 - глючила также, поставили 1.2.6 - перестала глючить
Мы смело держали в монге пару десятков гб данных, нормально вроде все было. И у вас все было нормально А то что у кого-то там где-то.. Так уверен что и по мускл можно нагуглить ошибки что он не работает у кого-то.Если у вас не падала, то это не значит, что нет вероятности её падения. У нас тоже не падала.