Я майже на тій же стадії, що і ти. Початок нового проекту з MongoDB. Я маю близько 7 тижнів досвіду. Це те, що я знайшов дуже корисним:
Використовуйте Mongoid замість Mongomapper
http://mongoid.org/
Документація відмінна. Серйозно, чудово. На читання всієї документації у вас піде близько 15 хв, і ви отримаєте дуже точне уявлення про те, що ви можете робити, а що не можна робити з Mongoid.
Завтра буде випущений кандидат на випуск нової основної версії mongoid. Це збирається принести багато корисного.
Я використовую Rails 3. Щоб встановити версію для розробки, додайте це у свій gem-файл:
самоцвіт 'mongoid', "~> 2.0.0.beta"
Поточна бета-версія - 20, але, як я вже сказав, завтра є кандидат на звільнення.
Також я рекомендую вам також приєднатися до групи Google. У ньому низький трафік, і люди дуже готові відповісти на будь-яке питання. Наприклад, я продемонстрував їм свій перший дизайн моделі DB, і вони дали мені багато способів це вдосконалити. Творець Mongoid також відповідає на ваші запитання.
У двох словах: Велика громада.
Існує такий плагін, який дозволяє використовувати Machinist з mongo:
https://github.com/nmerouze/machinist_mongo
Працює досить добре.
gem 'machinist_mongo', :require => 'machinist/mongoid',
:git => 'http://github.com/nmerouze/machinist_mongo.git',
:branch => 'machinist2'
Ви можете використовувати Підробку з Машиністом. Чудова суміш.
https://github.com/sevenwire/forgery
Ще одне, що я хочу сказати. Я походжу із світу баз даних відношень, тому на початку це звучало по-справжньому дивним: Ви можете зберігати файли в базі даних mongo.
Насправді це може бути швидше, ніж керувати ними, як ми робили раніше. Це пов’язано з підтримкою монго шардингу. Шардінг означає, що ви можете використовувати кластер комп'ютерів для обслуговування бази даних Монго. Це безшовно. Господар-раб. Таким чином, ви можете подати файл із багатьох комп’ютерів, кожен з яких надсилає частину. Це дуже добре масштабується :)
Це робиться за допомогою GridFS. http://www.mongodb.org/display/DOCS/GridFS
Mongoid підтримує цю конфігурацію master-slave.
Запитайте мене, чи потрібна вам додаткова інформація.
Редагувати:
Також: http://railscasts.com/episodes/238-mongoid