Я видел, как NoSQL довольно часто всплывает на SO, и у меня есть четкое представление о том, почему вы должны его использовать (отсюда, Википедия и т. Д.). Это могло быть связано с отсутствием конкретного и единообразного определения того, что это такое (скорее парадигмы, чем конкретной реализации), но я изо всех сил пытаюсь понять, как я буду разрабатывать систему, которая будет ее использовать, или как Я бы внедрил это в свою систему. Я действительно застрял в реляционном мышлении БД, думая о вещах в терминах таблиц и объединений ...
В любом случае, знает ли кто-нибудь об ускоренном курсе / руководстве по системе, которая будет его использовать (своего рода «привет, мир» для системы на основе NoSQL), или учебнике, который использует существующее приложение «Hello World» на основе SQL и преобразует его в NoSQL (не обязательно в коде, а просто в виде высокоуровневого объяснения).
Ответы:
Вот достойное слайд-шоу, представляющее MongoDB. Я думаю, что некоторые из больших различий заключаются в том, что большинство систем полагаются на Active Record или какую-то аналогичную абстракцию базы данных.
Также я нашел здесь замечательную бесплатную книгу orlys о Couch DB , что довольно круто.
источник
В своей самой базовой форме NoSQL на самом деле не более чем способ хранения объектов с использованием какой-то системы пар ключ / значение. Я полагаю, вы уже используете это все время. Например. в javascript вы можете создать объект с именем foo, а затем сделать это
foo['myobj'] = myobj;
для хранения материала в объекте.Все серверы NoSQL на самом деле дают вам возможность добавлять / удалять / запрашивать массивные массивы, сохраняя при этом устойчивость и отказоустойчивость. Вы можете создать сервер NoSQL в памяти примерно за 100 строк кода.
Итак, давайте сделаем это так ... в CouchDB вы используете map / reduce ... поэтому давайте создадим функцию карты, которая будет делать то же самое, что и небольшой код SQL:
В CouchDB вы предоставляете серверу функцию JavaScript, которая запускается для каждого элемента в базе данных ...
Это все, что на самом деле нужно ... это становится намного сложнее на стороне сервера, поскольку сервер должен обрабатывать сбои и несколько ревизий одного и того же объекта, но это всего лишь пример.
источник
Взгляните на это видео от DNR TV, в котором мы поработали с MongoDB . Было бы неплохо для первого знакомства.
источник
Веб-сайт mongoDB предоставляет отличное 10-шаговое руководство в форме онлайн-моделирования оболочки mongoDB. это займет 10 минут, и это действительно отличный способ начать работу с noSQL!
http://www.mongodb.org/ (нажмите «попробовать»)
источник
y_serial написан как единый модуль Python, который читается как рабочий учебник и включает множество советов и ссылок: http://yserial.sourceforge.net/
Здесь рассматривается вопрос о том, как сохранить произвольный объект Python (например, структуру данных словаря) способом «NoSQL» (не только SQL).
источник
Есть один в базах данных Infoq Graph, NOSQL и Neo4j
источник
Если вам нравится Neo4j, посмотрите эту классную презентацию
источник
Отличный учебник по CouchDB: http://net.tutsplus.com/tutorials/getting-started-with-couchdb/
источник
Вот мои ресурсы по NoSQL:
Руководство для начинающих по nosql: http://www.tutorialindustry.com/nosql-tutorial-for-beginners
для MongoDB: http://www.tutorialindustry.com/mongodb-tutorial-for-beginners
для CouchDB: http://www.tutorialindustry.com/couchdb-tutorial-for-beginners
для Redis: http://www.tutorialindustry.com/redis-tutorial-for-beginners
источник