DBA가 하는 역할과 로드맵 정리

Jay·2021년 11월 23일
9
post-thumbnail
post-custom-banner

DBA는 누구인가?

💡 DBA는 DataBase Administrator의 약자로, 어떤 기업이나 조직에서 데이터베이스에 관련하여 설치, 관리, 업데이트, 구성, 유지보수 등 전반적인 업무를 수행하는 사람입니다.

DBA가 하는 업무를 정리해보자

단계별 정리에 앞서, 주관적으로 DBA가 가지고 있어야할 지식이 어떤 것들이 있는지 정리해볼것이다.

우선 당연하게도 DB를 관리하는 관리자이기 때문에 DB, DBMS에 대한 지식을 알고 있어야 한다. 최근에는 데이터간의 관계성보다 성능 위주로 데이터 처리를 원하는 비즈니스 로직들이 존재한다. 그래서 NoSQL 기반의 DB(Mongo DB, Cassandra 등)에 대한 이해도 필요하다.

또한, SQL 로 작성된 트리거(이벤트가 발생할 때 자동으로 호출)와 프로시저(필요할 때마다 호출)들을 작성할 줄 알아야하며 DB접근에 대한 스키마스크립트도 작성할줄 알아야 한다. 배치 프로그램은 쉘 스크립트로 작성이 된다. Control-M과 같은 배치 프로그램에서 수많은 배치 프로그램들 안에는 쉘 스크립트로 작성된 파일을 실행시키는 것이기 때문에 스크립트 작성은 필수이다.

DBA의 중요한 업무는 데이터 손실을 막는 것. 즉, 데이터 베이스에 데이터들이 효율적이고 안전하게 보관이 되어야 한다. 그렇기 때문에 모니터링튜닝을 기본적으로 할 수 있어야 한다. 추가적으로 어떠한 DB에러에 도 대처하기 위해 네트워크, OS에 대한 이해도 필요할 것이다.

최근들어 DB는 온프레미스 구조가 아닌, 클라우드 형식으로 구성하는 것이 추세이다. 그렇기 때문에 클라우드 컴퓨팅에서 여러가지 DB 관리 및 성능 향상 방법들을 공부하는 것이 좋을 것 같다.

분석 단계

  • 비즈니스 요구분석
  • 현재 시스템 현황 분석
  • 명명 규칙 정의(정의서 작성)
  • 용어사전 정의
  • 도메인정의
  • 논리 ERD 및 정규화
  • 코드 정의
  • 데이터 모델링 가이드 작성
  • 설계자 데이터 모델링 교육

설계 단계

  • 물리 ERD 및 반정규화
  • 파라미터 설계 (API)
  • 사용자 및 보안 설계
  • 데이터 파일 설계
  • 테이블 스페이스 설계
  • ROLE (ADMIN, USER) 정의
  • VIEW, TRIGGER 설계
  • FUNCTION, PROCEDURE tjfrP
  • INDEX 설계
  • 테이블 크기 분석
  • 디스크 볼륨 구성(HW)
  • 내/외부 인터페이스 설계
  • SQL 개발 가이드 작성
  • 개발자 SQL 교육

구축 단계

  • ERD 검토 및 변경 관리
  • DB 스키마 변경 관리
  • DB 스크립트 변경 관리
  • DB 장애 및 에러 처리
  • 산출물 변경 관리

TEST 단계

  • TEST 데이터 설치 및 전환
  • SQL 성능 분석 및 DBMS 튜닝
  • ERD 검토 및 변경 관리
  • DB 스키마 변경 관리
  • DB 스크립트 변경 관리
  • DB장애 처리
  • 산출물 변경관리

배포/전개 단계

  • DBMS 설치, 환경설정 및 DB 스키마 생성
  • DB 장애처리
  • SQL 성능 분석 및 DBMS 튜닝
  • 초기 데이터 설치 및 전환
  • 운영자 지침서 작성
  • 운영자 교육

운영 단계

  • ERD 검토 및 변경관리
  • DB 스키마 변경 관리
  • DB 스크립트 변경관리
  • DB 장애처리
  • SQL 성능분석 및 튜닝
  • DB 백업 및 복구
  • 산출물 변경관리

로드맵

보통은 개발 엔지니어 → DBA → 모델러 or 튜너 or 컨설턴트 순으로 지향한다고 한다.

하지만 DBA 업무 자체가 모델러, 튜너, 컨설턴트의 역할을 어느정도 포함하고 있기 때문에 기본적인 업무는 알고 있어야하며 이후 특수한 분야에 전문성을 갖추는 것이 중요한 포인트이다.

그리고 최근들어 RDBMS 뿐만 아니라 No SQL 기반의 DB, 더 나아가서 이들을 관리하는 서버인 온프레미스 서버, 클라우드 같은 환경에 대한 공부를 진행하는 것이 좋을 것 같고 경쟁력이 생길 것 같다.

도움이 될만한 자격증들

오라클 관련 자격증 : OCA, OCP, OCM

SQL 관련 자격증 : SQLD, SQLP

Data Architecture(데이터 아키텍쳐 전문가) : DAsP, DAP

N/W & S/E : Cisco Certified Pro Expert, 리눅스 마스터 1급, 네트워크 관리사 1급

클라우드관련 자격증(기본)

  • AWS_Cloud Practitioner
  • AWS_Solutions Architect Associate
  • AWS_SysOps Administrator Associate
  • AWS_Developer Associate
  • CKAD_Certified Kubernetes Application Developer

클라우드관련 자격증(고급)

  • AWS_Solutions Architect Professional
  • AWS_DevOps Engineer Professional
  • AWS_Advanced Networking Specialty
  • AWS_Data Analytics Specialty
  • AWS_Security Specialty
  • AWS_Machine Learning Specialty
  • AWS_Alexa Skill Builder Specialty
  • AWS_Database Specialty
  • CKA_Certified Kubernetes Administrator

[도움이 된 자료]
1. https://mozi.tistory.com/242
2. https://www.jobkorea.co.kr/goodjob/tip/view?News_No=18758&schCtgr=0&Page=1
3. https://okky.kr/article/252432
4. https://www.mastersindatascience.org/careers/data-architect/

profile
도전을 하면 실패를 하고 실패를 해야 성공을 한다.
post-custom-banner

1개의 댓글

comment-user-thumbnail
2024년 3월 7일

The data offered is really instructive. Although I've enrolled in Birchwood University's Data Science program, I have no idea how I'll find work once my current career ends. Is employment easy to come by?

답글 달기