오늘도 출근하다 주절주절 글을 남겨 보네요!!
타 전산팀 분들과도 교류도 많고 하다 보니 여기저기서 주워듣느게 많네요.
오늘 하고 싶은애기는 "데이터베이스 관리 어떻게 관리하시나요?"입니다.

저는 여러 업체를 거치며 오라클, MSSQL을 주로 다루었습니다.
MYSQL 및 기타 데이터베이스도 다루었지만 깊이 있게 공부한 데이터베이스는 2개이고 이중 MSSQL이 주력 데이터베이스 툴입니다.
지금도 관리를 하고 있고요.
운이 좋게도 저번 회사를 다니며 팀장님이 많은 교육 참여 기회를 주셨고 운 좋게도 정원혁 씨가 진행하는 데이터베이스 튜닝 과정 및 운영과정을 들을 수 있었습니다.
그리고 내가 전산팀장이 되면 한번 관리를 제대로 해보겠다고 생각이 들었습니다.
SQL SERVER 기능 중에 보면 유지관리계획이라는 것이 있는데 이를 사용하지 않는 사람들이 너무 많았습니다.
대부분 DATABASE를 설계할 때 인덱스를 구성하면 끝나는 줄 알고 있습니다.
이 인덱스 및 옵티마이저가 활용하는 통계에 대한 업데이트를 무시하고 운영하고 있습니다.
그리고 항상 속도 관련 트러블 이슈가 발생하면 그때야 체크를 하기 시작하죠.
물론 이렇게 관리한다고 해서 느려지는 것을 100% 막을 수는 없습니다.
( 기하급수적으로 늘어나는 데이터를 어쩔 수 없으니까요. )
하지만 이렇게 익 덱스를 재구성하고 통계를 월 단위로 업데이트하는 것만으로도 상당한 성능 향상 효과를 가지고 옵니다.
현재 자사에서 가장 큰 데이터베이스를 5년째 운영 중인데 가동 시점과 현재도 중요 프로세스에서 반응 속도의 거의 차이 없이 유지가 되고 있습니다.
물론 하드웨어가 좋아져서 문제가 발생 안 한 것일 수도 있지만 똑같은 설루션 쓰는 타업체와 비교해도 속도가 빠르다는 것은 해당 유지보수 작업이 효과를 발휘하는 거겠지요.
그리고 가능하면 핵심 쿼리는 주기적으로 테스트하며 동작 시간을 체크해 보는 것도 좋은 방법입니다.
오라클에도 비슷한 기능이 있기에 본인 업무가 개발이 주가 아니라 운영이라면 이 부분에 관심을 가져 보시기 바랍니다.
작은 노력으로 굉장히 큰 효과를 거둘 수 있습니다.
^^;;; 관련 기술에 대한 부분은 검색하면 워낙 많은 자료가 나오기에 여기까지 설명하겠습니다.

Posted by Midas Min™
,