Haz todo lo posible por comprender el código bien antes de utilizarlo a tu trabajo y si ttienes algo que aportar puedes decirlo en los comentarios.
Solución:
Déjame darte una respuesta corta.
Se utiliza un analizador en el tiempo de índice y en el tiempo de búsqueda. Se utiliza para crear un índice de términos.
Para indexar una frase, podría ser útil dividirla en palabras. Aquí viene el analizador.
Aplica tokenizadores y filtros de tokens. Un tokenizador podría ser un tokenizador de espacios en blanco. Dividía una frase en fichas en cada espacio. Un tokenizador en minúsculas dividirá una frase en cada letra que no sea y en minúsculas todas las letras.
Un filtro de fichas se utiliza para filtrar o convertir algunas fichas. Por ejemplo, un filtro plegable ASCII convertirá caracteres como ê, é, è en e.
Un analizador es una mezcla de todo eso.
Debe leer la Guía de análisis y mirar a la derecha todas las diferentes opciones que tiene.
De forma predeterminada, Elasticsearch aplica el analizador estándar. Eliminará todas las palabras comunes en inglés (y muchos otros filtros)
También puede usar Analyze Api para comprender cómo funciona. Muy útil.
En Lucene
el analizador es una combinación de tokenizador (divisor) + lematizador + filtro de palabras vacías
En ElasticSearch
el analizador es una combinación de
Character filter
: “ordenar” a string antes de que se tokenice, por ejemplo, elimine las etiquetas HTMLTokenizer
: Se utiliza para romper el string en términos individuales o tokens. Debe tener 1 solamente.Token filter
: cambiar, agregar o eliminar fichas. Stemmer es un ejemplo de filtro de fichas. Se usa para obtener la base de la palabra, por ejemplo.happy
yhappiness
ambos tienen la misma base eshappi
.
Vea la demostración de Snowball aquí
Esta es una configuración de muestra:
"settings":
"index" :
"analysis" :
"analyzer" :
"analyzerWithSnowball" :
"tokenizer" : "standard",
"filter" : ["standard", "lowercase", "englishSnowball"]
,
"filter" :
"englishSnowball" :
"type" : "snowball",
"language" : "english"
Árbitro:
- Comparación de analizadores Lucene
- http://www.elasticsearch.org/guide/en/elasticsearch/guide/current/custom-analyzers.html
Recuerda algo, que tienes la opción de añadir una valoración verdadera si chocaste tu dificultad a tiempo.