Некоторые плюсы документоориентированных СУБД:
- Гибкость и масштабируемость. 1 Модель может записывать информацию в виде документов с различной структурой и любыми типами данных. 1 Это упрощает изменение схемы информации без масштабных вмешательств. 1
- Простота использования. 1 Модель имеет простой интерфейс, который легко освоят разработчики с минимальными познаниями в базах и структурах данных. 1
- Высокая производительность. 1 Обработка данных происходит намного быстрее, чем в случае с реляционными моделями. 1
- Отсутствие внешних ключей. 2 Документы становятся независимыми друг от друга. 2
- Открытые форматы. 2 Для описания документов используется XML, JSON и другие производные. 2
- Встроенное управление версиями. 2 По мере того, как увеличивается размер документов, повышается и их сложность. 2 Управление версиями уменьшает количество конфликтов. 2
Некоторые минусы документоориентированных СУБД:
- Ограничения по проверке на согласованность. 2 Например, можно искать книги по несуществующему автору. 2
- Проблемы с атомарностью. 2 Изменение, затрагивающее две коллекции, выполняется через два отдельных запроса (по одному на коллекцию). 2 Это нарушает требования к атомарности. 2
- Безопасность. 2 Владельцам нереляционных баз данных следует быть крайне внимательными к уязвимостям веб-приложения. 2
Документоориентированные СУБД хорошо подходят для задач, где данные имеют сложную структуру или часто меняются. 3 Например, для каталогов товаров, профилей пользователей или систем контент-менеджмента. 3