Sono quasi allo stesso livello in cui sei tu. Avvio di un nuovo progetto con MongoDB. Ho circa 7 settimane di esperienza. Questo è quello che ho trovato molto utile:
Usa Mongoid invece di Mongomapper
http://mongoid.org/
La documentazione è eccellente. Sul serio, eccellente. Dovrebbero volerci circa 15 minuti per leggere tutta la documentazione e avrai un'idea molto precisa di cosa puoi e non puoi fare con Mongoid.
Domani verrà rilasciata la release candidate per una nuova versione principale di mongoid. Porterà molte cose utili.
Sto usando Rails 3. Per installare la versione di sviluppo aggiungilo al tuo file gem:
gem "mongoid", "~> 2.0.0.beta"
L'attuale beta è 20, ma come ho detto, domani c'è la release candidate.
Inoltre ti consiglio di unirti anche al gruppo Google. Ha poco traffico e le persone sono molto disponibili a rispondere a qualsiasi domanda. Ad esempio, ho mostrato loro il mio primo progetto di modello di DB e mi hanno dato molti modi per migliorarlo. Anche il creatore di Mongoid risponde alle tue domande.
In due parole: grande comunità.
C'è questo plugin che ti permette di usare Machinist con mongo:
https://github.com/nmerouze/machinist_mongo
Funziona abbastanza bene.
gem 'machinist_mongo', :require => 'machinist/mongoid',
:git => 'http://github.com/nmerouze/machinist_mongo.git',
:branch => 'machinist2'
Puoi usare la contraffazione con Machinist. Fantastico mix.
https://github.com/sevenwire/forgery
Un'altra cosa che voglio dire. Vengo da un mondo di database di relazioni, quindi all'inizio sembrava davvero strano: puoi salvare i file in un database mongo.
In effetti, potrebbe essere più veloce che gestirli come eravamo soliti fare. Ciò è dovuto al supporto di mongo per lo sharding. Sharding significa che puoi utilizzare un cluster di computer per servire il database Mongo. È senza soluzione di continuità. Master-slave. Quindi puoi servire un file da molti computer, ognuno dei quali ne invia una parte. Si adatta molto bene :)
Questo viene fatto usando GridFS. http://www.mongodb.org/display/DOCS/GridFS
Mongoid supporta quella configurazione master-slave.
Chiedimi se hai bisogno di maggiori informazioni.
Modificare:
Inoltre: http://railscasts.com/episodes/238-mongoid