Click here to load reader
Upload
getdevnet
View
1.329
Download
5
Embed Size (px)
DESCRIPTION
Рассказ про нереляционные базы данных
Citation preview
Что же такое NoSQL?
• Not only SQL – а не убийца SQL• Хранилище пар Ключ-Значение• Горизонтальная масштабируемость• Отсутствие заранее разработанной
схемы хранения данных
Примеры NoSQL баз данныхПо-настоящему распределенные БД
Автоматическое распределение данных между несколькими серверами
• Cassandra• Hbase• Riak• Scalaris• Voldemort
Примеры NoSQL баз данныхНе распределенные БД
Не умеют автоматически распределяться между серверами, но имеют другие механизмы масштабирования
• CouchDB• MongoDB• Neo4j• Redis• Tokyo Cabinet
Модели данных и запросовNoSQL БД различаются моделями данных и
API запросами
Хранение данныхОрганизация хранения данных в системе
Преимущества NoSQL
• Подходят для облачных сервисовПроще, гибче, динамическое расширение
• Более естественная интеграция с кодомОбъектная модель кода не расходится с моделью хранения, можно полностью сосредоточиться на разработке бизнес модели
Недостатки NoSQL• Целостность данных на уровне БД
Контроль за целостностью данных лежит полностью на приложении
• Логическая структура БДВ системах с хорошо спроектированной моделью БД имеет хорошую логическую структуру, данные не зависят от приложения. Другое приложение сможет использовать те же самые данные.
• Ограниченная аналитика данных
Итак, CouchDB• Документоориентированная база данных• Интерфейс — исключительно HTTP,
исключительно REST• Документы хранятся в формате JSON• Incremental map/reduce• Master-to-master репликации
Источники
http://anton.shevchuk.name/php/couchdb-for-developers/
http://wiki.apache.org/couchdb/ http://couchdb.apache.org/ http://
brainslugs.blogspot.com/2008/05/mapreduce-apache-couchdb.html
http://wiki.apache.org/couchdb/CouchDB_in_the_wild?action=show&redirect=InTheWild
Павел ГрубаCodeMasters [email protected]