Review

[SQL Angeles] 2017-12-05 LA 한인 SQL Server 스터디 모임- 데이터 로딩 및 가공

SQL Angeles 2019. 4. 16. 00:03

[SQL Angeles] 2017-12-05 LA 한인 SQL Server 스터디 모임

-      데이터 로딩 및 가공

 

SQL Angeles 커뮤니티는 SQL PASS의 공식 회원이며, LA Chapter 그룹으로 PASS 커뮤니티 중 한국어로 진행되는 모임입니다. 자세한 소개는 아래 공식 홈페이지를 참고해주시기 바랍니다.

 

SQL Angeles PASS 공식 홈페이지 : http://SQLAngeles.com / http://sqlangeles.sqlpass.org/

 

SQL Angeles 커뮤니티는 정기적으로 화요일 8PM ~ 10PM (2시간, LA 시간 기준) 오프라인 스터디를 진행하며(장소 및 시간은 공식 홈페이지를 통해 공지 합니다.) SQL Server를 함께 공부하고 다양한 IT 트렌드를 공유하는 기술 및 네트워크를 공유하는 모임 입니다. 스터디는 참여 제한이 없습니다. , 오프라인으로 스터디에 참여하고 싶은 분들은 카카오톡(ID : SQLMVP), 페이스북(https://www.facebook.com/sqlmvp) 메신저, email(jevida@naver.com) 등으로 연락 주시기 바랍니다.  오프라인 모임의 경우 스터디 장소 출입이 자유롭지 못한 관계로 반드시 사전에 협의가 되어야 합니다. 또한 홈페이지에 가입하시면 스터디 일정에 대한 내용을 이메일로 받을 수 있습니다. 자세한 내용은 본문 하단의 회원 가입 안내를 참고해 주세요.

 

SQL Angels Season 3에서는 오픈되어 있는 공공 데이터 활용하여 이론과 실습을 겸한 프로젝트형식으로 진행 합니다. 공공데이터를 SQL Server를 활용하여 데이터를 정제하는 과정(ETL), 데이터를 다양한 형대로 추출(SQL 쿼리문 작성 및 튜닝), 분석(기본 통계 이론 및 통계 쿼리 작성), 시각화(엑셀 및 SSRS를 활용한 리포트), 마지막으로 SQL Server에 포함된 데이터 마이닝 엔진을 이용하여 예측 모델을 만들어보는 것으로 진행합니다. 6개월 ~ 8개월 정도 (12~ 15회 모임)에 걸쳐 진행할 예정이며, 스터디 일정 및 진행방향은 상황에 따라 변경될 수 있습니다. 스터디에 참석하시는 모든 분들은 랩탑을 지참해야 하며(실습으로 진행 됩니다.) SQL Server가 설치된 환경에서 진행 됩니다.

 

Season3 세번째 모임으로 총 12분이 참석하였습니다. 이번 시간에는 파일 형태로 제공되는 지역별 범죄발생 데이터를 SQL Server에 로드하고 데이터 조회하고 가공하는 방법에 대해서 살펴 보았습니다.

 

처음에는 미국의 공공 데이터(http://data.gov)를 이용하여 데이터 작업을 진행 하려고 하였으나, 공개 되어 있는 데이터에 대한 편리성 및 메타데이터 부족으로 데이터에 대한 의미 자체를 검증하는데 어려움이 있어, 한국의 공공 데이터를 이용하여 진행 하였습니다.

실습에 사용된 데이터는 범죄발생지에 대한 지역별 통계자료(https://www.data.go.kr/dataset/3074462/fileData.do) 로 각 도시에서 발생된 범죄 통계를 나타내었습니다. 실제 기대한 데이터는 RAW 기반의 데이터였는데, 공공 데이터는 모두 가공된 형태로 제공되었습니다. (한국 사이트가 역시나 미리 보기 등 서비스 측면에서 편리하였습니다.)

 

하지만 다운로드 받은 파일이 유니코드가 아니어서, 한글 OS가 아닌 환경에서는 텍스트 깨짐 현상이 발생하여, 한글 OS에서 데이터를 다시 유니코드로 저장해서 사용해야하는 불편함이 있었습니다.

(공공 데이터가 유니코드가 아닌건 정말 아쉬운 부분이었습니다.)

 

여러 정제 작업을 거쳐서 유니코드로 인코딩하고 스터디 멤버들에게 데이터를 공유하고 실습을 진행 할 수 있었습니다. 이번 스터디에는 다양한 직군이 모여서 진행되어, SQL 이해도가 높은 사람부터 SQL을 처음 다루어보는 사람까지 다양하게 분포가 되어 있어, 최대한 쉽게 따라할 수 있도록 진행 하였습니다.

 

데이터 로드는 SSMS에서 제공되는 Import 기능을 사용하여 다양한 데이터 원본을 SQL Server로 편리하게 로드하고, 로드된 데이터는 PIVOT으로 이미 집계가 되어 있는 데이터로, 실습에서는 다양한 관점에서 분석할 수 있도록 UNPIVOT 과정을 진행 하였습니다.

 

 

그리고 데이터 타입에 대한 정합성을 체크하고, 기본적인 데이터 클렌징 작업을 하였습니다. 실제 현업에서 데이터를 운영하다 보면 데이터 포맷이나 의미없는 데이터가 섞여있어 실제 데이터를 집계하기전에 클렌징 작업을 진행하게 됩니다. 이번 실습에서도 몇 단계의 데이터 클렌징 작업을 거쳐, 실제 조회 가능한 데이터셋을 만들었고, 2015년의 지역별 범죄 통계와 2016년의 지역별 범죄 통계 데이터를 조인하여 조회하는 방법을 알아 보았습니다.

 

 

 

스터디는 모두가 참여 할 수 있도록 최대한 기본에 충실하면서도 심도있게 진행되며, 친절한 설명(?)으로 SQL Server에 대한 진입 장벽을 낮추고 데이터에 대한 접근성을 높이고 있습니다. 특히 이번 시즌의 경우 우리 사회에서 발생하는 실제 통계 데이터를 이용해서 분석하기 때문에 조금 더 흥미로운 관점에서 접근할 수 있는 듯 합니다.

 

이번 시간에는 지역별 범죄에 대한 통계 자료를 데이터베이스로 로딩하여 가공하는 것을 알아보았으며, 다음 시간에는 범죄를 일으킨 사람들의 국적 데이터를 데이터베이스로 로드하여, 기본적인 쿼리문(JOIN 실습)을 이용하여 데이터를 교차 분석 하는 방법에 대해서 살펴 볼 예정입니다.

 

앞으로도 다양한 주제로 스터디를 계속해서 진행할 예정이며 꾸준한 관심과 참여 부탁 드립니다. SQL Angeles 홈페이지에 가입하시면 스터디 일정 및 온라인 참여 링크를 이메일로 수신할 수 있습니다. 아래 안내를 참고해서 챕터 가입을 부탁 합니다.

1.     http://sqlpass.org/ 접속 합니다.

2.     우측 상단의 SIGN IP FOR FREE 버튼을 클릭해서 회원 가입 합니다. 가입한 이메일로 안내문이 발송 되니 자주 사용하는 이메일로 가입해주세요.

 

 

3.     가입 완료 후 로그인을 하여 [Community] – [Local Group]를 클릭합니다.

 

 

4.     아래 그림과 같이 Region 을 선택하고 Angeles 검색하여 SQL Angeles 챕터에 JOIN 버튼을 클릭합니다. (저는 이미 가입되어 있어 LEAVE라고 버튼이 표시 되어 있습니다.)

 

 

 

2017-12-05 / 강성욱 / http://sqlmvp.kr / http://sqlangeles.com

 

LA 한인 SQL 스터디 모임, LA IT 모임, DB 스터디, SQL 스터디, SQL Server, DB 스터디, LA SQL Server, sqlmvp, SQL Angeles