반응형
Elasticsearch 데이터 타입
이 문서 내의 데이터 타입의 경우, 미리 지정해 두어야 해당 데이터 타입으로 설정가능합니다.
만약에 해당 데이터 타입으로 선언해두지 않고 데이터를 받게 된다면? 기본적으로 설정되는 데이터 타입으로 자동으로 지정되며, 자동으로 설정된 인덱스의 경우 수정을 하려면 해당 필드를 삭제하거나 새로 인덱스를 생성하여 데이터를 이동해야하는 수고로움이 발생할 수 있으니 참고 부탁드립니다!!
epoch_millis 시간 데이터
"field_name" : {
"type" : "date",
"format" : "yyyy-MM-dd HH:mm:ss||epoch_millis"
}
epoch_second 시간 데이터
"field_name" : {
"type" : "date",
"format" : "yyyy-MM-dd HH:mm:ss||epoch_second"
}
geo_point 데이터
"field_name" : {
"type" : "geo_point"
}
keyword 데이터
"field_name" : {
"type" : "keyword",
"ignore_above" : 256
}
- keyword 타입인 경우 exact value가 아닌 경우에는 단어가 포함되더라도 검색이 되지 않는 것으로 확인됩니다.
text 데이터
"field_name" : {
"type" : "text",
"fields" : {
"keyword" : {
"type" : "keyword",
"ignore_above" : 256
}
}
}
- keyword type으로 mapping됬을 때와 다르게 단어가 존재할 경우 검색되어 document를 return하는 것을 확인할 수 있습니다
binary 데이터
The binary type accepts a binary value as a Base64 encoded string. The field is not stored by default and is not searchable:
"field_name" : {
"type": "binary",
"doc_values": true
}
- 단, The Base64 encoded binary value must not have embedded newlines \n.
참고
- [Elasticsearch] data type: https://esbook.kimjmin.net/07-settings-and-mappings/7.2-mappings/7.2.3-date
- [Elasticsearch] binary type: https://www.elastic.co/guide/en/elasticsearch/reference/current/binary.html
반응형
'Study: DeveloperTools(DevTool) > DevTool: NoSQL(Elastic, Mongo)' 카테고리의 다른 글
[Elastic] ELK Stack: Elasticsearch 정리(NoSQL Document DB) (0) | 2022.08.31 |
---|---|
[Elastic] ELK Stack이란? 기본 개념 적립 (0) | 2022.08.30 |
[Elastic] Elasticsearch 인덱스 생성 및 삭제: shards, replica, mapping... (0) | 2022.08.26 |
[Elastic] Elasticsearch 구문 검색: 기본 Query 정리(Elastic Query DSL) (0) | 2022.08.18 |
[Elastic] Elasticsearch 구문 검색: 원하는 데이터를 삭제하자 (0) | 2022.08.03 |