Widziałem, jak NoSQL pojawia się dość często w SO i dobrze rozumiem, dlaczego chcesz go używać (stąd, Wikipedia itp.). Może to wynikać z braku konkretnej i jednolitej definicji tego, czym jest (bardziej paradygmat niż konkretna implementacja), ale staram się zrozumieć, jak bym zajął się projektowaniem systemu, który by go używał lub jak Wdrożyłbym to w swoim systemie. Naprawdę utknąłem w mentalności opartej na relacjach, myśląc o rzeczach w kategoriach tabel i łączeń ...
W każdym razie, czy ktoś wie o awaryjnym kursie / samouczku dotyczącym systemu, który by go używał (coś w rodzaju „hello world” dla systemu opartego na NoSQL) lub samouczku, który wykorzystuje istniejącą aplikację „Hello World” opartą na SQL i konwertuje go na NoSQL (niekoniecznie w kodzie, ale tylko ogólne wyjaśnienie).
Odpowiedzi:
Oto przyzwoity pokaz slajdów przedstawiający MongoDB. Myślę, że niektóre z dużych różnic polegają na tym, że większość systemów opiera się na module Active Record lub podobnej abstrakcji bazy danych.
Znalazłem też wspaniałą darmową książkę Orlys na Couch DB , która jest całkiem niesamowita.
źródło
W swojej najbardziej podstawowej formie NoSQL jest tak naprawdę tylko sposobem przechowywania obiektów za pomocą pewnego rodzaju systemu parowania klucz / wartość. Zakładam, że używasz tego cały czas. Na przykład. w javascript możesz utworzyć obiekt o nazwie foo, a następnie zrobić to,
foo['myobj'] = myobj;
aby przechowywać rzeczy w obiekcie.Wszystko, co naprawdę robią serwery NoSQL, to możliwość dodawania / usuwania / odpytywania ogromnych macierzy i nadal pozwala na trwałość i odporność na błędy. Możesz utworzyć NoSQL na serwerze pamięci w około 100 wierszach kodu.
Więc zróbmy to w ten sposób ... w CouchDB używasz map / redukuj ... więc stwórzmy funkcję odwzorowującą to samo, co kawałek kodu SQL:
W CouchDB udostępniasz serwerowi funkcję JavaScript, która jest uruchamiana dla każdego elementu w bazie danych ...
To wszystko, co w tym naprawdę jest ..... stamtąd po stronie serwera staje się znacznie bardziej skomplikowane, ponieważ serwer musi radzić sobie z awariami i wieloma wersjami tego samego obiektu, ale to tylko przykład.
źródło
Obejrzyj ten film z DNR TV, przedstawiając MongoDB . Może być miło na pierwsze wprowadzenie.
źródło
Witryna mongoDB udostępnia wspaniały 10-etapowy samouczek w formie symulacji powłoki mongoDB online. zajmuje to 10 minut i jest naprawdę świetnym sposobem na rozpoczęcie pracy z noSQL!
http://www.mongodb.org/ (kliknij „wypróbuj”)
źródło
y_serial jest napisany jako pojedynczy moduł Pythona, który czyta się jak działający samouczek i zawiera wiele wskazówek i odniesień: http://yserial.sourceforge.net/
Przyjmuje to perspektywę utrwalenia dowolnego obiektu Pythona (np. Struktury danych słownika) w sposób „NoSQL” (nie tylko SQL).
źródło
Jest jeden w bazach danych Infoq Graph, NOSQL i Neo4j
źródło
Jeśli lubisz Neo4j, zobacz tę fajną prezentację
źródło
Doskonały samouczek na CouchDB: http://net.tutsplus.com/tutorials/getting-started-with-couchdb/
źródło
Oto moje zasoby NoSQL:
Samouczek dla początkujących nosql: http://www.tutorialindustry.com/nosql-tutorial-for-beginners
dla MongoDB: http://www.tutorialindustry.com/mongodb-tutorial-for-beginners
dla CouchDB: http://www.tutorialindustry.com/couchdb-tutorial-for-beginners
dla Redis: http://www.tutorialindustry.com/redis-tutorial-for-beginners
źródło