Информация о книге

978-5-8459-1829-1

Главная  » Научно-техническая литература » Информационные технологии. Компьютеры » Базы данных » Другие СУБД » NoSQL. Новая методология разработки нереляционных баз данных

Садаладж П., Фаулер М., NoSQL. Новая методология разработки нереляционных баз данных

NoSQL Distilled
Вильямс, 2013 г., 192 стр., 978-5-8459-1829-1


Описание книги

Необходимость обрабатывать все более крупные объемы данных является одним из факторов, влияющих на внедрение нового класса нереляционных баз данных NoSQL. Сторонники баз NoSQL утверждают, что их можно использовать для создания более производительных, легче масштабируемых и проще программируемых систем.
В этой книге описано краткое, но полное введение в эту быстро развивающуюся технологию. Авторы объясняют, как работают базы данных NoSQL и демонстрируют, в каких ситуациях они могут стать более успешной альтернативой традиционным системам RDMBS. Авторы излагают материал в быстром темпе, знакомя читателей с критериями, которые необходимо применять, чтобы принять правильное решение, стоит ли использовать базы NoSQL, и какие технологии следует при этом выбирать.
Первая часть книги посвящена основным концепциям, включая неструктурированные модели данных, агрегаты, новые модели распределения, теорему САР и отображение-свертку. Во второй части авторы исследуют архитектурные и проектные вопросы, связанные с реализацией баз данных NoSQL. Они также описывают реалистичные сценарии использования, демонстрирующие работу баз данных NoSQL и возможности баз Riak, MongoDB, Cassandra и Neo4j.
Кроме того, основываясь на новаторской работе Прамодкумара Садаладжа, авторы книги показывают, как реализовать эволюционное проектирование на основе миграции схем - важный метод, необходимый для применения баз данных NoSQL.
Книга завершается описанием новой эры многовариантной персистентности, открытой благодаря технологии NoSQL. В этом мире сосуществуют разнообразные базы данных, и архитектор может выбирать технологию, наилучшим образом подходящую для обеспечения любого вида доступа к данным.
Изложенные темы:
Оценка применимости корпоративных приложений NoSQL
Архитектурные компромиссы, связанные с развертыванием баз данных NoSQL
Использование технологии NoSQL для упрощения разработки и предотвращения проблем, связанных с отображением данных между структурами в памяти и системами RDBMS
Сравнение современных возможностей баз данных NoSQL
Исследование языков запросов: CQL и Cypher
Эффективность управления, надежность, доступность и способность восстанавливаться
Использование технологии NoSQL для гибкой разработки программного обеспечения
Применение технологии NoSQL для управления поиском и извлечением метаданных, анализа текстов, организации социальных сетей, проведения бизнес-анализа и выполнения финансовых операций
Кластеризация баз данных NoSQL для более дешевого решения проблем, связанных с обработкой крупных объемов данных
Применение теоремы САР для анализа согласованности, доступности и времени ожидания
Анализ возможностей, которые метод отображения-свертки открывает для параллельных вычислений на кластере
Почему термин NoSQL не имеет четко определенного содержания

Ключевые слова


  noSQL 


Поделиться ссылкой на книгу



Дополнительно о книге

Книга состоит из двух частей. В первой части излагаются основные концепции, которые, по нашему мнению, необходимо знать, чтобы правильно оценивать возможность использования баз данных NoSQL в своих проектах и понимать, чем они отличаются от остальных. Во второй части мы сосредоточились на реализации систем с базами данных NoSQL.
Глава 1 начинается с объяснения быстрого роста популярности баз данных NoSQL — необходимость обрабатывать более крупные объемы данных в больших системах стимулировала переход от вертикального масштабирования к горизонтальному масштабированию на кластерах. Этим объясняется важная особенность многих баз данных NoSQL — явное хранение емких структур тесно связанных между собой данных, доступных как одно целое. В нашей книге мы называем такие структуры агрегатами (aggregate).
В главе 2 описывается, как агрегаты проявляются в трех основных моделях данных NoSQL: базы данных типа “ключ–значение” и документные базы данных (“Модели “ключ–значение” и документные модели данных”), а также семейство столбцов (“Семейства столбцов”). Агрегаты обеспечивают естественное взаимодействие различных приложений. Это одновременно ускоряет работу на кластерах и облегчает программам доступ к данным. В главе 3 рассматривается недостаток агрегатов — сложность выражения отношений (“Отношения”) между сущностями в разных агрегатах. Это естественным образом приводит к графовым базам данных (“Графовые базы данных”), модели данных NoSQL, не соответствующей принципам, ориенти- рованным на агрегаты. Мы также рассматриваем общую характеристику баз данных NoSQL — отказ от использования схем (“Неструктурированные базы данных”), который обеспечивает повышенную гибкость, но не настолько высокую, как можно было бы предположить. Описав аспекты моделей данных в базах NoSQL, мы перейдем к их распределению:
в главе 4 описывается, как база распределяет данные по кластерам. Эта процедура распадается на фрагментацию (“Фрагментация”) и репликацию, которая может выполняться по схеме “ведущий–ведомый” (master-slave) (“Репликация ведущий–ведомый”) или быть одноранговой (peer-to-peer) (“Одноранговая репликация”). Определив модели распределения, мы можем перейти к изучению согласованности. Благодаря ориентации на кластеры базы данных NoSQL обеспечивают более широкий выбор вариантов согласованности по сравнению с реляционными базами данных. В главе 5 описывается, как найти компромисс между изменениями согласованности при обновлении (“Согласованность при обновлении”) и чтении (“Согласованность при чтении”), ролью кворумов (“Кворумы”) и даже долговечностью (“Ослабление требования долговечности”). Если вы уже слышали что-либо о базе данных NoSQL, то почти наверняка слышали о теореме CAP; ее смысл и применение описывается в разделе “Теорема CAP”.
Перечисленные выше главы посвящены в основном принципам распределения и сохранения согласованности данных, а в следующих двух главах описывается набор важных инструментов, выполняющих эту работу. В главе 6 описываются метки версий, отслеживающие изменения и устраняющие несогласованность. В главе 7 приводится краткий очерк организации параллельных вычислений, ориентированных на кластеры, а значит, и на системы NoSQL.
Освоив эти концепции, мы перейдем к вопросам их реализации, рассматривая конкретные примеры баз данных, относящихся к четырем ключевым категориям: в главе 8 в качестве базы данных типа “ключ–значение” используется база Riak, в главе 9 в качестве примера документной базы рассматривается база MongoDB, в главе 10 в качестве примера базы данных “семейство столбцов” описывается база Cassandra, а в главе 11 изучается графовая база данных Neo4J. Следует подчеркнуть, что это не исчерпывающее описание — за его пределами осталось много тем. Наш выбор примеров не следует рассматривать как рекомендации. Нашей целью было дать вам почувствовать разнообразие вопросов, существующих в этой области, и продемонстрировать применение описанных выше концепций в разных технологиях баз данных. Вы увидите, какие программы вам придется написать для этих систем, и получите представление об основных идеях, лежащих в их основе.
Принято считать, что благодаря отсутствию схемы в базах данных NoSQL можно легко изменять структуры данных на протяжении всего срока функционирования соответствующего приложения. Мы с этим не согласны — неструктурированная база данных имеет неявную схему, которая требует соблюдения принципов ее изменения при реализации, поэтому в главе 12 объясняется перенос данных как в системах со строгими схемами, так и в неструктурированных системах. Благодаря всему сказанному становится ясно, что база данных NoSQL — не отдельная сущность и не может заменить реляционную базу данных. В главе 13 описывается будущая эра многовариантной персистентности, в которой будут сосуществовать разные способы хранения данных, даже в одном и том же приложении. Глава 14 расширяет горизонты книги и описывает другие технологии, которые не рассмотрены в книге, но также могут быть частью мира многовариантной персистентности. Владея всей этой информацией, вы сможете делать осознанный выбор технологий хранения данных, поэтому заключительная глава (“Выбор базы данных”) содержит несколько советов, касающихся этого выбора. С нашей точки зрения, существуют два главных фактора — определение эффективной программной модели, в которой модель хранения данных хорошо согласована с приложением, и обеспечение эффективного и надежного доступа к данным. Поскольку эра баз данных NoSQL только начинается, мы еще не имеем хорошо определенных процедур и должны согласовывать возможности со своими потребностями.
Это лишь краткий обзор — мы совершенно сознательно ограничили объем книги, выбрав лишь самую важную информацию. Если вы решили глубоко изучить эти технологии, то вам следует продолжить обучение, но мы надеемся, что эта книга станет хорошей отправной точкой на вашем пути.
Мы также хотели бы подчеркнуть, что базы данных NoSQL образуют очень изменчивую область компьютерной индустрии. Изменения в ней происходят ежегодно — появляются новые функциональные возможности и базы данных. Мы сделали основной акцент на концепциях, потому что их понимание является важным независимо от изменений соответствующих технологий. Мы убеждены, что большинство из написанного нами будет иметь значение еще долгое время, но абсолютно уверены, что проверку временем пройдет не все. Целевой аудиторией книги являются люди, так или иначе использующие базы данных NoSQL. Ее можно использовать как для создания нового проекта, так и для совершенствования существующего. Мы стремились дать вам достаточно информации, чтобы вы могли осознанно решить, нужна ли технология NoSQL для удовлетворения ваших потребностей и какие инструменты следует изучить глубже. В качестве основных читателей мы представляли себе архитекторов или технических руководителей, но думаем, что эта книга будет полезной всем, кто занимается управлением программным обеспечением и хочет получить представление о новой технологии. Мы считаем, что книга может стать хорошей отправной точкой для разработчиков, желающих овладеть новой технологией.
Мы не углублялись в детали программирования и развертывания конкретных баз данных — оставим эти вопросы для специальных книг. Мы стремились экономить объем, чтобы книга получилась краткой. Такую книгу удобно читать в самолете: она не стремится ответить на все вопросы, а дает читателям представление о том, какие вопросы он должен поставить. Если вы уже работаете в области баз данных NoSQL, то эта книга, вероятно, ничего не прибавит к вашим знаниям. Тем не менее она будет полезной, поскольку поможет вам объяснить другим основные принципы технологии NoSQL. Очень важно научиться объяснять основные принципы технологии NoSQL, особенно если вы пытаетесь уговорить кого-то рассмотреть возможность использования баз данных NoSQL в проекте.

Содержание книги

Часть I. Основы
Глава 1. Почему NoSQL?
Глава 2. Агрегированные модели данных
Глава 3. Более подробно о моделях данных
Глава 4. Модели распределения
Глава 5. Согласованность
Глава 6. Штампы версий
Глава 7. Отображение–свертка

Часть II. Реализация
Глава 8. Базы данных типа “ключ–значение”
Глава 9. Документные базы данных
Глава 10. Семейство столбцов
Глава 11. Графовые базы данных
Глава 12. Миграции схем
Глава 13. Многовариантная персистентность
Глава 14. За рамками технологии NoSQL
Глава 15. Выбор базы данных


Об авторе

Садаладж П.
Прамодкумар Дж. Садаладж, главный консультант компании ThoughtWorks, занимается редким делом - наведением мостов между специалистами в области баз данных и разработчиками приложений. Он регулярно консультирует клиентов, испытывающих особенно большие сложности при обработке данных и нуждающихся в новых технологиях и методах. Садаладж разработал новаторский метод, позволяющий разрабатывать реляционные базы данных эволюционным путем с помощью контролируемой миграции схем, сопровождающейся контролем версий. Вместе со Скоттом Эмблером (Scott Ambler) он написал книгу Рефакторинг баз данных (Addison-Wesley, 2006).

Фаулер М.
Автор ряда книг и статей об архитектуре ПО, объектно-ориентированному анализу и разработке, языку UML, рефакторингу, экстремальному программированию. Родился в Англии, жил в Лондоне до переезда в Америку в 1994 г. В настоящее время живёт в Бостоне, штат Массачусетс.

Отзывы

хотелось большего  [21 November 2013]
в этой книг не написано про синтаксис и таму подобное... но она подойдет как первый шаг к новым БД. круто!!! =)
Можно почитать, если вы ещё ничего не знаете про NoSQL  [12 May 2013]
Книга небольшая, всего около 160 страниц.

Рассказывается про основные причины появления nosql баз данных, где они могут применяться, какие сложности при этом возникают и как их решать.
Рассматриваются основные виды бд (ключ-значение, документные, семейства столбцов, графовые), по каждому виду рассматривается по одной конкретной бд.

Очень много воды там, где она не нужна и наоборот, там, где нужно было рассказать подробнее - очень скудное описание. Некоторые понятия и термины вообще не разъяснены, поэтому читая очередную главу приходится параллельно гуглить и википедить.

Перевод плохой, местами кажется, что машинный. Некоторые изображения в книге вообще перепутаны местами. На некоторых изображениях, например на схемах БД, половина текста переведено, а вторая половина нет. При этом то, что переведено на изображении может быть не переведено в тексте - возникает путаница. Некоторые термины неправильно переведены. Я уже не говорю о "багах" в оформлении текста в книге.

В общем, я советую прочитать эту книгу, если вы совершенно не знакомы с nosql и хотите просто быть в теме. Основы из неё вполне можно понять. Но если вы уже что-то знаете про nosql, то скорее всего это будет пустой тратой времени и денег.

Последние поступления в рубрике "Другие СУБД"



MySQL по максимуму MySQL по максимуму Шварц Б.

Хотите выжать из MySQL максимум возможностей? Вам поможет уникальная книга, написанная экспертами для экспертов. Познакомьтесь с продвинутыми приемами работы с MySQL: разработкой схем, индексов и запросов для настройки сервера, операционной системы и......

1С Зарплата и управление персоналом 8.3 1С Зарплата и управление персоналом 8.3 Гладкий А.И.

Вы хотите научиться работать в 1С:Зарплата и управление персоналом в короткий срок? Легко! Понятные примеры, наглядные иллюстрации-скриншоты, пошаговое освоение программы сделают ваше обучение комфортным и быстрым....

Understanding MySQL Internals Understanding MySQL Internals Pachev S.

Although MySQL\'s source code is open in the sense of being publicly available, it\'s essentially closed to you if you don\'t understand it. In this book, Sasha Pachev - a former member of the MySQL Development Team - provides a comprehensive tour of MySQL 5 that shows you how to figure out the inner workings of this powerful database....

Если Вы задавались вопросами "где найти книгу в интернете?", "где купить книгу?" и "в каком книжном интернет-магазине нужная книга стоит дешевле?", то наш сайт именно для Вас. На сайте книжной поисковой системы Книгопоиск Вы можете узнать наличие книги Садаладж П., Фаулер М., NoSQL. Новая методология разработки нереляционных баз данных в интернет-магазинах. Также Вы можете перейти на страницу понравившегося интернет-магазина и купить книгу на сайте магазина. Учтите, что стоимость товара и его наличие в нашей поисковой системе и на сайте интернет-магазина книг может отличаться, в виду задержки обновления информации.