среда, 5 октября 2011 г.

Mongo vs MsSql часть первая - установка


Не прошло и три года, как я снова решил попробовать вести бложик :) Тем более возникла такая ситуация, с которой я просто не могу не поделиться. Итак начнем.
В последнее время все чаще и чаще слышатся слова NoSql, Mongo, Cassandra и прочие непонятные термины и связанные с ними восторженные крики. Вот и решил я самолично разобраться что же это за зверь такой - NoSql и самое для меня главное, где же его можно применить и как быстро оно работает :) Так как ни с одной NoSql СУБД я до этого не был знаком, то решил взять первую попавшуюся, и это оказалась Mongo.
Первым делом удивил размер этой СУБД - чуть больше 20 метров (для сравнения тот же MS SQL 2008 R2 редакции develop занимает 5,6 ГБ, правда со всеми прилагающимися цыганами).
Второе, что еще сильнее, но уже даже не удивило, а просто поразило - простота установки, точнее полное её отсутствие, за необходимостью. Все что нужно - всего лишь распаковать архив, создать папку для хранения файлов базы и запустить сам сервер, который представляет собой обычное консольное приложение в простейшем случае (скорее всего существует возможность развернуть и в виде службы, но мне пока это не надо).
Как ни странно, но в эти 20 метров дистрибутива входит еще и среда исполнения запросов, а по совместительству и админка СУБД, так же выполненная в виде консольного приложения.
Итак, попробую составить некоторую таблицу сравнения Mongo с MSSQL:
ПоказательMS SQL Server 2008R2 developMongo DB 2.0
Дистрибутив
Размер дистрибутива5,6 ГБ20,2 МБ
Скорость установки20-30 минутмоментально
Утилита администрирования
Графический интерфейсЕстьНет
ИнтелисенсЕсть, но постоянно отваливается так, что скорее "нет", чем "есть"Есть, и не отваливается

Но на самом деле все, что выше перечислил не особо сильно характеризует СУБД, да размер отличается на несколько порядков, но кого он волнует в нынешнее время, ведь по большому счету, что 5ГБ, что 20 метров - качаешь то один раз на время установки. Скорость установки - да тоже, раз в жизни сервера. ГУИ админки в сиквеле графическое конечно, но такое убогое, что и консольная монга не особо то и сильно напрягает (кто начал плеваться и брызжать слюной - попробуйте PL SQL developer для оракла или хотя бы EMS Manager, а потом поговорим). Так что по результатам, первого раунда и конечно же, только с моей точки зрения - победила дружба :)

Наверно, первая часть получилась не особо познавательной и малополезной для прикладного программиста, но для введения в тему думаю годится. Буду очень рад любым отзывам и здоровой критике. В следующем посте будут уже более интересные эксперименты производительности по вставке данных, меня они очень сильно удивили, так что ждите... и может даже не три года

3 комментария:

Unknown комментирует...

Вот вы говорите о якобы простоте установки из архива. Я категорически не согласен. Удобно, это когда запустил файл с расширением MSI, нажал несколько раз кнопку Далее, а в конце установки, которая занимает не более 10 секунд увидел окно с описанием параметров доступа: логин, пароль, порт.

Семён Кирюшин комментирует...

Такое впечатление, что Вы никогда сиквел не ставили. Но, конечно, дело вкуса, мне гораздо проще прописать конфиги в файле и запустить программу, чем тыкать по бесполезным кнопкам "Далее" (по сути то из наверно 10 диалоговых окон в момент установки сиквела полезных 2-3, да и установка там совсем не 10 секунд). И да, потом этот конфиг элементарно копируется на другой сервер и опять все готово, а сколько Вам потребуется время, чтобы перенести сиквел на другую машину, сохранив всю конфигурацию, часа два?

Unknown комментирует...

Одним из важных отличий автоматической установки является автоматическое занесение в автозагрузку. Кроме того, любой системный администратор Debian вам расскажет хорошо ли ставить софт вручную... Ставить нужно из пакетов!