conque***
2022-04-01

공공 데이터를 활용해 SQL 기본부터 실무 활용, 그리고 SQLD 자격증까지 한번에 끝낼 수 있는 도서
"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."
"이경오의 SQL+SQLD 비밀노트"에서 지은이의 말을 보면 이 책에는 7개의 목적이 있음을 알 수 있다. 그 중 2개는 SQLD 자격증 취득과 관련된 내용이다. 그 다음 페이지를 보면 저자의 보유 자격증에서 이 목적이 얼마나 신뢰가 있는지 느낄 수 있다. (국가공인 데이터 관련 자격증만 4개!!!) 그렇다면 독자로서 얻을 수 있는 것은 무엇일까?
아쉽게도 필자는 이 서적을 SQLD 자격증을 취득하기 위한 목적으로 공부하지는 않았다. 4년 가까이 SQL을 손놓고 있다가 실무에서 DB를 다룰 일이 많아지면서 학습을 할 필요를 느껴 이 서적으로 공부를 하게 되었다. 자격증 취득 목적이 아님에도 불구하고 이 서적은 충분히 매력적이었다.
"Chapter 2 실습 데이터 구성"에서 학습 전 샘플 데이터를 준비하는 단계가 있는데 샘플 데이터를 정상적으로 획득하면 무려 280만 데이터를 얻을 수 있다.(p.60) 뒷 챕터에서 대용량 데이터를 제대로 다루는 방법이 다루어 질 것이라는 것을 예측할 수 있고 동시에 기대를 하게 만든다. 물론 이 챕터에 큰 장애도 있다. 그건 뒤에서 언급하겠다.
"Chapter 3 데이터 모델링의 이해"와 "Chapter 4 데이터 모델과 성능"은 실습보다는 이론이 대부분을 차지한다. 내용을 어느 정도 알고 있는 분들이라면 지루할 수 있지만 기초를 다루겠다는 저자의 의도대로 학습하는 분들에게는 모든 챕터 중 가장 중요한 챕터일 것이다. 여기에 등장하는 수많은 키워드는 실무에서도 사용된다. 데이터 모델링(p.70), 스키마(p.74), 관계(p.86), 식별자(p.91), 정규화(p.109), 기본키(p.139) 등등. 실무에서 DB 관련 미팅을 한다면 이 단어들은 수차례, 아니 수십차례도 나오는 단어다. 이 서적에서 나오는 설명 정도만 알아도 실무에는 지장이 없다.
"Part 3 SQL 기본 및 활용"은 마치 주니어 개발자가 시니어 개발자가 되기 전에 충분히 다룰 수 있어야 하는 수준을 다룬 듯 하다. 개인적으로 파트 3는 속도감을 조절하면서 학습하기를 권한다.
특히 챕터 5와 챕터 6은 상당한 분량이다. 실습을 가장 많이 해야하는 부분이기도 하다. 그래서 기본이 되는 챕터 5는 가능하면 빨리 학습하고 챕터 6을 공부하면서 챕터 5를 공부할 때 부족한 부분을 채우는게 재밌게 학습할 수 있는 방법일 것이다. 이미 실무에 DB를 사용중인 분이라면 챕터 3~5까지는 빠르게 훑고 지나가고 챕터 6~7에 집중하는게 효율적이다.
그런데 이 책으로 학습할 때 주의사항이 있다. 이 주의사항. 치명적일 수 있다. 바로...
거의 일주일을 챕터 2에 보냈다. 오라클 DB는 윈도우에서 가장 적합하게 동작한다. 툴인 Oracle SQL Developer도 마찬가지. 맥OS나 리눅스를 사용하는 분이라면 도커를 통해 오라클을 설치하고 사용하는 방식이 가장 간단하다. 문제는 그것만 한다고 실습을 잘 할 수 있는 것은 아닌 점. 내가 발견한 이슈를 정리해 보자면...
방법을 구체적으로 알려줄 수 없다. 상당한 양이 될 것이기 때문이다. 방향성을 제시해 줄테니 도움이 필요한 분들은 이 방향성에 포커싱을 맞추어 자료를 찾은 다음에 하나씩 해결하길 바란다.
해결책을 보면 얼마나 필자가 고민과 시간 투자를 많이 했는지 보일 것이다. 혹시나 저자나 한빛미디어에서 이 글을 본다면 다른 OS 유저를 위한 가이드를 부록으로라도 제공해주길 부탁한다.
쉽지 않은 과정임에도 이 서적과 샘플 데이터는 가치가 높다. 간단한 데이터를 다루는 정도면 굳이 책으로 공부할 필요가 없다. 비용을 들이면서 공부를 할 것이라면 그만한 가치가 있는 스킬을 얻는 것을 기대해야 한다. 그리고 이경오의 SQL+SQLD 비밀노트는 빅데이터(?)를 다루는 스킬을 기대할 수 있다. 자격증 취득도 기대할 수 있다. 이런 기대를 만족하고 싶은 분들에게 이 서적을 추천한다.