Разница между MongoDB и Мангустом


Я хотел использовать базу данных mongodb, но я заметил, что есть две разные базы данных с любым собственным веб-сайтом и методами установки: mongodb и mongoose. Поэтому я задал себе такой вопрос: "какой из них я использую?".

Итак, чтобы ответить на этот вопрос, я спрашиваю сообщество, не могли бы вы объяснить, в чем разница между этими двумя? А если возможны плюсы и минусы? Потому что они действительно очень похожи на меня.

5 73

5 ответов:

Я предполагаю, что вы уже знаете, что MongoDB-это система баз данных NoSQL, которая хранит данные в виде документов BSON. Ваш вопрос, однако, касается пакетов для узла.js.

в терминах узла.js,mongodb - это родной драйвер для взаимодействия с экземпляром MongoDB и мангуста это инструмент моделирования объектов для MongoDB.

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

EDIT: Я не хочу комментировать, что лучше, так как это сделало бы этот ответ самоуверенным. Однако я перечислю некоторые преимущества и недостатки использования обоих подходов.

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

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

Mongo-это база данных NoSQL.

Если вы не хотите использовать ОРМ для ваших моделей данных вы также можете использовать собственный драйвер mongo.js:https://github.com/mongodb/node-mongodb-native.

Мангуст является одним из orm, которые дают нам функциональность для доступа к данным mongo с легко понятными запросами.

Мангуст играет роль абстракции над вашей моделью базы данных.

еще одно отличие, которое я нашел в отношении обоих, заключается в том, что это довольно легко connect to multiple databases с mongodb native driver в то время как вы должны использовать способы работы в mongoose которые все еще имеют некоторые недостатки.

Так что если вы хотите пойти на мультитенантное приложение, перейдите на родной драйвер mongodb.

MongoDB и Мангуст-это две совершенно разные вещи!

Mongodb-это сама база данных, в то время как мангуст инструмент моделирования объектов для Mongodb

EDIT: как указано MongoDB-это пакет npm, спасибо!

Mongodb и Мангуст-это два разных драйвера для взаимодействия с базой данных MongoDB.

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

Mongodb: родной драйвер в узел.js для взаимодействия с MongoDB.