회사에서 기획자분이 키바나를 사용하여 쿼리문을 날려 상품들을 QA하고 계신데, (기획자분인데 대단쓰..) 특정 필드가 검색이 안된다 그래서 한번 ES에 있는 그 필드를 쓱- 살펴봤다.
💩 원인 : 필드를 살펴보니 아래 코드처럼 enabled: false
로 세팅이 되어있었다. 사양상에 검색이 가능한 필드들은 모두 enabled: false
세팅이 없었다. 그래서 느낌적인 느낌으로, 바로 이것때문에 그런 것 같다는 생각이 들었다. 검색해보니 필드의 enabled: false
일 경우, 해당 필드를 색인하지 않는다고 한다. true
로 해둔 필드가 많을수록, 즉 인덱싱이 가능하도록 설정한 필드가 많을수록, 인덱싱 파일 용량이 증가한다고 한다.
"mappings": {
"dynamic": "false",
"properties": {
"field명" : {
"type": "object",
"enabled": false
}
}
}
👩🍳 해결 : enabled: false
세팅을 뺴면 그만인데, 이걸 뺐을 때 성능상에 문제가 없진 않을 거란 생각에 다른 필드로 검색할 수 있도록 알려드렸다.