본문 바로가기
엑셈 기업문화/엑셈 사람들

Oracle,PostgreSQL,MySQL Core Architecture Ⅱ 출간 기념 인터뷰 | 연구콘텐츠팀 권건우, 이근오, 김숙진, 이대덕

by EXEM 2017. 9. 20.

 

 

한 개도, 두 개도 아닌 무려 세 개의 데이터베이스를 비교 연구한 바로 그 책.

Oracle, PostgreSQL, MySQL Core Architecture 2권을 집필한
연구콘텐츠팀의 권건우, 이근오, 김숙진, 이대덕을 만나보았습니다.

 

▶ 안녕하세요, 저자님들. 연구콘텐츠팀, 어떤 팀인가요?

 

[권건우] 안녕하세요. 권건우입니다. 저희 팀은 DB Internal을 연구해서 콘텐츠를 제작하고, 세미나, 서적 출간, 외부 강의를 나가고 있어요. 또한 외부 트러블 슈팅 요청이 왔을때도 대응하며 최근에는 DB 마이그레이션, AWS 업무도 함께 하게 되었습니다.

 

[이근오] 이렇게 나열하고 보니 무척 많은 것 같네요. (웃음) 조금 더 자세하게 첨언을 드리자면, 다루고 있는 DB는 Oracle, MySQL, PostgreSQL, Aurora DB가 있네요. 그리고 Hadoop 에코시스템도 연구하고 있어요.

 

 

▶ 어떤 계기로 책을 집필하게 되었나요? 

 

[권건우] 저와 이근오 부장님이 DBA와 Technical Architect를 한 20년간 했어요. 그 동안 Oracle을 비롯한 많은 DBMS를 운영해 보고 다양한 차세대 프로젝트 설계, 구축, 오픈, 튜닝하면서 다양한 경험을 했고 수많은 이슈를 해결하면서 재미있게 일했지만 책을 쓴다거나 세미나를 하는 등 경험과 지식을 외면화하는 활동을 할 계기와 기회가 없었죠. 엑셈에 오면서, 사장님이 연구를 하고 책을 쓸 수 있도록 해주셨어요. ^^ 책을 쓸 수 있었던 가장 핵심적인 역할을 했던 건 저와 부장님이 발전시켜온 'DIA 방법론' 덕분이라고 할 수 있어요. 사실 저희가 이름 붙힌 건데, 'Deep Internals Analyzer' 로, DBMS의 인터널한 부분을 천천히 돌리면서 사진 찍듯이 볼 수 있게 하는 거에요. 차세대 프로젝트를 수행하면서 기술문제에 대해서 최종 책임을 지고 있었기 때문에 글로벌 벤더들이 해결 못하는 문제들은 저하고 이근오 부장님이 최종적으로 해결해야 하는 상황이 많았어요. 제가 이런 방법론으로 해결하자고 아이디어를 냈고, 이근오 부장님이 실제로 시스템 유틸들을 조합해서 ‘DIA 방법론’을 구현했었어요. 그 프로젝트가 끝난 이후에도 각자 다른 일을 해오면서도 종로의 24시간 카페에서 야간에 만나서 DB 인터널을 계속해서 연구했고 ‘DIA 방법론’도 점점 더 정교해지고, 점점 더 심화되어 완성되었죠.

 

[이근오] 10년전의 그 프로젝트부터 시작하여 엑셈에 와서 김 숙진, 이 대덕, 두 후배들이 합류해서 DBMS의 토대와 상부구조 즉 트랜잭션 처리와 메모리 아키텍쳐에 대한 비교연구를 완성될 수 있었던 것 같네요. 10년 전의 프로젝트로부터 시작된 연구가 엑셈이라는 공간, 두 후배의 서포트, DIA 방법론의 완성 등으로 책을 집필하기에 딱 좋은 타이밍이지 않았나 싶어요.  

 

 

▶ OPM2, 어떤 책인가요? 책 소개를 간단하게 해주세요.

 

[김숙진] 1권에서는 트랜잭션 처리의 내부 메커니즘과 데이터 블록의 인터널 구조에 대해서 세개의 주요 DBMS를 대상으로 비교 연구를 했었고, 이번에 출간된 2권에서는 DBMS의 상부 구조에 해당하는 Library Cache, Buffer Cache, Redo Log Buffer 등 메모리 아키텍처의 내부 운동원리를 비교 규명했어요. 1권과 마찬가지로 헥사 덤프로 직접 확인하는 DIA(Deep Internals Analyzer) 방법론을 이용하여 내부 구조를 심층 분석 했죠.

 

 

▶ OPM 2권을 집필하시면서 어려웠던 점이 있으셨나요?

 

[이근오] 저희가 시도한 비교연구라는 작업이 '최초'라는 점이 가장 어려웠죠. 참고할 만한 자료도 별로 없고, 있어도 일본, 중국이나 러시아, 외국의 몇 없는 자료들뿐이다 보니 언어적 제한도 있고, 시간도 많이 걸렸어요.

 

[김숙진] 물어볼 사람도 없구요. 최초다 보니 저희가 이 이론이 맞다. 틀리다. 이런 걸 정립해줘야 하는 상황인거에요. 어떤 참고할만한 자료를 찾았을 때도 이게 맞는지 아닌지 조차도 확인이 어려우니 저희가 그 논문을 연구해보고, 정확한지 검증을 한 후에 참고 자료로 써야 하니 시간이 더블로 소요되곤 했어요.

 

[이대덕] 헥사코드를 분석하는 과정도 힘들었네요. 헥사코드 화면은 그냥 검은 화면에 숫자만 쭈욱 떠있습니다. 그걸 눈이 빠져라 뚫어지게 쳐다보면서 분석하니. 눈도 많이 아프고, 정신적으로 체력적으로 지쳤었죠. 다행히 제 시력이 2.0, 1.5로 나빠지진 않았습니다. ^^

 

 

▶ OPM 1권에 이어, 2권을 출간하게 되어 무척 감격스러웠을 것 같아요. 소감은 어떠세요?

 

[권건우] 1권은 DBMS의 토대. 하부구조 트랜잭션 처리와 스토리지에 관한 내용이었구요, 2권은 상부구조. 메모리 아키텍처에 관한 내용이어서 사실 2권까지 해서 DBMS의 인터널 연구가 마무리 되는거였어요. 그리고 또 1개의 DBMS를 연구 한 것이 아니라, 3개의 DBMS를 비교연구를 했기에 DBMS의 탄생부터 지금까지. '데이터 저장 기술'에 관한 전반적인 이론의 완성이 되지 않았나 생각합니다. 새롭게 등장하는 NoSQL, 하둡, 블록체인도 이 세가지 DBMS의 조합과 변형을 다 이해해야 가능하거든요. 앞으로는 응용 튜닝연구를 통해서 그 가치를 더 크게 만드는 일을 할 수 있지 않을까해요. 1권, 2권을 출간하며 그 토대를 완성한 것 같아 무척 뿌듯하네요.

 

[이근오] 2권을 출간하면서 사실 제 자신에 대해서 자신감을 얻을 수 있었던 것 같아요. DBMS의 어떤 문제가 생겼을 때 메모리 쪽을 잘 모르면 어느 쪽을 짚어야 하나, 하고 어려울 때가 있는데 OPM 1권과 2권을 출간하며 트랜잭션과 메모리 쪽이 완성이 되다 보니 어떤 문제가 생기더라도 '아, 해결할 수 있을 것 같다.' 그리고 어떤 데이터 저장 기술을 접해도 대략 감이 잡히는 자신감이 생긴 것 같네요.

 

[김숙진] 데이터베이스를 연구해서 정리하는 것부터 책을 편집하고, 오타를 수정하는 것까지 모든 과정이 쉽지 않았지만 책의 형태로 결과물을 받았을때 너무 기쁘고 뿌듯했죠. 연구 내용면에서는 선배님들의 확신을 믿고 따라가면서 많이 배울 수 있는 기회였어요. 편집에 대해서는 1권에 아쉬운 부분들이 있어서 1권보다 더 나을 수 있도록 글 편집, 그림 편집도 더 신경써서 했고, 오타도 열심히 체크했습니다. 혹시 오타가 나와도 넓은 마음으로 양해 부탁드린다는 말씀을 독자분들께 전하고 싶네요! (웃음) 곧 오타도 수정하고 내용도 추가해서 증보판이 나올 예정입니다.

 

 

▶ Oracle, PostgreSQL, MySQL 기타 등등의 데이터베이스를 모두 연구하고, 그걸 또 세미나로 하여 항상 연구의 결과를 공유하고 계신데요. 솔직히 어떤 부분에서는 노하우로, 외부에 공유하고 싶지 않은 적도 있지 않을까 생각해요. 항상 오픈 하여 연구하는 이유가 있으신가요?

 

[권건우] 제가 엔지니어 생활 하면서, '기술적 지식에 대해서 잘 가르쳐주는 것이 나에게도 가장 큰 도움이 되고 내가 속한 조직이나 사회에도 가장 큰 기여가 된다.' 라는 철학을 갖고 있었어요. 어떤 걸 저에게 물었을 때 감추거나 그런 적이 없었죠. 제가 많은 부분 도와주다 보니 더 많은 경험과 기회를 얻게 되었어요. 앞으로도 그럴 예정이구요.
 

[이근오] 오픈하면서 잃는 것보다 얻는 것이 조금 더 많은 것 같아요.  내가 공개함으로서 다른 사람들이 제 연구를 보면서 저와는 다른 관점에서 볼 수 있게 되는거잖아요. 여러 가지 의견들을 들을 수 있으니까 저 자신의 발전을 위해서도 더 좋은 거죠.

 

 

 

 

▶ 기존에 있지 않은 새로운 지식을 발견한다는 건 무척 어려운 일일 것 같아요. 연구하고, 책을 집필하는데 있어 가장 중요한 건 무엇이라고 생각하시나요?

 

[이대덕] 흥미와 관심이라고 생각합니다. 사실 하루종일, 그리고 또 계속. 연구하고 공부해야 하는데 본인이 관심 없고 흥미 없는 분야라면 그것만큼 힘든 일이 없겠죠. 본인이 재밌어 해야 성장할 수 있고 좋은 연구 결과가 나오는 것 같아요.

 

[권건우] 여러가지가 있겠지만, 제가 볼때는 '끈기'가 제일 중요한 것 같아요. 제가 문제해결을 잘하는 이유가 특별히 남들보다 뛰어난 지식을 가져서 그런 것 같지는 않구요. 대신 어떤 의문사항을 가지면 진짜 끝까지 분석을 해야해요. 밥먹을 때나, 잠잘때나 늘 생각하고. 절대로 놓지 않죠. 이렇게 제가 놓지않고 계속 해왔기 때문에 '데이터 저장 기술'에 대해서 나름 뭔가 할말을 할 수 있게 되지 않았나 생각합니다. 끝까지 놓지 않는 끈기! 를 제일 중요하다고 말씀드릴 수 있겠네요. 

 

[이근오] 사실 연구라는게 혼자 하기엔 힘들어요. 전 '협업' 이라는 부분을 강조하고 싶어요. 다같이 진행하는 연구에서, 누구 한 사람 낙오되지 않고 본인 몫을 해내어 연구를 지속적으로 할 수 있도록 하는 것이라고 생각합니다.

 

 

[권건우] 조금 첨언하자면 내부적인 협업도 있겠지만, 외부적으로도 저희들은 항상 오픈해서 연구하기 때문에 국내 또는 해외의 고수들에게 열린 자세로 소통을 하고 있는데 그게 참 큰 도움이 되고 있어요. 

 

[김숙진] 저도 역시나 권건우상무님 말씀처럼 끈기는 기본적으로 갖추어야 한다고 생각해요. 검색 포털에 제가 알고 싶은 내용을 검색해서 들어갈 때 정말로 1페이지부터 마지막 페이지까지 하나,하나 눌러보면서 서칭을 해요. 그렇게 하다 좋은 자료가 있으면 팀원들과 공유 하기도 하고요. 그리고 또 좋은 선배님. 방향을 제시 해 줄 수 있는 선배! 도 중요하다고 생각됩니다. 제가 어떤 결과에 대해서 확신을 가지지 못할 때 권건우 상무님과 이근오 부장님께서 옆에서 보시고 방향을 제시해주시곤 해서 좋았어요. ^^

 

 

▶ 앞으로 어떤 쪽으로 연구(공부)를 하고 싶으신가요? 이외에도 다른 책이나, 교육 세미나 등의 계획이 있으신가요?

 

[권건우] 데이터베이스 엔진에 대한 비교연구는 이제 끝났다고 생각해요. 앞으로는 대중성이 있는 응용 튜닝이나 요즘의 새로운 트렌드인 하둡 환경, NoSQL 또는 Tensorflow 등의 연구를 해서 조금 더 대중화된, 많은 분들에게 도움이 될 수 있는 연구를 하려고 해요. 지금까지 쓴 두권의 책은 데이터저장엔진의 내부 원리에 관한 책이다보니 대중성은 떨어집니다. 앞으로는 쉬운 책을 많이 써서 많이 팔리는 책을 쓰고 싶어요. 

 

[이근오] 또한 회사제품에 경쟁력을 높일 수 있는, 경쟁 우위에 설 수 있는 Winning Feature에 대한 연구도 할 예정입니다.

 

 

* * * *

 

 

항상 늦은 저녁까지 연구&콘텐츠 생산에 여념이 없는 팀.

앞으로도 많은 연구와 지식 나눔으로 개인에게도, 엑셈에도,
그리고 나아가 사회에도 기여할 수 있었으면 좋겠습니다. ^.^

 

기획/편집 글로벌마케팅팀 이단비

사진 디자인팀 송유림

 

 

 

 


댓글