MongoDB + NoRM - первые впечатления

Решил сегодня разобраться с MongoDB.

Т.к. ставить локально сервер не хотелось начал издалека. Нашёл бесплатный сервер MongoDB - MongoHQ. Хостинг обладает вполне адекватными ценовыми планами(16 МБ данных отдаётся в полном распоряжение разработчику бесплатно).

Итого после регистрации я получил полнофункциональный instance MongoDB.

Начал с поиска удобных GUI для просмотра БД. Вначале скачал MongoExplorer, однако тот наотрез отказался подключатся к удалённому серверу, поэтому выбор пал на MongoVUE. Последний подключился вполне успешно.

Далее я следуя советам статьи:
http://weblogs.asp.net/shijuvarghese/archive/2010/04/16/nosql-with-mongodb-norm-and-asp-net-mvc.aspx

Скачал NoRM, добавил в солюшн. Впрочем это было необязательно, т.к. в  NuGet уже есть пакет с последней версией NoRM.

Итак, написав скромненький сайтик я решил поэксперементировать с Mongo, и какое же было моё разочарование, когда NoRM не захотел подключатся к MongoHQ. Вначале я подумал что я неправильно составил класс. Возможно использовал запрещённые типы, но на самом деле всё оказалось гораздо проще.

Главной причиной проблем была версия Монго. На сервере MongoHQ стояла 1.8.1,а последняя  (и очевидно единственно поддерживаемая) есть 1.8.3, в результате чего операции добавления не работали. Поэтому как только я поставил сервер локально всё магическим образом заработало и обьекты были добавлены в БД.

Итого:
Плюсы:
- Классы автоматически сериализуются в JSON  и добавляются в БД. Писать слой доступа к данным крайне удобно
- БД обладает вполне достойным фреймворком для доступа из .NET (NoRM)

Минусы:
- Всё таки невозможность поддержки 1.8.1 мне непонятна. 

Комментарии

Популярные сообщения из этого блога

Структуры данных ( АВЛ-дерево , обход графа и построение минимального остовного дерева графа)

2D Физика для игр - Separate Axis Theorem

HLSL шейдеры для чайников