데이터이야기

DB 노하우, 데이터직무, 다양한 인터뷰를 만나보세요.

[기술 7기] 방범시설과 범죄와의 상관관계 분석 (하)

데이터 이야기
작성자
dataonair
작성일
2015-01-05 00:00
조회
5421


방범시설과 범죄와의 상관관계 분석 (하)

더 안전한 사회를 향한 데이터 분석



범죄 예방을 위해 방범용 CCTV 설치 대수를 늘려가고 있지만 범죄율은 줄어들지 않고 있다. 빅데이터 기술을 활용해 범죄 발생에 대한 근본적인 원인 도출과 시민의 자발적 참여를 통한 공공기관 또는 지자체에서 파악하지 못한 우범지역을 발굴해 미리 대처할 수 없을까 하는 생각에 시작한 프로젝트다.


지난 회에서 빅데이터 분석을 통해 CCTV 방범시설과 범죄와의 상관관계를 밝혀내는 이 프로젝트에 대한 소개와 함께 접근방법의 일부를 소개했다. 이번은 최종 회로서 분석환경 구성과 프로젝트 분석 과정에서 만났던 문제점을 살펴보고, 결론으로 발전적인 대안을 제시하겠다.



분석 시스템 구성, R, 시각화

CDH5 기반에서 HIVE와 FLUME, R, JSP를 사용하였다. 처음엔 Hadoop 1.0 기반에서 Flume과 HIVE를 사용하였지만, 사용자 인터페이스(UI)와 관리가 편리한 (하둡) 에코시스템을 사용해 보고 싶었고 멘토께서 제안했던 클라우데라의 CDH5를 기반으로 프로젝트를 진행했다.

처음 설치하고 구성하는 것이라 효율적인 면은 다소 부족했다. 하지만 편리한 클라우데라 서비스 관리 화면 UI를 통해 언제든지 원하는 대로 모듈 구성을 변경할 수 있어서 좋았다.

dbin_371.jpg

<그림 1> 노드별 구성 서비스

<그림 1>은 클라우데라 관리 화면에서 확인할 수 있는 노드별 모듈 구성 화면이다. 이 화면을 통해 설치되어 있는 서비스를 한 눈에 확인 할 수 있다. 설치를 하고 사용을 해 보니 불필요하게 구성된 서비스들이 눈에 들어오기 시작했다. Flume이나 Spark, Hive의 구성을 줄이거나 Name Node의 서비스를 분산 시켰어야 했다. Hadoop01 Node에 있는 hiveserver2와 Oozie, Sqoop, Hbase Master가 바로 그것이다.

dbin_372.jpg

프로젝트 기간 내에 중점적으로 사용한 기술은 <표 1>과 같다. 짧은 기간 내에 좌표 변환을 수월하게 도와 주었던 ㈜지오서비스의 지오코더 프로그램은 여력이 된다면 차후 자바 프로그램을 개발해 대체할 예정이다. 그것이 본 프로젝트의 취지에 더 맞다는 생각이 들어서다.



수행 과정에서 만났던 문제점과 해결 방법

기술
김대훈 팀장과 이상민 팀원은 클라우데라의 CDH5를 데이터베이스진흥원에서 제공받은 VM 서버에 적용하기 이전에 개인 노트북(i7 8core, 16Gb, 256 SSD)에서 4노드로 구성해 설치?테스트해 보았다. 하지만 리소스 문제로 에코 시스템 전체 모듈의 완벽한 설치는 불가능했다. 전체 모듈이 아닌 필요한 모듈만 설치했다면 성공했겠지만, 전체를 설치해 다양한 기술적 검토를 해보고 싶었다.

프로젝트 플랫폼으로 제공되는 VM 서버에는 이미 Hadoop 1.0과 Flume, Hive가 동작하고 있었다. CDH5의 설치와 테스트는 결과적으로 실패하였지만, 에코 시스템을 체험해 보고픈 마음으로 VM 서버에서 에코 시스템을 설치해 보았다. VM 서버에 설치돼 있던 Hadoop 1.0과 관련된 모듈을 모두 없애고, CDH5를 설치해 원하는 모듈을 추가하기까지 별 문제 없이 할 수 있었다. 결국 개인 노트북에서 전체 모듈을 설치하기에는 한계가 있었음을 알게 됐다.

우리팀은 전체 모듈 설치를 통해 Hbase , Impala , Oozie , Sqoop 등을 확인해 볼 수 있었다. 짧은 기간안에 결과물을 도출할 수 있는 모듈을 선정해 프로젝트를 진행했다.

시스템
Flume으로 트위터의 키워드 수집해 HDFS에 저장한 후 HIVE SerDe(Serializer-Deserializer)를 통해 HUE 에서 데이터를 조회할 수 있었다. 하지만 R과 RHIVE를 통한 데이터 조회와 동시에 진행하면서 Hiveserver2 서비스가 빈번히 다운되는 현상이 발생했다. 시스템의 메모리 스왑 문제도 함께 일어났다.

이에 따라 우리팀은 필요한 모듈만 돌리기로 하고, 기술 검토를 하던 Hbase, Impala, Oozie, Sqoop과 데이터를 수집중이던 Flume 서비스를 일시 정지시켰다. 대신 단기 프로젝트인 CCTV 사각지대와 범죄율 분석에 초점을 맞춰 프로젝트를 진행했다.

정책
국가정보공유포털(www.data.go.kr)에서 각 지자체들의 CCTV 설치 데이터를 확보하려 하였으나 대부분 미공개 상태였다. 각 지자체에 CCTV 데이터를 요청하였으나 범죄목적으로 악용될 수 있고 지자체의 자산이라서 공개가 어렵다는 답변을 받았다.

서울시 보안정책 담당관에게 유선상으로 직접 문의했을 때는 범죄 목적으로 악용될 수 있으므로 불가능하다는 답변을 또 다시 받았다. 이에 이상민 팀원은 “CCTV의 개인정보 보호법에 대한 항목과 서울시 정보공개법 제9조 제1항 제2호”를 근거로 하여 정보 공개를 요청해 CCTV 설치 정보를 얻을 수 있었다. 이 자료가 없었다면, 아마 다른 주제를 찾아나서지 않았을까. 관련 법령을 찾아보고 자료를 재요청한 것이 주요했다.

좌표 오류의 문제
각 지자체에서 받은 좌표는 일정한 규격이 없었다. 파일 형식은 HWP, PDF, DOC, XLS에 이르기까지 다양했고, 내용도 비정형이었다. 지자체마다 지번 주소, 도로명 주소 사용 기준이 달랐다. 심지어 혼합해서 사용한 경우도 있었다. 이 중에서 시스템적으로 수작업 보정이 필요한 주소도 더러 있었다. 각 시설의 위치를 위도 경도로 표시하고, 지자체 표준 문서형식이 있었으면 좋겠다는 아쉬움이 있었다. 우리팀은 수작업으로 데이터를 보정하고, 비정형의 데이터를 정형화해 수집하는 데 많은 시간을 썼다.



팀 커뮤니케이션 방법

기술적인 문제가 해결되거나 데이터 수집이 이루어지는 등 중요한 사안이 발생하면, 네이버 카페에 수시로 기록해 모든 내용을 팀원이 공유하였다. 카카오톡을 통해서는 공지를 통해 의견을 모았고, 부족한 부분에 대해서는 유선으로 의견을 나눴다. 더 나아가서는 오프라인 모임을 가지며 문제를 해결해 나갔다. 팀원들은 모두 서울에서 생활하였으므로 모이는 것에는 문제가 없었다. 더러 회사 일을 하느라 바쁜 팀원도 있었지만 네이버 카페에 기록된 내용을 토대로 늦게나마 학습해 따라올 수 있었다.



Conclusion

기술을 하나하나 적용해 나갈 때의 즐거움과 문제를 해결해 나갈 때의 희열로 시간 가는줄 모르게 작업했다. 수료 프로젝트와 회사에서 인포메티카의 ‘데이터 프랜스포메이션’ 솔루션을 적용한 빅데이터 BMT 일정이 겹쳐 한 때 바쁜 시간을 보냈지만, 이것이 더 좋은 경험이 되기도 했다. 팀원들도 회사 업무와 수료 프로젝트를 동시에 진행하느라 고생이 많았다. 최선을 다했다고 위로하지만 아쉬움도 적지 않은 프로젝트였다. 주어진 시간에 결과를 도출하기 위해 팀원 모두 힘을 모아 작업한 것에 의미를 부여하고 싶다. 한국DB진흥원 담당자들의 매우 적극적인 협조 분위기도 힘을 내는 데 보탬이 됐다. 이 자리를 빌어 감사한 마음을 전한다.



향후 발전 방안과 결론

미국의 범죄학자인 제임스 윌슨과 조지 켈링이 1982년 3월에 유리창이 깨친 채로 방치된 동네는 범죄가 많다는 ‘깨진 유리창 이론’을 공동으로 발표했다. 이 이론에 따라 지자체별로 낙서, 깨진 유리죄율도 줄일 수 있다. 이를 R로 시각화해 범죄예방 설계에 관한 분석도 함께 수행할 수 있을 것이다.

한 달 반이라는 짧은 기간에 팀원들과 함께 프로젝트에 힘을 쏟았지만, 아쉬운 마음이 크다. 그래서 좀 더 다듬어진 결과물을 공개하고 싶다. 지금까지는 인터넷을 검색해 얻은 좌표변환 도구를 사용했지만, 앞으로는 자바로 직접 좌표변환을 시도해 볼 계획이다. R 분석 또한 이상민 팀원의 적극적인 리드를 정용주 팀원과 최기웅 팀원이 적극 지원해 더 멋진 결과물을 만들어 낼 것이라 기대한다. 데이터의 정제와 D3.JS를 사용한 시각화에도 힘을 쏟고 싶다.

CCTV 설치와 파출소 같은 전통적인 범죄 예방시설에서 더 나아가 생활환경을 개선해 더 안전한 생활환경을 만들기 위한 범죄 예방설계를 셉테드(CPTED)라고 한다. 범죄가 많은 지역에 놀이터와 공원, 체육시설을 설치 한다든가 조명의 색 또는 시설물의 색상(예: 노랑색) 변경, 낙서 제거만으로도 범죄율을 줄일 수 있다. 이를 하둡 에코시스템에서 R을 통해 분석하고, 사회 안전을 시각화해 볼 계획이다. 우리팀의 CCTV 방범 상관분석 프로젝트는 범죄 취약지구 또는 어린이 보호구역의 감시 강화에 사용되거나 안전 보행로 구현 등 적용할 수 있는 곳이 많다고 본다. 이 프로젝트는 결과적으로 지역의 안전성을 향상시켜 범죄율을 낮추는 것에 목적을 두었다. 기본 사회질서를 확립해 우발적이고 잠재적인 범죄자의 범죄 기회를 사전에 자연적으로 차단할 수 있다고 생각한다.

시민이 자발적으로 스마트폰 카메라에서 찍은 사진을 수집해 구축한 ‘스마트 데이터’로 생활 주변의 정비되지 않은 시설물을 DB화하고, 이를 토대로 환경 개선 작업을 하여 발전적인 방향으로 나간다면 더 밝고 건강한 사회가 될 것이라 생각한다. 정부나 지자체의 역할도 중요하지만, 시민이 자발적으로 참여해 개선 방안을 제시하면서 정보를 공유하는 것이 더불어 사는 사회가 아닐까 한다.



후배 기수에게

시작이 반이라 했다. 빅데이터 교육을 놓고 주위에도 망설이는 이들이 더러 있었다. 대부분 금전적인 문제와 직장 생활과 균형 문제였다. 필자도 그런 고민을 했지만 과감히 도전했고 좋은 결과를 맺어 수료 프로젝트 1등 팀으로 선정되는 기쁨까지 누렸다. 더욱이 한국데이터베이스진흥원에서 진행하는 교육과정은 무료이기도 하고 교육내용까지 정말 알차다. 지도 강사의 화려한 이력과 실력은 궁금증과 모자란 부분을 채워주기에 충분하고도 남았다. 기술을 습득하고 수료하는 소정의 목적을 넘어 그 이상을 이뤄냈다고 생각한다. 프로젝트를 수료한 후 지인이 근무하는 어느 한 기업으로부터 강의 요청을 받고 쉬지 않고 3시간 넘게 설명했던 즐거운 기억이 있다. 교육을 받기 전에 고민했던 당시의 막연함과 두려움이 즐거움과 환희로 바뀌어 내 삶을 즐겁게 해주고 있다. (끝)



dbin_373.jpg







출처 : 한국데이터베이스진흥원

제공 : DB포탈사이트 DBguide.net