J'ai vu NoSQL apparaître un peu sur SO et j'ai une solide compréhension de la raison pour laquelle vous l'utiliseriez (à partir d'ici, Wikipedia, etc.). Cela pourrait être dû au manque de définition concrète et uniforme de ce qu'il est (plus un paradigme qu'une mise en œuvre concrète), mais j'ai du mal à comprendre comment je pourrais concevoir un système qui l'utiliserait ou comment Je l'implémenterais dans mon système. Je suis vraiment coincé dans un état d'esprit relationnel-db pensant aux choses en termes de tables et de jointures ...
En tout cas, est-ce que quelqu'un connaît un cours intensif / tutoriel sur un système qui l'utiliserait (sorte de "bonjour le monde" pour un système basé sur NoSQL) ou un tutoriel qui utilise une application "Hello World" existante basée sur SQL et le convertit en NoSQL (pas nécessairement en code, mais juste une explication de haut niveau).
Réponses:
Voici un diaporama décent présentant MongoDB. Je pense que certaines des grandes différences sont que la plupart des systèmes reposent sur Active Record ou une abstraction de base de données similaire.
J'ai aussi trouvé un merveilleux livre orlys gratuit sur Couch DB ici , ce qui est plutôt génial.
la source
Dans sa forme la plus élémentaire, NoSQL n'est en réalité qu'un moyen de stocker des objets en utilisant une sorte de système d'appariement clé / valeur. Vous l'utilisez tout le temps déjà, je suppose. Par exemple. en javascript, vous pouvez créer un objet nommé foo, puis
foo['myobj'] = myobj;
stocker des éléments dans l'objet.Tout ce que les serveurs NoSQL font vraiment est de vous donner un moyen d'ajouter / supprimer / interroger des tableaux massifs tout en permettant la persistance et la tolérance aux pannes. Vous pouvez créer un serveur NoSQL en mémoire sur environ 100 lignes de code.
Alors faisons-le de cette façon ... dans CouchDB, vous utilisez map / Reduce ... alors créons une fonction de carte faisant la même chose qu'un peu de code SQL:
Dans CouchDB, vous fournissez au serveur une fonction JavaScript qui s'exécute sur chaque élément de la base de données ...
C'est tout ce qu'il y a vraiment à faire ..... cela devient beaucoup plus complexe à partir de là du côté du serveur, car le serveur doit gérer des plantages et plusieurs révisions du même objet, mais ce n'est qu'un exemple.
la source
Jetez un œil à cette vidéo de DNR TV, en faisant quelques travaux pratiques avec MongoDB . Ça pourrait être bien pour une première introduction.
la source
Le site Web mongoDB fournit un excellent didacticiel en 10 étapes sous forme de simulation de shell mongoDB en ligne. cela prend 10 minutes et c'est un très bon moyen de démarrer avec noSQL!
http://www.mongodb.org/ (cliquez sur "essayer")
la source
y_serial est écrit comme un module Python unique qui se lit comme un didacticiel fonctionnel et comprend de nombreux conseils et références: http://yserial.sourceforge.net/
Cela prend la perspective de la persistance d'un objet Python arbitraire (par exemple une structure de données de dictionnaire) d'une manière "NoSQL" (pas seulement SQL).
la source
Il y en a un sur les bases de données Infoq Graph, NOSQL et Neo4j
la source
Si vous aimez Neo4j, regardez cette présentation sympa
la source
Un excellent tutoriel sur CouchDB: http://net.tutsplus.com/tutorials/getting-started-with-couchdb/
la source
Voici mes ressources NoSQL:
Tutoriel pour débutants pour nosql: http://www.tutorialindustry.com/nosql-tutorial-for-beginners
pour MongoDB: http://www.tutorialindustry.com/mongodb-tutorial-for-beginners
pour CouchDB: http://www.tutorialindustry.com/couchdb-tutorial-for-beginners
pour Redis: http://www.tutorialindustry.com/redis-tutorial-for-beginners
la source