DATA 전문가로 가는 길

[ DBA ] 우리가 말하는 DBA 와 DB관련 단계별 TASK 본문

Data Architecture/DB 전문가

[ DBA ] 우리가 말하는 DBA 와 DB관련 단계별 TASK

EstenPark 2011. 11. 23. 13:15

[ DBA 정의 ] 

1. DBA(Database Administrator)의 정의
   - 데이터베이스 시스템이 원활하게 기능을 수행할 수 있도록 데이터베이스 구성 및
     관리 운영 전반에 대한 책임을 가지고 직무를 수행하는 자

 

2. DBA의 필요성
   가. 데이터 자원에 대한 중재 기능을 수행하기 위해 출현
       1) 자원이 공유되는 경우,자원 사용에 대한 사용자 간 갈등은 필연적으로 발생
       2) 데이터 아이템의 명칭과 그 정의
          - 같은 소속부서 아이템을 어떤 사용자는 부서번호(Dept number)로 명명하고
            다른 사용자는 팀번호(Team number)로 명명
       3) 데이터에 대한 서로 다른 접근 방식을 주장
          - 한쪽에서는 해당 부품들의 기능적 분류에 따라 접근할 것을 주장하고
          - 다른 한쪽에서는 공급자별 분류에 따를 것을 주장
          - 데이터에 대한 여러 가지의 접근 경로가 수립 a시스템의 전반적 성능이 저하
       4) 조직간 정보시스템을 사용하는 경우 범 조직적 기준이 개발되고 이행되어야 함
   나. 중재 기능을 수행하기 위해 요구되는 전문가적 지식과 경험
       1) 관리적,정책적인 사항
          - DB 사용자들과 효율적 의사소통을 하는데 필요
          - 외부 스키마 및 개념 스키마를 정의하는 기본적인 책임
       2) 데이터베이스의 기술적 부분
          - DB 상세설계, DB의 효율적 사용을 위한 기술적 지원
          - 내부 스키마를 정의하는 기본적인 책임

 

3. 데이터베이스 관리자(DBA)의 주요 역할(책임)
   1) DBMS설계와 조작의 책임
      - 데이터베이스의 구성요소 결정
      - 스키마를 정의
      - 저장구조와 액세스 방법
      - 보안 및 권한부여 정책
      - 데이터의 유효성 검사방법을 수립
      - 백업, 회복 절차를 정함
      - 무결성을 유지하기위한 대책 수립
      - 시스템의 성능향상
      - 새로운 요구사항에 대응한 DB 재구성
      - 데이터 사전의 조직, 액세스, 유지관리
   2) 행정적 책임
     - 데이터의 표현이나 문서화 표준 설정, 시행
     - 사용자의 요구와 불평 해결
   3) 시스템 감독 및 분석 책임
     - 시스템 성능 모니터링
     - 각종 통계를 종합 분석

 

4. 데이터베이스 관리자(DBA)의 자격요건
   가. Application의 이해
       - Application을 Tuning하기 위해서는 프로그램의 기본적인 처리 Routine이해 능력
   나. 시스템 구성 상태 이해
       - Load balancing기능을 수행 하기 위해서는 시스템 구성상태를 명확하게 이해
       - 시스템이 제공하는 파일시스템의 구조를 이해
   다. 업무팀과의 인화능력(협상능력)
       - 업무처리시 발생할 수 있는 오해와 마찰을 방지하고 해결 할 수 있는 능력


[ 각 항목별 프로그램 ]

벤더 지원 DBA가 아닌, DBMS를 활용하는 DBA의 필요 SKILL 위주로 나열해 보았습니다.

자기가 추구하는 DBA가 어떤 DBA냐에 따라 각 항목별로 조금씩 다른 선택을 해야 할 거라 생각됩니다.

 

1. Multi-DBMS(설치, 아키텍처, 특징, 기능, 성능, 이중화, 설계, 구축)
   - 외산 : Oracle, DB2, Sybase, MySql, MS-SQL Server 등
   - 국산 : Cubrid, Altibase, Tibero 등
   - MMDBMS, DRDBMS

 

2. 데이터모델링 도구(ERD 작성 및 검토, 데이터 품질/표준)
   - ERWin
   - SA
   - PowerDesigner
   - DA# 등

 

3. 성능관리 도구(DBMS 튜닝 및 SQL 튜닝)
   - DBMS 자체 제공 Utility
   - MaxGage(엑셈)
   - Stable(DBWine)
   - Orange
   - Toad 등

 

4. 서버장비 구성(개발/테스트/운영 환경 구성)
   - 이중화 구성(Single, H/A, RAC, Active/Standby 개념, Replication, SnapShot, DB Link 등)
   - 필요 Cluster S/W(HP ServiceGuard, IBM HACMP, SUN Cluster 등)
   - 필요 H/W, N/W 장비
   - 필요 디스크 구성(Volume Manager, RAID, Raw Device, File system)

 

5. DB 보안 솔루션(접근제어 및 컬럼암호화)
   - Chakra(웨어밸리)
   - DBSafer(피엔피씨큐어)
   - dGriffin(Sinsiway)
   - DB-i(소만사)
   - MiddleMan
   - XecureDB
   - 디아모 등

 

6. 백업 솔루션(백업 및 복구 정책)
   - Veritas NetBackup
   - EMC Legato Networker
   - HP Data Protector
   - BackupXcelator
   - Backup Galaxy
   - IBM TSM 등

 

7. 프로젝트 수행 방법론(수행 TASK, 산출물)
   - 정보공학
   - PPC
   - OO/CBD
   - Agile
   - 소속 회사의 방법론 등

 

8. 넓게 이해해고 있어야 할 것들
   - DR
   - DW
   - ERP
   - CRM
   - DATA Mining
   - CDC
   - ETT/ETL
   - OLTP/OLAP
   - EAI
   - WAS(JDBC) 등 Middle Ware
   - 엑셀 Macro(산출물) 등
 

 

[SI 프로젝트의 DBA의 단계별 TASK]

 

규모에 따라 DBA가 데이터모델러, 데이터전환까지 담당하는 경우가 많습니다.

각 단계별로 다음과 같은 TASK들을 수행합니다.

 

1. 분석단계

   - 요구분석                   (DBA,데이터모델러)
   - 현황분석                   (DBA,데이터모델러)
   - 명명규칙 정의              (DBA)
   - 용어사전 정의              (데이터모델러)
   - 도메인정의                 (데이터모델러)
   - 논리 ERD(정규화)           (데이터모델러)
   - 코드정의                   (데이터모델러)
   - 데이터모델링 가이드 작성   (데이터모델러,DBA)
   - 설계자 데이터모델링 교육   (데이터모델러)


2. 설계단계

   - 물리ERD(반정규화)              (데이터모델러,데이터모델관리 도구)
   - 파라미터 설계                  (DBA)
   - 사용자/보안 설계               (DBA)
   - 데이터파일 설계                (DBA)
   - 테이블스페이스 설계            (DBA)
   - ROLE 정의(Privilege설계)       (DBA)
   - VIEW, 트리거 설계              (DBA)
   - Function, Procedure설계        (DBA)
   - 인덱스 설계                    (DBA)
   - 테이블크기 분석                (DBA)
   - 디스크 볼륨 구성(H/W)          (H/W,DBA)
   - 내/외부 인터페이스 설계        (응용,DBA)
   - SQL 개발 가이드 작성           (DBA)
   - 개발자 SQL 교육                (DBA)

 

3. 구축단계

   - ERD 검토 및 변경관리          (데이터모델러,데이터모델관리 도구)
   - DB 스키마 변경관리            (DBA)
   - DB SCRIPT 변경관리            (DBA)
   - DB 장애처리                   (DBA,벤더엔지니어)
   - 산물출 변경관리

 

4. 시험단계

   - 시험 데이터 설치 및 전환      (응용,DBA)
   - SQL 성능분석 및 DBMS 튜닝     (DBA,성능관리 도구)
   - ERD 검토 및 변경관리          (데이터모델러,데이터모델관리 도구)
   - DB 스키마 변경관리            (DBA)
   - DB SCRIPT 변경관리            (DBA)
   - DB 장애처리                   (DBA,벤더엔지니어)
   - 산물출 변경관리

 

5. 전개단계
   - DBMS 설치                     (DBA,벤더엔지니어)
   - 환경설정 및 DB 스키마 생성    (DBA)
   - DB 장애처리                   (DBA,벤더엔지니어)
   - SQL 성능분석 및 DBMS 튜닝     (DBA,성능관리 도구)
   - 초기 데이터 설치 및 전환      (응용,DBA)
   - 운영자 지침서 작성            (DBA)
   - 운영자 교육                   (DBA, 외부교육)

 

 6. 운영단계
   - ERD 검토 및 변경관리          (모델러,데이터모델관리 도구)
   - DB 스키마 변경관리            (DBA)
   - DB SCRIPT 변경관리            (DBA)
   - DB 장애처리                   (DBA,벤더엔지니어)
   - SQL 성능분석 및 튜닝          (DBA,성능관리 도구)
   - DB 백업 및 복구               (DBA,백업관리 도구)
   - 산물출 변경관리

출처 :
http://blog.naver.com/itisksc/30046153148
http://web.oracleclub.com/article/24932


Comments