xy point 필드 타입
xy point 필드 타입
xy_point 필드 타입은 x, y 좌표로 지정된 2차원 직교(데카르트) 좌표계의 한 점을 담는 필드 타입이에요. Lucene의 XYPoint 필드 타입을 기반으로 하며, geopoint 필드 타입과 비슷하지만 geopoint의 범위 제한이 없습니다.
출처: 문서
본문
2.4 버전에서 도입되었어요.
xy_point 필드 타입은 x, y 좌표로 지정된 2차원 직교 좌표계의 한 점을 담아요. Lucene XYPoint 필드 타입을 기반으로 해요. xy_point 필드 타입은 geopoint 필드 타입과 비슷하지만 geopoint의 범위 제한이 없어요. xy point의 좌표는 단정밀도 부동소수점 값이에요. 부동소수점 값의 범위와 정밀도에 대한 정보는 Numeric field types를 참조하세요.
예시 (Example)
xy_point 필드 타입이 있는 매핑을 생성하세요.
PUT testindex1
{
"mappings": {
"properties": {
"point": {
"type": "xy_point"
}
}
}
}
형식 (Formats)
xy point는 다음 형식으로 인덱싱할 수 있어요.
- x, y 좌표를 가진 객체
PUT testindex1/_doc/1
{
"point": {
"x": 0.5,
"y": 4.5
}
}
"x, y"형식의 문자열
PUT testindex1/_doc/2
{
"point": "0.5, 4.5"
}
[x, y]형식의 배열
PUT testindex1/_doc/3
{
"point": [0.5, 4.5]
}
"POINT(x y)"형식의 WKT(Well-Known Text) POINT
PUT testindex1/_doc/4
{
"point": "POINT (0.5 4.5)"
}
- GeoJSON 형식
PUT testindex1/_doc/5
{
"point" : {
"type" : "Point",
"coordinates" : [0.5, 4.5]
}
}
모든 xy point 형식에서 좌표는 x, y 순서로 지정해야 해요.
파라미터 (Parameters)
다음 표는 xy_point 필드 타입이 받아들이는 파라미터를 나열해요. 모든 파라미터는 선택 사항이에요.
| 파라미터 | 설명 |
|---|---|
ignore_malformed |
잘못된 값을 무시하고 예외를 던지지 않을지 여부를 지정하는 Boolean 값. 기본값은 false. |
ignore_z_value |
좌표가 3개인 점과 관련됨. ignore_z_value가 true이면 세 번째 좌표는 인덱싱되지 않지만 _source 필드에는 여전히 저장돼요. ignore_z_value가 false이면 예외가 던져져요. |
null_value |
null 대신 사용할 값. 필드와 같은 타입이어야 해요. 이 파라미터를 지정하지 않으면 값이 null일 때 필드는 누락으로 처리돼요. 기본값은 null. |