이번 책은 진짜 어려운 책이다.
책이 어렵다기 보단 주제가 어렵고 무거워 지난 책들과는 달리 가볍게 읽을 수는 없었다.
주제는 바로 데이터 모델링 이다.
|
믿고 보는 Blog2Book 이었지만, 기존에 봐왔던 Blog2Book 시리즈와는 달리 정말 진도가 잘 안나가서 읽기 힘들었다.
이건 업무에 비중에 따른 나의 부담감과 이 책을 통해 학습을 하고자하는 의지가 그랬을지도 모르겠다.
이 책에 나오는 나한빛 선임 마치 내 이야기인듯 하다.ㅎㅎㅎ
우선 이 책은 처음에도 말했듯이 데이터 모델링 이야기 이다.
데이터 모델링 이란?
주어진 개념으로부터 논리적인 데이터 모델을 구성하는 작업을 말하며, 일반적으로 이를 물리적인 데이터베이스 모델로 환원하여 고객의 요구에 따라
특정 정보 시스템의 데이터베이스에 반영하는 작업을 뜻한다. (출처:위키)
선배들이 그려놓은 ERD를 보면서 구현하거나, 혹은 일부 수정을 해본적은 있지만
딱히 체계적으로 배운적은 없는 듯하다.
학교에서 데이터베이스 수업을 듣긴 했지만, 그땐 4학년이었고 대학원 진학으로 인해 수업에 다소 소홀했던 기억 뿐이다.
책을 보면서 내가 표로 단순화 하고 시트를 구분하면서 업무를 진행했던 부분이 데이터 모델링이라는 과정의 일부라는 것을 알게 되었고,
단순히 ERD가 전부가 아니라는 점을 뒤늦게 나마 깨닫게 되었다.^^;;;
또한 시스템 엔지니어로 데이터 모델링이라는 업무가 자주 발생하는 업무가 아니어서 더욱 생소한 면도 있는듯하다.
Blog2Book 시리즈의 특징상 소설같은 이야기로 풀어내는 점이 다소 도움이 되었는데,
예전 학교 다닐 때의 기억으로는 데이터베이스 개론 수업 교재같은 내용이었으면 시작할 엄두도 못냈을 듯 하다.
결국 데이터 모델링은
최종 사용자가 보는 UI 수준의 VIEW에서 데이터 관련성을 중심으로 정보를 분리하고,
그러기 위한 사고방식과 인사이트가 필요하다.
그리고 특히 그런 데이터 관련성을 위해 정규화가 더욱 필요한 것이고,
정규화를 하면 할수록 테이블이 늘어나기에 join이 늘어난다고 알고 있었는데,
join이 늘어나기에 무조건 퍼포먼스가 안나는 것도 아닌 점을 다시한번 알게 됐다.
퍼포먼스가 안난다는 것은 결국 join이 많고 곧 디스크 IO의 부하로 인해 성능 저하를 이야기하게 되는데,
제대로 된 정규화는 IO의 블록을 줄이기에 데이터의 적중률이 올라가고 결국 부하를 줄이게 된다.
데이터모델링은 결국 데이터를 잘 분류하고 잘 묶는 과정인데,
항상 데이터모델링 책에는 ERD만 보이다 보니 어려워했고, 더 손이 안갔었던것 같다.
나와 같은 입문자에게는 아주 좋은 입문서인듯 하다.
진짜 덕분에 예전 대학교재도 찾아보고, 나를 한번 되돌아보게 되는 계기가 된듯 하다.
'Reviews > 읽자' 카테고리의 다른 글
[한빛리더스] 실시간 분석의 모든 것 (0) | 2016.01.23 |
---|---|
[한빛리더스] 코딩클럽 lv.3 제대로 된 파이썬 앱 만들기 (0) | 2015.12.05 |
[한빛리더스] 유닉스 리눅스 셸 스크립트 예제 사전 (0) | 2015.10.04 |
[한빛리더스] 긱 아틀라스 : 과학과 기술의 발상지 129곳 (0) | 2015.08.29 |
[한빛리더스] IT와 금융이 만나는 새로운세상, 핀테크 (0) | 2015.07.13 |
댓글