공간 데이터 쿼리 - Amazon Athena

공간 데이터 쿼리

지리 공간 데이터에는 객체의 지리적 위치를 지정하는 식별자가 포함되어 있습니다. 이러한 형식의 데이터의 예로는 일기 예보, 지도 안내, 지리적 위치, 매장 위치 및 항공사 노선이 있는 트윗 등이 있습니다. 지리 공간 데이터는 비즈니스 분석, 보고 및 예측에 중요한 역할을 합니다.

위도, 경도와 같은 지리 공간 식별자를 사용하면 모든 우편 주소를 지리적 좌표 집합으로 변환할 수 있습니다.

지리 공간 쿼리란 무엇인가요?

지리 공간 쿼리는 Athena에 지원되는 특수한 SQL 쿼리 형식입니다. 다음과 같은 점에서 비 공간 SQL 쿼리와 다릅니다.

  • point, line, multiline, polygon, multipolygon 등 특수한 geometry 데이터 형식을 사용합니다.

  • distance, equals, crosses, touches, overlaps, disjoint 등 geometry 데이터 형식 사이의 관계를 표현합니다.

Athena에서 지리 공간 쿼리를 사용하여 다음과 같은 작업을 실행할 수 있습니다.

  • 두 지점 사이의 거리를 파악합니다.

  • 한 영역(폴리곤)에 다른 영역이 포함되는지 확인합니다.

  • 한 줄이 다른 줄이나 폴리곤과 교차하거나 접촉하는지 확인합니다.

예를 들어 Athena에서 Mount Rainier의 지리적 좌표를 위해 double 형식의 값으로부터 point geometry 데이터 형식을 얻으려면 다음 예제처럼 ST_Point (longitude, latitude) 지리 공간 함수를 사용합니다.

ST_Point(-121.7602, 46.8527)

입력 데이터 형식 및 geometry 데이터 형식

Athena에서 지리 공간 함수를 사용하려면 데이터를 WKT 형식으로 입력하거나 Hive JSON SerDe를 사용합니다. Athena에 지원되는 geometry 데이터 형식을 사용할 수도 있습니다.

입력 데이터 형식

지리 공간 쿼리를 처리하기 위해 Athena는 다음 데이터 형식의 입력 데이터를 지원합니다.

  • WKT(Well-known Text). Athena에서 WKT는 varchar(x) 또는 string 데이터 형식으로 표현됩니다.

  • JSON 인코딩 지리 공간 데이터. 지리 공간 데이터로 JSON 파일을 구문 분석하고 테이블을 생성하기 위해 Athena는 Hive JSON SerDe를 사용합니다. Athena에서 이 SerDe 사용에 대한 자세한 내용은 JSON SerDe 라이브러리 단원을 참조하세요.

Geometry 데이터 형식

지리 공간 쿼리를 처리하기 위해 Athena는 다음과 같은 특수한 geometry 데이터 형식을 지원합니다.

  • point

  • line

  • polygon

  • multiline

  • multipolygon