MongoDB

MongoDB — документоориентированная система управления базами данных с открытым исходным кодом. Для хранения данных используется JSON-подобный формат. Эта СУБД отличается высокой доступностью, масштабируемостью и безопасностью.

Особенности:

  1. Это кроссплатформенная документоориентированная база данных NoSQL с открытым исходным кодом.

  2. Она не требует описания схемы таблиц, как в реляционных БД. Данные хранятся в виде коллекций и документов.

  3. Между коллекциями нет сложных соединений типа JOIN, как между таблицами реляционных БД. Обычно соединение производится при сохранении данных путем объединения документов.

  4. Данные хранятся в формате BSON (бинарные JSON-подобные документы).

  5. У коллекций не обязательно должна быть схожая структура. У одного документа может быть один набор полей, в то время как у другого документа — совершенно другой (как тип, так и количество полей).

Примеры, когда MongoDB подходит для проекта:

  1. Каталог товаров в электронной коммерции.

  2. Блоги и системы управления контентом, особенно те, где много контента, в том числе видео и изображений.

  3. Аналитика в реальном времени и высокоскоростное журналирование, кэширование данных и кейсов, когда важна высокая масштабируемость системы.

  4. Хранение данных датчиков и устройств.

  5. Работа с большими данными для машинного обучения и исследований в ритейле и других отраслях.

  6. Ведение данных на основе местоположения, то есть геопространственных данных.

  7. Социальные сети, новостные форумы и другие похожие сценарии.

  8. Слабосвязанные данные без четкой схемы хранения.

  9. Стартапы и развертывание новых проектов, где структура данных пока неизвестна.

Примеры, когда MongoDB лучше не использовать:

  1. Транзакционные системы, приложения, требующие транзакций на уровне базы данных, например банковские приложения.

  2. Проекты, где модель данных определена заранее.

  3. Хранение сильносвязанных данных.

Last updated