1. Antecedentes:
Después de realizar la instalación y configuración de elasticsearch y kibana, no logré el efecto deseado al realizar la segmentación de palabras, por lo que escribí sobre la instalación y configuración del segmentador de palabras ik de elasticsearch (segmentación de palabras personalizada).
2. Solución:
1: Primero mire el efecto de no agregar el tokenizador ik.
POST _analyze
{
"analyzer": "standard",
"text": "我是中国人"
}
2: Descarga el paquete ik.
https://github.com/medcl/elasticsearch-analysis-ik
3: Elija su propia versión de respuesta.
4: Cargue el archivo descargado a los complementos en nuestra carpeta elasticsearch.
5: reinicie elasticsearch y pruebe.
docker restart es的名称或者ip
POST _analyze
{
"analyzer": "ik_smart",
"text": "我是炎黄子孙"
}
POST _analyze
{
"analyzer": "ik_max_word",
"text": "我是中国人"
}
6: El tokenizador ik se instaló arriba, pero no es el resultado que queremos. ¿Cómo se pueden dividir los "descendientes de Yanhuang" en dos "Yanhuang"?
"Descendientes", necesitamos personalizar el vocabulario y crear carpetas como nginx.
mkdir nginx
Descargar el espejo nginx
docker run -p 80:80 --name nginx -d nginx:1.10
7: Copie el archivo de configuración en el contenedor al directorio actual.
docker container cp nginx:/etc/nginx .
注意:别忘了后面的点
8: Modificar el nombre del archivo:
mv nginx conf
9: Mover conf a /mydata/nginx
mv conf nginx/
10: Terminar contenedor original.
docker stop nginx
11: Ejecute el comando para eliminar el contenedor original.
docker rm $ContainerId
12: Cree un nuevo nginx y ejecute el siguiente comando.
docker run -p 80:80 --name nginx \
-v /mydata/nginx/html:/usr/share/nginx/html \
-v /mydata/nginx/logs:/var/log/nginx \
-v /mydata/nginx/conf:/etc/nginx \
-d nginx:1.10
13: Cree index.html en la carpeta html en nginx.
14: Cree una carpeta es debajo de la carpeta html.
mkdir es
15: Introduzca es, cree el archivo fenci.txt
vi fenci.txt
16: Personaliza nuestras palabras.
Ingresa a: http://192.168.56.10/es/fenci.txt
17: Modifique IKAnalyzer.cfg.xml en /usr/share/elasticsearch/plugins/ik/config/
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties>
<comment>IK Analyzer 扩展配置</comment>
<!--用户可以在这里配置自己的扩展字典 -->
<entry key="ext_dict"></entry>
<!--用户可以在这里配置自己的扩展停止词字典-->
<entry key="ext_stopwords"></entry>
<!--用户可以在这里配置远程扩展字典 -->
<entry key="remote_ext_dict">http://192.168.56.10/es/fenci.txt</entry>
<!--用户可以在这里配置远程扩展停止词字典-->
<!-- <entry key="remote_ext_stopwords">words_location</entry> -->
</properties
18: Reiniciar es.
19: Verifique el efecto.
3. Resumen:
ayudar a la gente hace feliz a una persona