В каких сценариях следует использовать MongoDB?

задняя часть игра MongoDB Интернет вещей
В каких сценариях следует использовать MongoDB?

Оригинальный адрес: http://www.mongoing.com/archives/3609

Случаи применения

  • Дело 1

    1. Записи журнала, используемые на сервере приложений, более гибки, чем текст, и их легко экспортировать. Также необходимо обучить приложение и начать использовать MongoDB с периферийной системы.
    2. Он используется для получения или сканирования некоторой сторонней информации.Из-за того, что MongoDB не содержит схемы, все форматы являются гибкими.Нет необходимости специально разрабатывать унифицированный формат для различных форматов информации, что значительно сокращает работу по разработке.
  • Случай 2

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

  • Случай 3

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

Возможности MongoDB

Когда я часто обсуждаю бизнес-сценарии MongoDB с некоторыми одноклассниками, я слышу голоса типа [ваш сценарий также может быть решен mysql, нет необходимости использовать MongoDB], действительно,Нет бизнес-сценария, который необходимо решать с помощью MongoDB, но использование MongoDB обычно позволяет решать проблемы (включая затраты на обучение, разработку, эксплуатацию и обслуживание) с меньшими затратами.), следующие основные функции MongoDB, вы можете взглянуть на свои собственные бизнес-потребности, чем больше совпадений, тем больше подходит MongoDB.

Особенности МОНГОДБ Преимущество
Сопровождение сделки В настоящее время MongoDB поддерживает только транзакции с одним документом и не подходит для сценариев, требующих поддержки сложных транзакций.
Гибкая модель документа Хранилище в формате JSON наиболее близко к реальной объектной модели, что удобно для разработчиков и способствует быстрой разработке и итерации.
Высокодоступный набор реплик Он отвечает требованиям высокой надежности данных и высокой доступности сервисов, простоты эксплуатации и обслуживания и автоматического аварийного переключения.
Масштабируемый разделенный кластер Массовое хранение данных, горизонтальное расширение сервисных возможностей.
высокая производительность mmapv1, wiredtiger, mongorocks (rocksdb), in-memory и другая поддержка нескольких движков для удовлетворения потребностей различных сценариев
Мощная поддержка индексов Географический индекс можно использовать для создания различных приложений O2O, текстовый индекс для решения задач поиска, индекс TTL для решения проблемы автоматического истечения срока действия исторических данных.
Gridfs Удовлетворение потребностей в хранении файлов
aggregation & mapreduce Чтобы удовлетворить потребности сценариев анализа данных, пользователи могут сами писать операторы запросов или сценарии и распределять все запросы в MongoDB для выполнения.

Должен ли я использовать MongoDB

От нынешних пользователей облачной базы данных Alibaba Cloud MongoDB приложение MongoDB проникло в различные области, такие какИгры, логистика, электронная коммерция, управление контентом, социальные сети, Интернет вещей, живое видео и т. д., ниже приведены несколько практических случаев применения.

  • В игровых сценариях MongoDB используется для хранения игровой информации о пользователе, а снаряжение пользователя, очки и т. д. хранятся непосредственно в виде встроенных документов, что удобно для запроса и обновления.
  • В сценариях логистики MongoDB используется для хранения информации о заказе, и статус заказа будет постоянно обновляться в процессе доставки.Он хранится в виде встроенного массива в MongoDB, и все изменения в заказе можно считать одним запрос.
  • В социальных сценариях MongoDB используется для хранения информации о пользователях, а также информации, размещенной пользователями в кругу друзей, и реализации таких функций, как ближайшие люди и места, посредством индексации географического местоположения.
  • В сценариях IoT MongoDB используется для хранения всей информации о подключенных смарт-устройствах, а также информации журнала, сообщаемой устройством, и выполнения многомерного анализа этой информации.
  • Живое видео, используйте MongoDB для хранения информации о пользователе, информации о подарках и т. д.
  • ...

Если вы все еще думаете о том, следует ли вам использовать MongoDB, вы также можете ответить на несколько вопросов с несколькими вариантами ответов, чтобы помочь вам принять решение (Примечание: следующий контент адаптирован из общедоступного обмена технологиями одноклассников TJ по MongoDB).

Возможности приложения YES / NO
Приложение не требует поддержки транзакций и сложного соединения. Обязательно Да
Для новых приложений требования изменятся, модель данных не может быть определена, и я хочу итеративно быстро разрабатывать ?
Приложение требует более 2000-3000 запросов на чтение и запись (возможно и больше) ?
Для приложений требуются терабайты или даже петабайты памяти для хранения данных. ?
Приложение быстро растет и должно иметь возможность быстрого и горизонтального масштабирования. ?
Приложение требует, чтобы сохраненные данные не были потеряны ?
Приложениям требуется высокая доступность на уровне 99,999 %. ?
Приложение требует большого количества запросов географического положения, текстовых запросов ?

Если выше 1 Да, вы можете рассмотреть MongoDB, 2 или более Да, вы никогда не пожалеете, выбрав MongoDB.

MongoDB应用场景


Если вы чувствуете себя вознагражденным после прочтения, пожалуйста, подпишитесь и добавьте общедоступную учетную запись [Niu Mi Technology], чтобы узнать больше захватывающей истории! ! !:

微信公众号