tutorial start instalar ejemplos solr

start - Solr: ¿Recuperar nombres de campo de un índice de solr?



solr vs elasticsearch (3)

Esta consulta devolverá una lista separada por comas de todos los campos que están en uso, incluidos los dinámicos.

select?q=*:*&wt=csv&rows=0&facet

Para responder a la pregunta original, esta es la forma de obtener una lista de todos los campos que comienzan con categoría_

select?q=*:*&wt=csv&rows=0&facet&fl=category_*

La presencia del parámetro facet es necesaria para que esta consulta funcione en las versiones más recientes de Solr. En versiones anteriores, funcionará sin él.

En versiones anteriores, un comodín en el parámetro fl no funcionará.

¿Cómo puedo consultar una instancia de solr para todos los nombres de campo (o prefijados)?

Quiero usar campos dinámicos como

category_0_s category_1_s ...

Pero no sé cuántos pueden existir. Así que quiero recuperar todos los campos (preferiblemente con el prefijo "categoría_").

¿Algunas ideas? Gracias


Si necesita hacer esto desde su aplicación Java, puede usar Solrj y LukeRequestRequestHandler .

Tu código se vería así.

LukeRequest lukeRequest = new LukeRequest(); lukeRequest.setNumTerms(0); LukeResponse lukeResponse = lukeRequest.process(server); Map<String, FieldInfo> fieldInfoMap = lukeResponse.getFieldInfo(); for (Entry<String, FieldInfo> entry : fieldInfoMap.entrySet()) { String fieldName = entry.getKey(); FieldInfo fieldInfo = entry.getValue(); // process fieldInfo }


Use el controlador luke:

http://solr:8983/solr/admin/luke?numTerms=0

Use una xpath para obtener todos los campos que tengan la etiqueta dynamicBase que coincida con la definición de campos dinámicos que está buscando.