가이드 · 방법론
출퇴근 소요시간, 어떻게 계산하나요
살동네가 출퇴근 소요시간과 단지 데이터를 계산하는 방식을 설명합니다.
기준이 되는 데이터
살동네의 출퇴근 소요시간은 주요 업무지구를 목적지로 두고, 각 아파트 단지에서 해당 업무지구까지 이동하는 데 걸리는 시간을 미리 계산해 데이터베이스(d_apartment_major_district_access)에 저장한 값입니다.
직선거리나 단순 지도 거리가 아니라, Google Directions API를 이용해 환승·도보 구간을 포함한 경로 소요시간을 구합니다. 출발 시각은 평일 출근 시간대를 가정해 07:30(한국 시간) 기준으로 계산합니다.
웹 출퇴근 랜딩 페이지와 살동네 찾기의 시간 기반 검색은 기본적으로 대중교통(transit) 모드를 사용합니다. 자차(driving) 데이터도 별도로 저장·조회할 수 있으나, SEO 커뮤트 페이지는 대중교통 기준입니다.
현재 대표 업무지구 (37곳)
강남, 여의도, 광화문, 서울시청역, 마곡, 가산디지털단지, 구로디지털단지, 판교, 상암DMC, 송도, 둔산지구, 세종청사, 서면, 센텀시티, 문현금융단지, 동성로, 테크노폴리스, 삼산동, 상무지구, 충장로, 서부신시가지, 전주역, 교동, 춘천시청, 연동, 노형동, 죽도동, 용지로, 평거동, 신부동, 배방읍, 외동, 조례동, 나운동, 인동, 단계동, 성내동 등 — 앱의 출퇴근 목적지 선택 목록과 연동된 r_major_districts 테이블을 사용합니다.
왜 미리 계산해두나요
출퇴근 소요시간은 매번 실시간으로 외부 API를 호출하면 응답이 느려지고, 같은 경로를 반복 계산하는 비효율이 생깁니다. 살동네는 단지–업무지구 쌍별 소요시간을 미리 계산해 DB에 저장해두고, 검색·랜딩 페이지에서는 이 값을 즉시 조회합니다.
단지 상세·지도 마커에 표시되는 대표 통근 정보는 r_apartment_complexes.cached_commute_info캐시 컬럼에 별도로 저장해, 지도 API 응답 속도를 높입니다.
갱신 주기
- 대중교통 소요시간: 평일(월–금) 오전 배치로 갱신 작업을 실행합니다. API 호출 한도(기본 일 450건) 내에서 좌표가 있는 단지를 순차 처리합니다.
- 경로 재계산(TTL): 이미 저장된 단지–업무지구 쌍은 기본 1,095일(약 3년) 이내에 계산된 값이면 유지하고, 그보다 오래된 경우에만 다시 API를 호출합니다. 신규 단지·신규 업무지구 조합은 배치가 도달할 때 최초 계산됩니다.
- 자차 소요시간: 대중교통과 별도 배치(평일 오전)로 갱신하며, 동일한 DB 테이블에
travel_mode로 구분해 저장합니다.
출퇴근 SEO 페이지에 "데이터 스냅샷 기준일"이 표시되는 경우, 해당 페이지에 고정된 조회 결과의 생성 시각을 의미합니다.
실거래가는 어디서 가져오나요
아파트 실거래가는 국토교통부 공공데이터를 기반으로 d_apartment_trade 테이블에 적재합니다. 일배치로 신규·변경 거래를 반영합니다.
- 출퇴근 랜딩·time-based-search: 대표 가격은 최근 3개월 거래를 우선하고, 없으면 12개월·전체 최신 거래 순으로 fallback합니다.
- 지도 마커 캐시: 대표 평형 밴드 기준으로 최근 6개월 거래를 우선, 없으면 12개월 fallback을 사용합니다.
최근 거래가 없는 단지는 "최근 거래 정보 없음" 또는 "거래 없음"으로 표시됩니다.
한계와 주의사항
- 이 데이터는 개별 매물이나 정확한 계약 조건을 대체하지 않습니다. 실제 거래 전에는 반드시 현장 확인과 공인중개사 상담을 거치는 것을 권장합니다.
- 환승 대기·도보 속도·출발 시각은 개인 이동 패턴에 따라 달라질 수 있습니다. 배치 계산은 평일 07:30 출발 가정입니다.
- 좌표가 없거나 접근성 배치가 아직 도달하지 않은 단지는 소요시간·마커 정보가 비어 있을 수 있습니다.
- 실시간 열차 지연·공사 등은 반영되지 않습니다. 저장된 값은 마지막 API 계산 또는 캐시 갱신 시점 기준입니다.