>  기사  >  백엔드 개발  >  PHP 환경에서 전체 텍스트 검색을 위해 elasticSearch+ik 단어 분할기를 사용하세요.

PHP 환경에서 전체 텍스트 검색을 위해 elasticSearch+ik 단어 분할기를 사용하세요.

藏色散人
藏色散人앞으로
2020-01-06 16:49:195369검색

가장 먼저 주목해야 할 점은 ik 단어 분할기를 활성화해야 하는 경우 단어 분할기의 버전이 es 버전과 일치해야 한다는 것입니다. 즉, 6.3.0 단어 분할기에는 동일한 6.3.0 버전의 es가 필요합니다. 지원하다.

java

win-64bit 설치 패키지를 설치하려면 java English 공식 웹사이트로 이동하여

ElasticSearch(ES) 설치

6.3.0 버전 es 다운로드 주소:

를 찾아야 합니다. https://www.elastic.co/downloads/past-releases/elasticsearch-6-3-0

강좌 추천 →: "Elasticsearch 전체 텍스트 검색 실전 전투"(실습 영상)

From thecourse"천만급 데이터 동시성 솔루션(이론+실전 전투)》

IK 설치

Win 환경에서 bin 명령줄을 입력한 후

elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.3.0/elasticsearch-analysis-ik-6.3.0.zip

를 실행한 후 es를 다시 시작하세요. 또한 es에는 핫 재시작 기능이 없습니다. 데몬이 시작된 후 다시 시작하려면 먼저 프로세스를 종료한 다음 es를 시작하면 됩니다.

php 클라이언트 설치

composer require elasticsearch/elasticsearch

ik 원격 구성 Dictionary

IKAnalyzer.cfg.xml에서 응답 구성을 변경하세요

<!--用户可以在这里配置远程扩展字典 -->
<entry key="remote_ext_dict">http://xxx.com/getDic.php</entry>
<!--用户可以在这里配置远程扩展停止词字典-->
<entry key="remote_ext_stopwords">http://xxx.com/getDicStop.php</entry>

다시 시작할 때 "java.security.AccessControlException: 액세스가 거부되었습니다(java.net.SocketPermission 127.0.0.1:8080 connect,resolve)"와 유사한 오류가 발생하는 경우 예, 해결책은 %JAVA_HOME%/jre6/lib/security/java.policy 파일을 찾아 java.net.SocketPermission "127.0.0.1:8080","connect" 권한을 추가한 다음 es

정보를 다시 시작하는 것입니다. 원격 사전

확장 사전의 단어가 필터링되고, 확장된 불용어의 단어가 필터링됩니다.

즉, 다양한 인기 단어와 같이 특정 단어를 하나의 단어로 처리하려는 경우; , 그런 다음 확장 사전에 추가하세요.

특정 단어를 필터링하려면 해당 단어를 확장 제외 단어에 추가하세요.

PHP 관련 지식을 더 보려면 PHP 튜토리얼을 방문하세요!

위 내용은 PHP 환경에서 전체 텍스트 검색을 위해 elasticSearch+ik 단어 분할기를 사용하세요.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 csdn.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제