Files
freeCodeCamp/guide/russian/computer-science/databases/non-relational-databases/index.md
2018-10-16 21:32:40 +05:30

28 lines
2.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: Non-Relational-Databases
localeTitle: Нереляционную-Базы данных
---
## Когда использовать
Если вы имеете дело с феноменально огромным количеством данных, это может быть слишком утомительным, и вероятность ошибки (в виде ошибки несоответствия ОРМ) возрастает. В этой ситуации вам может потребоваться рассмотреть возможность использования нереляционной базы данных. Нереляционная база данных просто хранит данные без явных и структурированных механизмов для связывания данных из разных таблиц (или кодов) друг с другом. Если ваша модель данных оказывается очень сложной, или если вам приходится де-нормализовать схему базы данных, то не реляционные базы данных могут быть лучшим способом.
Другие причины выбора нереляционной базы данных:
* Необходимость хранить сериализованные массивы в объектах JSON
* Хранение записей в той же коллекции, которая имеет разные поля или атрибуты
* Нахождение себя в нормализации вашей схемы или кодирования базы данных по проблемам производительности и горизонтальной масштабируемости
* Проблемы легко предопределяют вашу схему из-за характера вашей модели данных
## Недостатки
В нереляционных базах данных не существует объединений, как в реляционных базах данных. Это означает, что вам необходимо выполнить несколько запросов и вручную объединить данные в свой код, и это может стать очень уродливым, очень быстрым.
## Примеры баз данных
* MongoDB
* NoSQL
## Рекомендации
* (Https://www.pluralsight.com/blog/software-development/relational-non-relational-databases)
* (Https://en.wikipedia.org/wiki/NoSQL)