Elasticsearch query_string 조회 및copy_해석

5262 단어 elasticsearch
Elastic Search의 일반적인 조회는 다음과 같습니다.
GET /lib3/user/_search?q=interests:changge

GET /lib3/user/_search?q=+interest:changge

GET /lib3/user/_search?q=-interests:changge

#  changge hejiu , 
#  changge hejiu
#  changge、hejiu、 changge hejiu 
GET /lib3/user/_search?q=changge,hejiu

상술한 조회 방식 때문에 다중 필드, 빅데이터 양의 경우 이런 조회 방식의 성능은 매우 낮을 것이다. Elasticsearch 6.0은copy_를 제공했다to.
# copy_to mapping 
# fullcontents , title、content fullcontents , 
PUT /myindex/article/_mapping
{
	"properties":{
		"post_date":{
			"type": "date"
		},
		"title":{
			"type": "text",
			"copy_to": "fullcontents" 
		},
		"content":{
			"type": "text",
			"copy_to": "fullcontents"
		},
		"author_id":{
			"type": "integer"
		}
	}
}

#  , fullcontents , title content fullcontents , , 
{
	"post_data": "2018-05-10",
	"title": "Java",
	"content": "java is the best language",
	"author_id": 119,
	"fullcontents": "Java java is the best language"
}

#  field , copy_to 
GET /lib3/user/_search?q=changge

copy_to 필드는 다른 필드의 값을 공백을 구분자로 조합하여 큰 문자열로 만든 다음에 분석되고 인덱스되지만 저장되지 않습니다. 즉, 검색될 수 있지만 되돌려받을 수 없습니다.
주의:copy_to가 가리키는 필드의 필드 형식은:text

좋은 웹페이지 즐겨찾기