Бесплатный текстовый поиск MongoDB и выделение

#mongodb #elasticsearch #search #text #solr

#mongodb #elasticsearch #Поиск #текст #solr

Вопрос:

У меня есть определенный объем данных, около 50 тыс. объектов, и мне нужно реализовать бесплатный текстовый поиск по двум свойствам. Моя текущая ситуация такова, что в моем стеке уже есть MongoDB (сервер сообщества). Прямо сейчас я решаю, следует ли мне начать использовать Elasticsearch или Solr рядом с MongoDB. Я бы хотел придерживаться только MongoDB, но у меня есть некоторые требования. Это выделение. Я просматриваю документы MongoDB и нашел этот документ о выделении поиска в Atlas. Это именно то, что мне нужно, и это здорово. Проблема в том, что он на самом деле не работает на моем сервере MongoDB. Также ничего не говорится о выделении в документах текстового поиска.

Я в замешательстве. Не мог бы кто-нибудь, пожалуйста, объяснить текущую ситуацию, касающуюся бесплатного текстового поиска и выделения с помощью MongoDB. Поддерживается это или нет? Это только Atlas? Каков текущий статус?

Комментарии:

1. Поиск по Атласу существует только в atlas.

2. Спасибо. Это ответ, который я искал.

Ответ №1:

Моя текущая ситуация такова, что в моем стеке уже есть MongoDB (сервер сообщества). Прямо сейчас я решаю, следует ли мне начать использовать Elasticsearch или Solr рядом с MongoDB

Хорошо, что вы изучили другие варианты. Я настоятельно рекомендую использовать чистые поисковые решения для этого варианта использования [бесплатный текстовый поиск, выделение], т.е. ES, Solr. Оба варианта лучше подходят для поиска. Один продукт не может решить все варианты использования.

Я бы хотел придерживаться только MongoDB, но у меня есть некоторые требования.

Mongo DB чувствителен к регистру. И только atlas обеспечивает поиск. Такое же выделение также может быть достигнуто в других решениях поиска, например, Solr.

Если вы все еще хотите придерживаться Atlas, я бы посоветовал вам выполнить минимальный POC с вашим вариантом использования в atlas против ES / SOLR.

Комментарии:

1. Я вообще не планирую использовать Atlas, поскольку он не является бесплатным в premiss. На данный момент я использую сервер сообщества MongoDB. Если это не удовлетворит мои потребности, я буду использовать Elastic или Solr. Спасибо за ответ.

2. Есть ли какая-либо причина, по которой только Atlas обеспечивает поиск?

3. В этом разница между коммерческим и открытым исходным кодом. atlas обеспечивает не только поиск, но и безопасность на разных уровнях, что полезно для RBAC.

4. @Nice-Guy Базовое приложение поиска должно обеспечивать выделение, а поиск всегда означает, что регистр не чувствителен. Solr, ES также предоставляет то же самое. Нет необходимости выделять эти моменты IMO.

5. Что вы имеете в виду. Вы буквально написали: «Mongo DB чувствителен к регистру». Это неверно, поэтому я указал на этот факт. Если вы храните данные приложения в MongoDB и хотите выполнить поиск по тем же данным, вам следует, по крайней мере, рассмотреть поиск по Atlas. Он также предлагает бесплатный уровень. Мощь Solr и ES заключается в Lucene, том же движке в MongoDB Atlas Search.