Обрабатывать файлы с помощью Tika в Solr через URL - PullRequest
0 голосов
/ 23 апреля 2019

Контекст

Структура

Мы уже несколько лет используем Solr и хотим добавить в наш индекс огромное количество данных в формате pdf. Каждая строка в Solr может иметь несколько документов, поэтому мы хотели бы использовать здесь вложенную структуру:

[{
  "id": 1, 
  "title": "test", 
  "_childDocuments_": [{
    "id": 12,
    "file_type": "pdf",
    "link": "https://s3.com/file.pdf",
    "full_content": ""
  }, ...]
}, ...]

Каждый pdf хранится в s3.

Импорт

Мы импортируем наш индекс Solr через Java SolrJ следующим образом:

String solrURL = "http://URL/solr/default";
HttpSolrClient client = new HttpSolrClient(solrURL);
Collection<SolrInputDocument> batch = new ArrayList();

SolrInputDocument publication = new SolrInputDocument();
publication.addField("id", "1");
publication.addField("path", "1.publications");
publication.addField("_root_", "1");

batch.add(publication);

UpdateResponse add = client.add(batch);
UpdateResponse commit = client.commit(true, true, true);

Вопрос

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

Возможен ли вообще этот сценарий?

...