Estoy tratando de comenzar con Apache Solr, pero algunas cosas no están claras para mí. Leyendo el tutorial, configuré una instancia de Solr en ejecución. Lo que encuentro confuso es que toda la configuración de Solr (esquemas, etc.) está en formato XML. Cuando agregan datos de muestra, muestra cómo agregar documentos xml (java -jar post.jar solr.xml monitor.xml
). ¿Es solo una mala elección del formato de muestra? Quiero decir, ¿están cargando datos que describen documentos, o los documentos reales que están agregando son archivos .xml?Comenzando con Solr
Estoy tratando de agregar algunos libros en formato .txt, así que si uso java -jar post.jar mydoc.txt
, ¿lo estoy agregando? ¿Cómo podría agregar este documento y metadatos (autor, título) al respecto?
Dicho esto, he intentado crear una página HTML simple para publicar documentos a Solr:
<html>
<head></head>
<body>
<form action="http://localhost:8983/solr/update?commit=true" enctype="multipart/form-data" method="post">
<input type="file">
<input type="submit" value="Send">
</form>
</body>
</html>
Cuando intento publicar un archivo, recibo esta respuesta:
<response>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">26</int>
</lst>
</response>
Es ¿esto correcto? ¿Significa que he agregado mi archivo correctamente? Si es así, una de las palabras en el archivo, por ejemplo, es "montagna" (este es un libro italiano, montagna significa montaña ...). Si vuelvo a visitar la url
http://localhost:8983/solr/select/?q=montagna&start=0&rows=10&indent=on
espero algo que debe ser devuelto (todo el texto tal vez, o alguna información sobre el archivo), pero esto es lo que me pasa: no parece
<response>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">1</int>
<lst name="params">
<str name="indent">on</str>
<str name="start">0</str>
<str name="q">montagna</str>
<str name="rows">10</str>
</lst>
</lst>
<result name="response" numFound="0" start="0"/>
</response>
como un partido para mí. Además, según to this answer, debería poder recuperar el texto que rodea las coincidencias con hl.fragsize
. ¿Cómo integro esto en la cadena de búsqueda? Gracias