/ / Manipular índice de Solr com luceno - solr, lucene

Manipule o índice Solr com lucene - solr, lucene

Eu tenho um núcleo solr com documentos 100K-1000k.
Eu tenho um cenário em que preciso adicionar ou definir um valor de campo na maioria dos documentos.
Fazer isso através do Solr leva muito tempo.
Eu queria saber se existe uma maneira de fazer essa tarefa com a biblioteca Lucene e acessar o índice Solr diretamente (com menos sobrecarga).
Se necessário, posso desligar o núcleo, executar meu código e recarregar o núcleo posteriormente (esperando que demore menos tempo do que com o Solr).
Será ótimo saber se alguém já fez isso e quais são as principais armadilhas no caminho.

Respostas:

0 para resposta № 1

Problema semelhante foi discutido várias vezes na lista de discussão Lucene Java. O problema subjacente é que você não pode atualizar o documento no Lucene (e, portanto, no Solr).

Em vez disso, você precisa excluir o documento einsira um novo. Obviamente, isso adiciona uma sobrecarga de análise, mesclagem de segmentos de índice etc. Porém, a quantidade especificada de documentos não é algo importante e não deve levar dias (você já tentou atualizar o Solr com vários threads?).

Obviamente, você pode tentar fazer isso via Lucene e ver se isso faz alguma diferença, mas você precisa estar certeza absoluta você usará os mesmos analisadores que o Solr.


0 para resposta № 2

Eu tenho um cenário em que preciso adicionar ou definir um valor de campo na maioria dos documentos.

Se você precisar fazer isso com frequência, talvez precise olhar para coisas como ExternalFileField. Existem limitações, mas pode ser melhor do que invadir a infraestrutura do Solr, indo diretamente para o Lucene.