Публикация

Среди современных веб-разработчиков трудно встретить кого-то, кто не слышал о NoSQL базах данных. Но что это за зверь на самом деле и когда его следует использовать? Об этом далее и по порядку.

Что такое NoSQL база данных

Термин NoSQL (Not Only SQL) принято использовать для таких типов баз данных, которые не являются реляционными. В основном, NoSQL представляет из себя хранилище данных типа "ключ - значение". Таким образом, чтобы получить доступ к какому-либо значению, необходимо обратиться к нему по определённому ключу. Но также NoSQL базы могут хранить данные в виде JSON документов, графов и т.д.

NoSQL - это хранилище, которое не является реляционным

Далее о том, зачем вообще использовать NoSQL базы ...

Зачем использовать NoSQL?

Резонны вопрос, учитывая существования реляционных баз. Но всё-таки, будь реляционные базы идеальным решением, мы бы не выдумывали новые способы хранения данных. Вот несколько советов, когда следует использовать NoSQL:

  1. Когда у вас нет чёткой структуры полей для хранения каких-либо данных. Например, когда вы хотите часто добавлять новые поля, и при этом особо не париться с изменением структуры таблицы.
  2. Если ваш проект постоянно растёт и вы планируете расширять базу данных. NoSQL решения, обычно, очень неплохо горизонтально масштабируются. В большинстве случаев это позволит вам сократить расходы на поддержку проекта.
  3. Если вы хотите всё бесплатно и с открытым исходным кодом.
  4. Если вы хотите быстро набросать прототип приложения и протестировать его. Отсутствие строгой схемы избавит вас от необходимости постоянно изменять структуру таблицы. (см. пункт 1).
  5. Для хранения временных данных, к которым необходимо получить быстрый доступ (к примеру cache сервер)

Вывод

NoSQL- это отличная технология о которой следует знать и которую следует применять для специфических задач. Но если вы работаете с обычным блогом и порог нагрузки на ваш сервер приходится, когда бот от google посещает вас - не стоит строить из себя senior developer'а. Обычной реляционной MySQL  или Postgres вполне хватит для того, чтобы ваш сайт работал без тормозов.

26.11.2015 18:38 в Базы данных
Автор: andymarrel 1646 0
Фотография пользователя andymarrel

andymarrel

Проектирование и создание веб приложений - это то, чем я занимаюсь. Если есть вопросы, комментарии или пожелания - вот мой электронный адрес: andrei.troskoff@gmail.com

Комментарии (0)