근처 공공 화장실 하나 찾기가 이렇게 어렵다니: Public-Lens를 만든 이유
처음 가 본 동네에서 산책을 하다가 갑자기 화장실이 급해진 적이 있습니다. 지도 앱을 열어 "화장실"을 검색해 보았지만, 결과의 대부분은 카페나 음식점이었고 손님이 아닌 사람도 눈치 보지 않고 이용할 수 있는 개방화장실인지는 알 수 없었습니다. 결국 한참을 걸어 지하철역까지 가서야 해결할 수 있었습니다. 그날 걸으면서 "지자체마다 공중화장실 데이터를 분명히 개방해 두었을 텐데, 왜 정작 급할 때 내 주변 지도로 바로 보기는 이렇게 어려울까"라는 생각이 떠나지 않았습니다.
이 글은 그 문제의식에서 출발해 전국 19종의 공공 편의시설 데이터를 하나의 인터랙티브 지도로 통합한 Public-Lens(퍼블릭렌즈)를 설계하고 구축한 기록입니다.
불편 하나: 급할 때는 표(Table)가 아니라 '내 주변 지도'가 필요하다
찾아보니 공공 편의시설 데이터 자체는 생각보다 풍부하게 개방되어 있었습니다. 행정안전부와 공공데이터포털(data.go.kr)에는 전국 지자체가 관리하는 전국공중화장실표준데이터가 등록되어 있고, 여기에는 위·경도 좌표뿐 아니라 개방 시간, 남녀 공용 여부, 기저귀 교환대, 장애인 화장실, 비상벨 유무까지 상세히 담겨 있습니다.
문제는 이 귀중한 데이터가 일반 시민이 거리에서 바로 쓸 수 있는 형태가 아니라, 수만 줄의 CSV 표나 부처별 조회 화면으로 흩어져 있다는 점이었습니다. 급한 상황에서 스마트폰으로 시·군·구를 선택하고 도로명 주소를 하나씩 읽어가며 현재 내 위치와의 거리를 가늠하는 것은 현실적으로 불가능에 가까웠습니다.
그래서 Public-Lens는 가장 먼저 사용자의 현재 GPS 위치를 중심으로 반경 내 시설을 지도 마커로 즉시 렌더링하는 것에 집중했습니다. 표를 읽는 대신 가장 가까운 마커를 터치하면 개방 시간과 세부 편의시설 유무가 카드로 바로 나타나도록 설계했습니다.
불편 둘: 부처와 기관마다 뿔뿔이 흩어진 생활·안전 정보
공중화장실 데이터를 지도에 올리고 나니 일상에서 똑같은 패턴으로 겪던 불편들이 줄지어 떠올랐습니다. 일요일 오후에 급히 해열제를 사러 안전상비의약품 판매 편의점이나 당번 약국을 찾을 때, 반려견이 갑자기 아파 주변 동물병원과 동물약국을 함께 찾아야 할 때, 이사 온 동네의 종량제·음식물 쓰레기 배출 요일이 헷갈릴 때, 밤늦은 귀갓길 주변의 방범용 CCTV와 비상벨 위치를 확인하고 싶을 때마다 매번 서로 다른 부처 사이트나 지자체 게시판을 찾아 헤매야 했습니다.
정보를 관리하는 주체는 행정안전부, 보건복지부, 농림축산식품부, 각 지방자치단체로 나뉘어 있더라도, 시민 입장에서는 결국 "지금 내가 서 있는 곳 주변에 무엇이 있는가"라는 단 하나의 질문으로 귀결됩니다. Public-Lens는 이렇게 분산된 공공데이터를 수집·정규화하여 하나의 지도 인터페이스 위에서 19개 카테고리로 즉시 전환해 볼 수 있도록 묶었습니다.
- 생활 편의 (7종): 공중·개방화장실, 공영·민간 주차장, 시군구별 쓰레기 배출 안내, 공공 무료 와이파이, 자전거 보관소, 세차장, 지역 보호수
- 의료·건강 (6종): 약국, 안전상비의약품 판매업소, 동네 의원, 병원·종합병원, 산후조리원, 부속의료기관
- 반려동물 (3종): 동물병원, 동물약국, 반려동물 미용업소
- 안전·재난 (3종): 안전비상벨, 방범용 CCTV, 민방위 대피소

▲ Public-Lens에서 19종 공공 편의시설 카테고리를 한 화면에서 고를 수 있습니다
불편 셋: 복잡한 행정구역 단계 선택 대신 통합 검색으로
공공 포털의 조회 화면은 대개 '시·도 선택 → 시·군·구 선택 → 읍·면·동 입력' 순서를 요구합니다. 하지만 여행지나 출장지처럼 낯선 곳에서는 내가 지금 서 있는 곳이 어느 구, 어느 동 경계인지조차 헷갈리기 마련입니다.
이를 해결하기 위해 상단에 카테고리·장소 통합 검색창을 배치했습니다. "화장실", "약국", "주차장", "대피소"처럼 시설 키워드를 입력하면 즉시 해당 레이어로 전환되고, 역 이름이나 주소를 입력하면 해당 좌표로 지도 중심이 이동해 주변 시설을 바로 탐색할 수 있습니다.
불편 넷: 앱 설치나 회원가입 없이 모바일 브라우저에서 즉시 실행
일년에 몇 번 급하게 찾는 공공시설 정보 때문에 전용 앱을 다운로드하고 권한 동의와 회원가입을 거치는 것은 사용자에게 큰 진입장벽입니다. Public-Lens는 별도 앱 설치 없이 모바일과 데스크톱 웹 브라우저에서 public-lens.hongry.dev에 접속하면 곧바로 지도가 열리도록 경량 웹 애플리케이션으로 구축했습니다.
데이터 파이프라인 설계와 공간 인덱싱 최적화
19종의 서로 다른 공공데이터셋을 하나의 지도 서비스로 통합하면서 가장 까다로웠던 엔지니어링 과제는 데이터 스키마 정규화와 좌표 결측치 보정이었습니다. 기관마다 좌표계가 WGS84 위·경도인 곳도 있고 중부원점 TM이나 UTM-K 좌표로 제공되는 곳도 있었으며, 일부 지자체 데이터는 위도와 경도 컬럼 값이 서로 뒤바뀌어 있거나 주소만 있고 좌표가 비어 있는 레코드도 적지 않았습니다.
이를 해결하기 위해 주기적으로 원본 데이터를 수집할 때 좌표계 변환과 유효 범위(한반도 위·경도 바운더리) 검증을 거치는 전처리 파이프라인을 구축했고, 수십만 건의 시설물 좌표를 지도 화면 이동 시마다 수십 밀리초 안에 조회할 수 있도록 데이터베이스 공간 인덱싱과 뷰포트 기반 클러스터링을 적용했습니다. 서비스 인프라는 자체 K3s 클러스터 위에 컨테이너 기반으로 배포해 안정적으로 운영하고 있습니다.
실생활에서 이렇게 활용합니다
- 아이와 함께 공원이나 낯선 동네에 외출했을 때 기저귀 교환대가 설치된 개방화장실을 먼저 확인합니다.
- 심야 시간이나 휴일에 급히 상비약이 필요할 때 주변 안전상비의약품 판매 편의점과 약국 위치를 대조합니다.
- 처음 방문하는 지역에 차량으로 이동하기 전, 목적지 반경 내 공영주차장 위치와 요금 정보를 미리 파악합니다.
- 여름철 폭염이나 겨울철 한파, 비상시 대피 공간이 궁금할 때 주변 대피 시설을 확인합니다. 관련 내용은 여름 무더위쉼터와 겨울 한파쉼터 찾는 방법에도 자세히 정리해 두었습니다.
19종 전체 카테고리의 상세 기능과 데이터 확인 요령은 Public-Lens 사용 가이드에서 확인하실 수 있습니다.
공공데이터의 한계와 이용 시 유의사항
Public-Lens는 정부 및 지방자치단체가 개방한 공식 데이터를 기반으로 동작하기 때문에, 원본 데이터의 갱신 주기에 따른 시차가 존재할 수 있습니다. 최근 폐업한 약국·병원이 아직 데이터셋에 남아 있거나 지자체 사정으로 화장실 개방 시간이 변경된 경우가 있을 수 있으므로, 심야 의료기관이나 약국 방문 전에는 상세 카드에 표시된 전화번호로 영업 여부를 먼저 확인하시는 것을 권장합니다.
앞으로는 각 시설 카드에 원본 데이터의 기준일자(최종 갱신일)를 더욱 명확히 노출하고, 잘못된 현장 정보를 제보받아 빠르게 교차 검증할 수 있는 피드백 기능을 보강해 나갈 계획입니다.