Geohash 테스트 프로그램


 GeoHash Table

자료구조

메모리에 올린다고 하면 REDIS의 ZADD 가 적당하겠다. 하지만 데이터양이 많아진다면, 메모리에는 높은 중요도를 가지는 데이터들을 올리고 그렇지 않은 데이터는 SQL 혹은 NoSQL에 저장을 해야 할거다. 프로세스는 아래와 같다.

  1. 요청을 하면 REDIS에서 먼저 검색한다.
  2. REDIS에서 찾을 수 없다면, 원본이 저장된 DB에서 읽는다.
REDIS의 경우 아래의 command를 사용할 수 있을 것이다.

 REDIS 자료구조

이제 위치정보를 포함한 데이터를 어떤 DB에 저장할지를 선택해야 한다. 굳이 R-Tree를 사용 할 필요가 없을 것이다. 그냥 B-Tree를 사용하면서 스케일링이 자유로운 데이터베이스를 선택하면 된다.