Ah oui, évidemment, ça c'est une condition javascript, ce qui veut dire qu'il n'y a aucune optimisation --> pas d'index utilisé. Ce n'est guère utilisable avec des données un peu conséquentes.
Le 2 mars 2012 09:32, guillaume belleguic <[email protected]> a écrit : > 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+Queries > > Le 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] > -- 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]
