-
[초기 환경 구축] 도로 데이터 DB 구축SSAFY(프로젝트)/1) relpl - 고민했던 내용 2024. 5. 28. 15:19
0. 도로 데이터 수집 결과 - Workbench로 본 데이터
해당 데이터는 PostgreSQL에 저장된 요약된 도로 데이터로 알고리즘에 사용하기 위한 도로의 시작점, 끝 점 데이터이다.
1. 도로 데이터 수집 배경
프로젝트 기획상 다른 API가 제공하는 최단 경로가 아닌,
relpl만의 효율적인 플로깅을 위한 추천 경로 제공 기능이 필요했고, 이를 위해 TMap API를 선택했다.
해당 API는 위/경도 좌표를 제공하면, 가장 가까운 도로 정보를 반환하는 API로
이를 이용해 단순 Api 호출을 통한 최단 경로 제공이 아닌, 자체적인 도로 데이터 구축을 통해
효율적인 플로깅 추천 경로 제공 수단으로 이용했다.
2. 고민한 내용
TMap Api를 이용해 도로 데이터를 수집했을 때 모든 도로 데이터를 RDB에 저장하는 것은 비효율적이라고 판단했지만,
API 호출 결과 중 필요한 데이터만 DB에 저장하는 것은 추후 API에서 새로운 데이터가 필요할 경우 다시 수집해야 하는 문제점이 예상되었다.
이를 해결하기 위해 TMap Api의 모든 결과는 NoSQL인 MongoDB에,
알고리즘을 위한 요약된 도로 데이터는 RDB이자 공간 데이터를 다루는데 효과적인 PostgreSQL에 저장하기로 결정했다.
그래서 두 개에 DB에 저장된 데이터를 정리하면 다음과 같다.
PostgreSQL
- 추천 경로 알고리즘에 필요한 요약된 도로 데이터 저장
- 도로의 시작 점, 도로의 끝 점, 도로의 길이, Tmap 도로 ID
MongoDB
- 경로를 그리기 위한 전체 도로 데이터 저장
- 도로를 구성하는 모든 점, 도로의 길이, TMap 도로 ID
반응형'SSAFY(프로젝트) > 1) relpl - 고민했던 내용' 카테고리의 다른 글
[Intro] relpl이란? (1) 2024.02.12