본문 바로가기

책 이야기

시크릿 오브 오라클

이 책을 출간하면서 가장 고민했던 것이 제목입니다.

Secret of the Oracle Database가 원제이기 때문에 핵심만 뽑아서 시크릿 오브 오라클이라고 결정했지만, Secret이라는 워낙 유명한 도서가 있어서 Secret을 강조하기도 조금 망설여졌고, Secret이라는 단어를 번역하여 제목을 붙이는 것도 무언가 이 책을 제대로 표현하지 못하는 느낌이 들었거든요.

 

이 책의 구성은 다음과 같습니다.

1부 초기화 파라미터(Initialization Parameters)

부분적으로 문서화되거나 공식 문서상에 아예 언급되어 있지 않은 초기화 파라미터들을 주제로 삼고 있다.

2부 데이터 딕셔너리 베이스 테이블(Data Dictionary Base Tables)

데이터 딕셔너리 뷰들의 실체를 파고 든다. 데이터 딕셔너리 베이스 테이블에 대한 소개를 한 후, 인덱스들의 사용 현황을 파악하기 위해 기존의 V$OBJECT_USAGE보다 효율적인 뷰를 직접 만들어보도록 한다.

3부 이벤트(Events)

성능을 진단하고, 비용 기반 옵티마이저의 동작을 트레이스하고, Oracle Net 패킷을 트레이스 파일 형태로 수집하기 위해 사용할 수 있는 이벤트들을 소개한다.

4 X$ 테이블(X$ Fixed Tables)

4부에서도 문서화되지 않은 기능들에 접근하는 체계적인 절차를 중시할 것이다.

5 SQL 문장(SQL Statements)

문서화되지 않은 SQL 문장들을 집중적으로 조명한다.

6 PL/SQL 패키지(Supplied PL/SQL Packages)

Oracle DBMS에서 기본적으로 제공되는 PL/SQL 패키지들 중 문서화되지 않은 3개 패키지와 부분적으로만 문서화된 2개의 패키지를 살펴본다.

7부 애플리케이션 개발(Application Development)

Oracle 데이터베이스에 접근하기 위한 OCI(Oracle Call Interface) 기반의 Perl 인터페이스인 Perl DBI DBD::Oracle에 대해 설명한다.

8, 성능(Performance)

문서화되지 않은 확장 SQL 트레이스 파일의 내부를 들여다보고, Statspack AWR의 활용을 극대화하는 방안에 대해 살펴볼 것이다.

9 Oracle Net

TNS 리스너를 비롯한 각종 Oracle Net 기능들을 설정하기 위해 사용되는 파라미터들을 다루고 있다. Oracle 10g 시절에 등장했지만 문서화는 되지 않은 IP=FIRST 설정에 대해 설명한다.

10 Real Application Clusters

Transparent Application Failover(TAF)의 문서화되지 않은 기능들과, 클러스터 노드 장애 발생/복구 시나리오 하에서 시스템 부하를 재분배하기 위해 사용될 수 있는 데이터베이스 서비스(DBMS_SERVICE)의 개념에 대해 살펴본다.

11부 유틸리티(Utilities)

OERR 유틸리티, RMAN 파이프 인터페이스, 그리고 ORADEBUG를 다루고 있다

12부 부록(Appendixes)

용어정리(Glossary)와 참고문헌이 포함되어 있다.

 

이 책에 대해서 조금 더 자세히 알고 싶으시다면, 저자의 글을 참고하시기 바랍니다.

 

사실 이 책에 대해서 독자들에게 이야기 하고 싶은 것은 이 책의 내용이나 구성이 아닙니다. 그런 것들은 책을 읽으시면 저보다 훨씬 더 많이 아시게 될테니까요.

 

저희가 독자들에게 이야기하고 싶은 것은 역자에 대해서입니다. 물론, 이 도서의 역자는 ㈜데이타헤븐으로 되어 있지만 실직적인 번역은 윤민이라는 분의 책임하에 진행되었습니다. 번역 경험이 처음이라고 하셔서 솔직히 처음에 기획을 할 때 조금 걱정스러운 부분이 있었습니다만, 교정 담당자로부터 번역이 깔끔하다는 말을 듣고 또 역자 머리말을 읽어보고 기우였다는 것을 느꼈습니다. 번역서이기 때문에 억지로 한글화 시키는 부분에 대해서도 현업에서 일반적으로 사용하는 것들은 그냥 영문으로 사용하셨다는 부분도 사실은 독자들에게는 더 좋은 것이지 않을까 생각하고 있습니다. (지금에 와서 하는 이야기지만, 저희는 솔직히 번역서인데 영어가 많으면 왠지 성의가 없어 보이지 않을까 하는 쓸데없는 걱정을 많이 하는 편입니다. 그래서 현업에서 사용하는 용어보다는 용어사전에 맞춘 한글화를 선호하는 편이었습니다. 그렇지만 그건 역자가 결정하고 독자가 판단해야 하는 것이겠죠. 저희가 아니라…)

역자 머리말을 여러분께만 미리 공개합니다. 이 서문을 보고 역자에 대한 믿음을 갖게 된건 너무나 지극히 저희만의 개인적인 판단일까요??

천사와 악마’, ‘다빈치 코드그리고 최근에 출판된 로스트 심볼로 세계적인 베스트셀러 소설가로 확실하게 자리매김을 한 댄 브라운의 성공 비결은 과연 무엇일까? 이 작품들을 읽어 본 독자들은 잘 알고 있겠지만, 브라운은 자신의 소설에서 일루미나티(Illuminati)’, ‘오푸스 데이(Opus Dei)’, ‘프리메이슨(Freemasons)’과 같은 비밀 결사단체들을 주제로 하여 일반인들의 호기심을 자극하고 있다. 단체들의 이름은 모두들 어디선가 들어 봐서 알고는 있지만, 일반인들의 접근은 금지되고 극소수의 엘리트들에게만 허용된 금단의 구역

 

미지의 것(The Unknown)에 맞닥트렸을 때 사람들이 보이는 반응의 유형은 크게 두 가지로 분류된다. 첫 번째 유형은 익숙하지 않은 것에 두려움을 느끼고 눈 앞에 주어진 현실을 외면하려는 부류로, 가장 흔한 케이스라 할 수 있다. 좋게 말하면 현실주의자들이고, 나쁘게 말하면 우물 안 개구리라 할 수 있다. 반면 두 번째 유형에 속하는 사람들은 진실을 이해하고 쟁취하기 위해 고심한다. 이런 사람들은 자신의 코가 석자임에도 불구하고, 대를 위해 소를 희생하는 면모까지 보여준다. 이 세상에는 비밀 단체, 신비스러운 현상, 미스터리 등, 분야를 불문하고 진실을 규명하기 위해 인생을 바치는 사람들이 많다. IT도 예외는 아니다.

 

Oracle 분야에 종사하고 있는 많은 독자들은 이 말에 공감하리라 본다. 당면한 문제에 대한 해결책을 찾기 위해 매뉴얼을 샅샅이 뒤져보고, 인터넷과 Metalink도 검색해 보지만, 궁금증을 해소해 줄 수 있는 정보는 좀처럼 눈에 띠지 않는다. Metalink에서 그럴 듯한 제목을 가진 글을 찾아 링크를 클릭해 보면, ‘공개되지 않은 문서라는 메시지가 뜨거나 업데이트 날짜만 잔뜩 찍혀 있는 페이지(알맹이가 담긴 본문이 블라인드 처리되어 있음을 의미함)로 이동하게 된다. 하지만 이런 상황에서 나에게는 허락되지 않는 고급 정보구나’, ‘나는 몰라도 된다는 얘기구나라고 탄식하며 절망할 필요는 없다. “비용기반의 오라클 원리(Cost-Based Oracle Fundamentals)”의 저자인 Jonathan Lewis, 그리고 이 책의 저자인 Norbert Debes씨 모두 Oracle RDBMS 소스코드에 대한 접근권한을 가지지 않은 상태에서 진실에 접근하는 방법을 제시하고 있다.

 

마치 엘리트들만 알 수 있는 암호처럼 표현된 X$ 테이블의 요상한 칼럼들은 대체 무엇을 의미하는가? DBMS에서 적용할 수 있는 수많은 이벤트들의 용도는 과연 무엇일까? 10046 10053 이벤트로 수집한 트레이스 파일들과 Statspack/AWR 보고서의 내용을 어떻게 해석해야 할까? Debes씨는 이 책에서 이와 같은 질문들에 대한 해답을 공유하고 있다. 하지만 이 책이 제공하는 무엇보다 중요한 요소는, 단편적인 지식보다는 해답을 찾아 가는 과정과 방법론을 보여주고 있다는 점이다. 입시 위주의 교육에 길들여진 우리들의 입장에서는 중간 단계보다는 결과부터 빨리 보고 싶겠지만, 뛰어난 DBA의 반열에 오르기 위해서는 체계적인 문제해결 능력의 배양이 필수적이다 (너무 진부하고 지극히 당연한 이야기로 지면을 낭비해서 미안하다). Oracle 분야에 오래 종사하다 보면, 어려운 상황에 닥쳤을 때 성패를 가르는 것은 기초 지식을 응용하고 슬기롭게 위기를 극복해나가는 능력이라는 사실을 새삼 깨닫게 된다. ‘IT 분야에서는 일을 잘하면 본전이고, 조금만 잘못하면 욕먹는다는 속담이 있다. 억울하지만, 어느 정도 맞는 말이다. 하지만 반대로 생각하면, ‘어려운 상황 속에서 IT 전문가의 진정한 실력이 드러난다고 얘기할 수도 있다. 독자들이 이 책을 읽고 나서 실무에서 유용하게 쓰일 수 있는 소중한 지식도 습득하고, 어려운 문제를 해결하기 위해 오라클의 비밀을 파헤쳐나갈 수 있는 안목과 역량을 키우게 되기를 기원한다.