Computer >> 컴퓨터 >  >> 프로그래밍 >> Redis

Redis GEOPOS 명령어 – 지리 공간 값에서 멤버의 경도·위도 조회하기

이 튜토리얼에서는 Redis에 저장된 지리 공간 값(geospatial value)에서 하나 이상의 멤버에 대한 경도와 위도를 조회하는 방법을 알아봅니다. 이를 위해 Redis의 GEOPOS 명령어를 사용합니다.

GEOPOS 명령어란?

GEOPOS 명령어는 키(key)에 저장된 지리 공간 값(정렬된 집합, Sorted Set)에서 지정한 하나 이상의 멤버에 대한 경도와 위도를 반환하는 데 사용됩니다. GEOADD 명령어로 좌표(경도, 위도)를 지리 공간 값에 삽입하면 해당 좌표는 내부적으로 52비트 geohash로 변환됩니다. 따라서 좌표를 다시 조회할 때는 삽입 시 사용했던 값과 완전히 동일하지 않고 약간의 오차가 포함될 수 있습니다.

반환 결과는 배열 형태이며, 각 요소는 지정된 멤버의 경도와 위도를 나타내는 두 개의 값으로 구성된 배열입니다. 키가 존재하지 않으면 빈 배열이 반환되고, 키가 존재하지만 해당 키에 저장된 값이 GEOADD 명령어로 생성된 정렬된 집합(Sorted Set) 타입이 아닌 경우에는 오류가 반환됩니다.

문법

redis host:port> GEOPOS <member> [member]

반환값

- (string) reply : 지정된 멤버들의 경도와 위도를 나타냄
- 빈 배열 : 키가 존재하지 않는 경우
- 오류 : 키가 존재하지만 저장된 값이 GEOADD로 생성된 정렬된 집합이 아닌 경우

예제

Redis GEOPOS 명령어 – 지리 공간 값에서 멤버의 경도·위도 조회하기

참고 자료

  1. GEOPOS 명령어 공식 문서

지금까지 Redis 데이터 저장소에 저장된 지리 공간 값에서 하나 이상의 멤버의 경도와 위도를 조회하는 방법을 알아보았습니다. 이 글이 도움이 되셨다면 댓글로 의견을 남겨주시고, 주변에도 널리 공유해 주세요.