개발 경력을 쌓아 나가다보면 지도 관련 개발을 한번은 경험하게 됨
내 경우 사용자 위치기반 리뷰 어플리케이션을 만든 적이 있었는데 시험삼아 위치 정보를 1,000만건 만들어서 DB에 넣고 위경도로 select 쿼리를 날리니까 쿼리 속도가 끔찍했음.
그 당시 (17년도) H3를 알았더라면 좀 더 쌈@뽕 하게 해결 할 수 있지 않았을까 하는 생각이 들었음
그래서 지금이라도 함.
H3는 우버에서 오픈소스로 개발한 지리 공간 인덱싱 시스템(Geospatial Indexing System, 햐).
지구 표면을 크고 작은 육각형 격자(Grid)로 나누고 각 칸에 고유한 ID를 부여하여 위치 데이터를 효율적으로 분석하고 처리할 수 있도록 돕는 기술임
기존의 사각형 격자 시스템과 달리 H3는 **육각형(Hexagon)**을 기본 단위로 사용한다는 점이 가장 큰 특징
이는 분석 및 처리 과정에서 여러 가지 장점을 제공함. 이건 뒤에서 하나씩 알아보겠음


위 그림처럼 지구본을 육각형으로 나눠서 분석하는 인덱싱 시스템이다.
지리 공간 인덱싱 시스템이란 전 세계 모든 위치에 '디지털 우편번호'를 붙여서 컴퓨터가 특정 지역 정보를 번개처럼 빠르게 찾게 해주는 똑똑한 주소체계임.
케이스별로 하나씩 알아가보겠음. (이하 지리 공간 인덱싱 시스템은 GIS로 명칭)
내가 있는 기준에서 데이터베이스에 존재하는 모든 카페 목록을 받아와서 모든 카페와 나의 위치를 전부 계산해야 함

내 위경도를 기준으로 내 주변에 검색할 사각형 영역에 해당하는 정보를 모두 가져와서 계산함
