2016-09-05 5 views
0

Я пытаюсь реализовать полнотекстовый поиск в текстовом файле, хранящемся в базе данных, при использовании Spring Data. MongoDb идеально подходит для поиска, но он может хранить только документы размера 16Mb. С другой стороны, GridFs может хранить большие файлы, но не разрешается поиск по данным, которые он хранит. Так что вопрос:Как использовать Spring Data ElasticSearch с MongoDb

  1. Каковы ограничения на размер для Elasticsearch документов и базы данных (Могу ли я отказаться от GridFs для хранения больших файлов

  2. Могу ли я использовать Spring Data MongoDB и Spring.? Elasticsearch данные вместе? (Монго для общего хранения информации и запросов (MongoRepository) и Elastic для полнотекстового поиска текстовых данных, хранящийся.

Если да, то я был бы признателен, если бы кто-нибудь мог помочь мне настроить его. (Sth называется mongo-connector ??) У меня уже работает Spring Data MongoDb в моем проекте. Заранее спасибо.

ответ

0
  1. Lucene использует 32 бита для адресации. Теоретически вы можете использовать документ 2GB. Но я думаю, что вы столкнетесь с другими проблемами до того, как 2 ГБ не будут связаны с Elastic. Существуют лучшие методы хранения больших данных.
  2. Из данных весны вы можете использовать ElasticsearchRepository.

См example project

+0

Я хотел бы хранить как 20Mb файлы и делать полнотекстового поиска по ним. Но количество файлов превысит 2 ГБ. Возможно ли иметь много документов размером <2 ГБ? Это было бы прекрасно. – Dago

+1

Несомненно. В качестве примера - один из моих проектов использует Mongo и db размером более 2 ТБ. – Azee

+0

, но в размере документа Mongo не может быть больше 16 МБ :) U использовать elasticsearch с mongo вправо? – Dago

Смежные вопросы