2025. 3. 27. 12:16ㆍ국민북 서비스 이야기
우리 동네 페이지에서 검색을 통해 다른 동네 선출직 공무원들을 확인할 수 있는데요,
서울시부터 점차적으로 추가하고 있습니다.
이번 업데이트는 세종시와 제주도 추가 하였는데요, 생각보다 기존 선거구 구조와 달라서 시간이 걸렸던 것 같습니다.
서울시 경우, 시장. 시의원. 구청장. 구의원 이렇게 있습니다.
그래서 국민북 서비스에서 주소 체계는 간단하게 광역시도. 시군구. 읍면동 이렇게 3가지 운영하고 있습니다.
하지만, 모든 지자체가 행정구역이 모두 같지 않기에, 위 주소 체계를 일괄적으로 적용 하는데 문제가 있었습니다.
예를 들어, 세종특별자치시와 제주특별자치도는 시장과 시의원만 있습니다.
문제는 선거구 기준이 읍면동 보다 더 세부적인 통. 리 단위로 구분 된다는 점 입니다.
이것은 기존 방식에서 운영하던 읍면동 단위에서 추가 정보가 필요하게 되었고,
결국 통. 리 단위 해당 DB 컬럼을 추가하는 것이 불가피했습니다.
이제는 운영상에 DB 스키마 작업이나 수정하는데 익숙해서 큰 문제는 없었습니다만, 지속적인 모니터링은 필요해 보입니다.
또 다른 문제로 통 주소를 바로 얻을 수 있는 타 서비스나 API 가 없다는 점 입니다.
결론적으로 자체적으로 만들어야 했습니다.
다른 관점으로 사용자에게 통 주소 정보를 직접 입력을 받는 방법도 생각했지만,
제 생각엔 대부분 우리 국민들은 통 주소를 외우고 있지 않을 가능성이 높다는 판단 입니다.
행정복지센터 문의를 통해 다행히 국가법령센터 사이트에서 통 주소를 건물 또는 지번 매핑된 자료를 찾을 수 있었습니다.
이제, 행정 당국 또는 네이버, 다음 포털에서 제공하는 주소 API는 도로명/지번 주소를 이용해야 합니다.
1. 세종특별자치시 통 주소 분석
세종시에서 통 단위로 선거구를 구별하는 지역은, '도담동'과 '고운동' 입니다.
제7선거구 | 도담동 | 1-9통, 13∼19통, 22통, 25통 |
제8선거구 | 도담동 | 10∼12통, 20통, 21통, 23통, 24통, 어진동 |
제11선거구 | 고운동 | 1∼4통, 6통, 13통, 15∼18통, 21통, 23∼25통, 28∼30통, 34통 |
제12선거구 | 고운동 | 5통, 7∼12통, 14통, 19통, 20통, 22통, 26통, 27통, 31∼33통, 35통 |
처음에는 위 주소를 모두 데이터베이스 작업을 진행 하는 것을 생각 했었습니다.
하지만, 좀 더 효율적으로 데이터를 관리하고 싶었습니다.
시간을 두고 데이터를 계속 보다가,
아파트 동 정보 대신에 단지 정보로도 충분히 통 주소를 매핑이 가능하다고 판단 했습니다.
제7선거구 | 도담동 | 1~9단지, 11단지 |
제8선거구 | 도담동 | 10단지, 12~22단지, 그외 주택/상가 등 |
제11선거구 | 고운동 | 1~9단지, 11단지, 16~19단지, 라온프라이빗시티, 한신휴시티 |
제12선거구 | 고운동 | 9~10단지, 14~15단지, 그외 주택/상가 등 |
여기서 더 효율적으로 작업을 한다면,
DB 에는 도담동 제7선거구, 고운동 제11선거구 이렇게 2개만 데이터 적재하여,
나머지는 여집합 방식으로 설계 합니다.
아쉽지만, 이 단지 정보로 지금 이용하고 있는 주소 API 에서는 사용할 수 없습니다.
단지(건물) 응답 값이 선택적이고, 데이터 포맷이 일관적이지 않았습니다.
가령, "가재마을1단지 101동", "가재마을 2단지 201동" 처럼,
빈칸이 나와서 별도로 정제하는 코드가 필요했습니다.
2. 제주특별자치도 통 주소 분석
제주도는 '이도2동', '아라동', '연동' 그리고 '노형동' 이상 4개가 있습니다만, 세종시 보다 좀 더 복잡합니다.
지역 특성상 주택이 많다 보니, 지번 주소로 통 주소와 매핑 되어 있었습니다.
각 선거구를 지도상에서 보면 흩어져 있는 것이 아니라 경계선을 기준으로 나뉘어져 있기 때문에,
지번 주소를 범위로 정리한다면 효율적으로 DB 작업이 가능합니다.
예를 들어, 이도2동 경우는
제주시 이도2동갑선거구 | 이도2동 | 1통~20통, 48통~55통, 57통~59통, 60통~61통 |
제주시 이도2동을선거구 | 이도2동 | 21통~47통, 56통, 62통 |
이도2동을선거구 기준으로 지번 주소를 범위를 요약 해봤습니다.
- 1~3
- 7
- 10~13
- 17-18
- 21
- 24-25
- 27-30
- 32
- 34
- 36
- 40-43
- 45
- 47-50
- 52
- 55
- 56-61
- 72-73
- 75-76
- 78
- 84
- 96-99
- 107
- 110-112
- 114
- 116-119
- 122
- 127
- 148
- 150
- 256-257
- 260
- 262
- 264
- 269-271
- 273
- 315-317
- 321-322
- 324-325
- 663~664
- 672-673
- 690
- 777 이도주공아파트
- 888 이도주공아파트
- 1000
- 1008-1021
- 1045-1051
- 1060-1061
- 1100
- 1185-1189
- 1765-1773
- 1776
- 1778-1781
- 1909-1910
- 1916
- 1927-1928
- 1941-1942
- 1944-1949
- 1950-1951
- 1952-1966
- 1972-1990
- 1996
- 1998
- 2000-2006
- 2007-2043
- 도남동 46-54
- 도남동 60-69
- 도남동 70 수선화아파트
- 도남동 72-90
- 도남동 96-183
- 도남동 567-568
- 도남동 572-574
- 도남동 576
- 도남동 668-670
- 도남동 676
- 도남동 680
- 도남동 684-689
- 도남동 691
- 도남동 693-696
- 도남동 698
- 도남동 703
- 도남동 705
- 도남동 713
- 도남동 726
- 도남동 730-735
- 도남동 737-738
- 도남동 740-743
- 도남동 746-751
- 도남동 755-751
- 도남동 761
- 도남동 763
- 도남동 765
- 도남동 767
- 도남동 769
- 도남동 771-773
- 도남동 792-797
- 도남동 800 대림아파트1차
- 도남동 811 도남해모로리치힐 1단지
- 도남동 825-826
- 도남동 828
- 도남동 832-835
- 도남동 839-840
- 도남동 844-845
- 도남동 848
- 도남동 902 대림아파트2차
- 도남동 900-913
- 도남동 918-923
- 도남동 1018
- 도남동 1022-1030
- 도남동 1035
- 도남동 1041-1042
참 많죠.
이 번지들을 모두 DB 넣는 방법도 있겠지만,
그래도 저는 불만 입니다.
조금 더 최적화 하고 싶고, 효율적인 데이터 관리를 하고 싶었습니다.
그 이야기는 다음 글에서 정리합니다.
'국민북 서비스 이야기' 카테고리의 다른 글
지난 1년, 2024 회고록 - 첫번째, 스프린트 도입과 운영 (0) | 2025.03.12 |
---|