bonjour,
sur le point 'pas de condition auto-référentielle' il me semble que c'est
possible :
db.mycollection.find({$where : 'this.a > this.b'})
http://www.mongodb.org/display/DOCS/Advanced+QueriesLe 2 mars 2012 09:18, David Bourguignon <[email protected]> a écrit : > > Déjà, il faut bien être conscient des limitations de mongoDB : > > - pas de jointure, on ne peut manipuler qu'une collection à la fois, ce > qui implique souvent de la duplication de données, ou des traitement en > Ruby à côté. > - pas de condition auto-référentielle : impossible de trouver toutes les > lignes où la date de mise à jour est supérieure à la date de création, par > exemple. > - pas de transactions (l'écriture peut être atomique, mais une seule > action) > - pas d'intégrité référentielle > > Toutes ces limitations peuvent être un problème ou pas, selon ce qu'on a à > faire. Par contre il faut bien être conscient des limites. > > Le NoSQL, c'est guère plus que la réinvention des base de données > hiérarchiques qui étaient utilisées avant les base de données > relationnelles. > Celles-ci ont été inventer pour une raison. > > A chacun de savoir les compromis qu'il fait. > > ++ > David > > > Le 1 mars 2012 16:13, Guirec Corbel <[email protected]> a écrit : > > Bonjour et merci pour ta réponse. >> >> Effectivement je mélange peut être un peu tout. Je pense que ce qui me >> pose vraiment un problème ce sont les requêtes spécifiques aux bases de >> données. Dans mon application je joue beaucoup avec les date, les mois et >> les années. Passé à une solution comme mongodb signifie que je choisis une >> base de données et que je ne n'occupe plus du reste. C'est une solution un >> peu drastique. >> >> Pour ce qui est des gems, j'ai vu qu'il existait des solutions pour la >> plus part d'entre elle. Je trouve que cette solution ressemble à de la >> bidouille et ça risque de s'avérer difficile si je choisi d'utiliser des >> gems moins populaires. >> >> Au niveau de la performance, il semble que mongodb soit excellent. >> >> Mon but est de pouvoir mettre mon application open-source. Il faut donc, >> selon moi, faire en sorte qu'elle puisse être installée dans le plus de >> système possible et passé à mongoid peut être contraignant. Je pense donc >> continuer à gérer les différentes bases de données et utiliser mysql pour >> la mise en production de mon site. >> >> Je voudrais être certain de faire le bon choix. Qu'en pensez vous? >> Certains d'entre vous utilisant surement le NoSql. Quels sont les arguments >> qui vous ont fait faire le grand pas? >> >> Merci et bonne journée à tous! >> >> Le 29 février 2012 17:38, Nicolas Blanco <[email protected]> a écrit : >> >> Tu mélanges un peu tout dans ton post là. >>> >>> Déjà pose toi la question : est-ce que je dois rester en SQL ou passer >>> tout ou une partie sur du NoSQL. Après, pose toi la question de savoir >>> si MongoDB répond à tes attentes. Pour ces questions, cf le trillion >>> d'avis sur le Ouaib. >>> >>> Si tu décides que oui, la question du ODM sera normalement rapidement >>> tranchée : Mongoid. Car sa communauté est plutôt grosse, et la plupart >>> des librairies vraiment spécifiques lorsqu'elles supportent MongoDB >>> supportent généralement en 1er cas Mongoid. >>> >>> Après tes librairies authlogic et meta_search tu peux les mettre à la >>> poubelle, la 1ere est fortement liée à ActiveRecord et n'est plus trop >>> maintenue (faut switcher sur Devise !) et la deuxième est tout >>> bonnement un générateur de SQL via Arel, qui n'a plus trop d'utilité >>> avec Mongoid. >>> >>> 2012/2/29 Guirec Corbel <[email protected]>: >>> > Bonjour à tous, >>> > >>> > Je viens regarder les vidéos sur MongoMapper >>> > (http://railscasts.com/episodes/194-mongodb-and-mongomapper) et >>> Mongoid >>> > (http://railscasts.com/episodes/238-mongoid) et je me pose cette >>> question : >>> > quel ORM/ODM dois-je utiliser? >>> > >>> > Pour le moment je vois ceci d'intéressant dans les solutions utilisant >>> > mongodb : >>> > >>> > Ça évite d'avoir gérer les bases de données multiples. Je souhaite >>> faire un >>> > projet open-source. Il faut donc que chacun puisse la faire tourner >>> sur son >>> > poste sans trop de problèmes et j'ai déjà eu quelques souci avec >>> SQLite et >>> > postgres ce qui fait que j'ai du code spécifique aux base de données >>> ce que >>> > je trouve très dommage. >>> > Plus de migration. Ce n'est pas un gros problème mais c'est une option >>> > sympa. >>> > >>> > Je me doute qu'il y a d'autres avantages mais ce sont les deux qui me >>> > sautent aux yeux. >>> > >>> > >>> > Voila ce que je voudrais savoir : >>> > >>> > Est-ce que je vais devoir refaire une bonne partie de mon code, qui >>> > fonctionne avec ActiveRecord pour faire une migration vers un des >>> Mongos? >>> > Les performances sont elles équivalentes? >>> > Est-ce que les gems que j'utilise vont fonctionner? J'utilise des gems >>> comme >>> > authlogic, meta_search, etc... >>> > Est-ce un obstacle pour les gens qui voudront utiliser mon projet? >>> > >>> > J'aimerai beaucoup avoir vos avis sur la chose. >>> > >>> > >>> > Merci beaucoup et bonne journée, >>> > >>> > Guirec CORBEL. >>> > >>> > -- >>> > Vous avez reçu ce message, car vous êtes abonné au groupe >>> "Railsfrance" de >>> > Google Groups. >>> > Pour transmettre des messages à ce groupe, envoyez un e-mail à >>> l'adresse >>> > [email protected] >>> > Pour résilier votre abonnement envoyez un e-mail à l'adresse >>> > [email protected] >>> >>> >>> >>> -- >>> Nicolas Blanco, Web developper >>> >>> http://www.nicolasblanco.fr >>> Jabber/GoogleTalk : [email protected] >>> Twitter : http://twitter.com/slainer68 >>> Github : http://github.com/slainer68 >>> Skype : slainer68 >>> >>> -- >>> Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" >>> de Google Groups. >>> Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse >>> [email protected] >>> Pour résilier votre abonnement envoyez un e-mail à l'adresse >>> [email protected] >> >> >> -- >> Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" >> de Google Groups. >> Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse >> [email protected] >> Pour résilier votre abonnement envoyez un e-mail à l'adresse >> [email protected] >> > > -- > Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de > Google Groups. > Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse > [email protected] > Pour résilier votre abonnement envoyez un e-mail à l'adresse > [email protected] > -- Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de Google Groups. Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse [email protected] Pour résilier votre abonnement envoyez un e-mail à l'adresse [email protected]
