티스토리 뷰

목차



     

    "테크씬 - 핵심 요약 후 시작합니다."

    • DBA (Database Administrator)와 Data Engineer (DE)는 기술적인 스킬 셋과 결과물 측면에서 차이가 있음.
    • DBA의 핵심 결과물은 최적화, 보안 강화, 백업 및 복구가 가능한 데이터베이스임. 반면, Data Engineer의 핵심 결과물은 정제된 데이터와 통합된 데이터 파이프라인임.
    • DBA는 데이터의 무결성, 성능 최적화 및 보안을 담당하며, Data Engineer는 원시 데이터를 수집, 정제하고, 통합된 데이터 파이프라인을 구축하는 역할을 담당함.

    DBA 사진 1

     


     

    안녕하세요, 오늘도 테크씬입니다! 데이터! 21세기의 새로운 Gold(금) 혹은 Oil(원유). 우리가 살아가는 세상의 도처는 이제 데이터로 가득 차 있고, 이 데이터를 관리하고 활용하는 것이 매우 중요해졌습니다. 그러나, 이 데이터의 세계는 많은 사람들에게는 아직도 미지의 영역이고 어렵게만 느껴지죠! 데이터베이스 관리자(DBA)와 데이터 엔지니어는 이 데이터의 세계에서 가장 중요한 역할을 담당하고 있지만, 그들의 역할과 기술, 스킬셋이 어떻게 다른지는 잘 알려져 있지 않습니다. 이 글에서는 DBA와 데이터 엔지니어의 차이점과 공통점, 그리고 그들이 어떤 결과물을 만들어내는지에 대해 자세히 알아보겠습니다.

     

     



    DBA의 핵심 개념 및 역할:

    1. 데이터베이스 설계 및 구현:
    데이터베이스를 만들고 구조를 설계하는 역할입니다. DB의 근간이 되므로 매우 매우 중요한 작업이죠! 이는 집을 짓는 것과 유사한데, 어디에 방을 만들 것인지, 어디에 화장실이 필요한지 등을 결정하는 것과 같습니다.

    2. 데이터베이스 관리 및 운영: 
    일단 데이터베이스를 구축한 뒤, 그것을 유지하고 관리하는 역할입니다. 수많은 DBA들이 해당 작업에 지대한 시간을 들이죠. 앞서 집을 예로 들었으니 이어서 설명해 볼게요!. 이는 집(DB)에 있는 방이 너무 추우면 난방을 틀고, 누가 집에 들어가려고 하면 문을 열어주는 것과 같습니다.


    3. 데이터베이스 성능 최적화: 

    데이터베이스의 성능을 최적화하여 사용자들이 데이터에 빠르게 접근할 수 있도록 하는 역할입니다. 우리는 빅데이터의 시대에 살고 있기 때문에 DB에는 수많은 다양한 데이터가 존재하죠. 성능을 지속하여 튜닝하지 않는다면 DB의 속도(즉, 성능)는 크게 감소할 것입니다. 이는 자동차의 엔진을 조율하여 속도를 높이는 것과 유사합니다.

    4. 데이터 백업 및 복구: 

    데이터베이스의 데이터를 안전하게 보관하고, 필요한 경우 복구하는 역할입니다. 이는 중요한 문서를 복사하여 다른 곳에 보관하고, 필요할 때 그것을 사용하는 것과 유사합니다. 추후에 DR(Disaster Recovery) 내용도 다루어 보겠습니다!

    5. 데이터베이스 보안: 

    데이터베이스에 저장된 데이터를 보호하여, 무단 접근이나 변경, 삭제를 방지하는 역할입니다. 이는 집의 문을 잠그고, 경비를 서는 것과 유사합니다.

    6. 데이터베이스 모니터링: 

    데이터베이스의 상태를 지속적으로 모니터링하여 문제가 발생하면 즉시 대응하는 역할입니다. 이는 환자의 상태를 지속적으로 모니터링하고, 문제가 발생하면 즉시 의사에게 알리는 것과 유사합니다.

    위에 설명한 DBA의 6가지 핵심 역할이 이해되셨나요?! DBA는 데이터베이스의 '지키미'와 같은 역할을 합니다. 그들은 데이터베이스의 성능을 최적화하고, 데이터를 안전하게 보호하며, 필요한 경우 복구도 수행합니다. 나아가 데이터베이스의 상태를 지속적으로 모니터링하는 역할을 담당합니다.

     



    DBA와 Data Engineer가 헷갈린다구요!?

    DBA와 Data Engineer는 데이터와 관련된 역할이지만, 그들의 책임과 역할이 다릅니다. 간단히 다시 한번 그들의 개념을 설명하고 비유로 이해를 돕겠습니다, 잘 따라와 보세요^^. 시간이 되시는 분들은 아래의 영상도 도움이 될 것입니다!

    https://www.youtube.com/watch?v=VSxF0bb-JH4 

     


    DBA (Database Administrator)

    - 역할: 데이터베이스 관리자로, 주로 데이터베이스의 설계, 구현, 운영, 관리, 성능 최적화, 백업, 복구, 보안, 모니터링 등에 중점을 둡니다.
    - 즉, DBA는 집의 주인과 같습니다. 집을 짓고, 그곳의 환경을 관리하고, 문제가 생기면 해결하고, 방범을 담당하며, 필요한 경우 복구 작업을 하는 역할을 합니다.


    Data Engineer(DE, 데이터 엔지니어)
    - 역할: 데이터 엔지니어는 데이터 아키텍처, 데이터베이스 관리, 데이터 처리 및 데이터 파이프라인 구축에 중점을 둡니다. 그들은 대량의 데이터를 수집, 변환, 저장하고, 그것을 분석가들이 분석할 수 있도록 준비합니다.
    - 즉, Data Engineer는 도로 및 교통 체계의 엔지니어와 유사합니다. 그들은 도로를 만들고, 트래픽을 관리하며, 모든 것이 원활하게 진행되도록 합니다.

     

     

    DBA와 DE의 공통점

    - 데이터 관리: 둘 다 데이터 관리에 중점을 둡니다. DBA는 데이터베이스의 관리와 운영에 집중하며, Data Engineer는 데이터 파이프라인과 데이터 처리에 집중합니다.
    - 기술적 지식: 둘 다 고도의 기술적 지식이 필요합니다. DBA는 데이터베이스 관리 시스템(DBMS)에 대한 깊은 지식이 필요하고, Data Engineer는 데이터 처리 및 데이터 파이프라인 구축에 필요한 다양한 도구와 기술에 대한 지식이 필요합니다.

     


    DBA와 DE의 차이점

    - 초점: DBA의 주요 책임은 데이터베이스의 운영 및 관리입니다. 반면, Data Engineer는 데이터를 수집, 변환, 저장하고, 분석가들이 사용할 수 있도록 데이터를 준비하는 것에 중점을 둡니다.
    - 역할: DBA는 데이터베이스의 성능을 최적화하고, 데이터를 백업하고 복구하며, 데이터베이스의 보안을 담당합니다. 반면, Data Engineer는 데이터를 수집하고, 변환하고, 저장하고, 분석 가능한 형태로 데이터를 변환하는 역할을 합니다.
    - 결론적으로, DBA와 Data Engineer는 둘 다 데이터 관리에 중점을 두지만, 그들의 역할과 책임이 다릅니다. DBA는 데이터베이스의 관리와 운영에 집중하며, Data Engineer는 데이터 파이프라인과 데이터 처리에 집중합니다.

     

     

     

    끝으로, DBA와 DE가 되고자 하시는 분들을 위해 (A) 필요한 기술과 (B) 스킬 셋에 대해서 정리하며 마치겠습니다!

     

    (A) DBA와 DE의 기술

    • DBA:
      • SQL: 대부분의 데이터베이스는 SQL(Structured Query Language)을 사용하여 데이터를 관리합니다.
      • DBA는 SQL을 통해 데이터를 검색, 삽입, 수정, 삭제하는 방법을 알아야 합니다.
      • DBMS: 데이터베이스 관리 시스템, 예를 들어 Oracle, Microsoft SQL Server, MySQL 등에 익숙해야 합니다.
      • 백업 및 복구 도구: 데이터를 안전하게 보관하고 장애 발생 시 복구할 수 있는 도구에 대한 지식이 필요합니다.

    • Data Engineer:
      • 프로그래밍 언어: Python, Java 등의 프로그래밍 언어를 사용하여 데이터 처리 작업을 수행합니다.
      • 빅 데이터 기술: Hadoop, Spark, Kafka 등의 빅 데이터 처리를 위한 기술에 익숙해야 합니다.
      • 데이터 파이프라인 도구: Apache Airflow, Apache NiFi와 같은 데이터 파이프라인 구축 도구를 사용합니다.

     

    (B) DBA와 DE의 스킬셋

    • DBA:
      • 데이터 모델링: 데이터의 구조를 정의하고 관계를 식별하는 데 필요한 기술입니다.
      • 데이터베이스 설계: 데이터베이스의 구조를 계획하고 구축하는 능력입니다.
      • 데이터베이스 튜닝: 데이터베이스의 성능을 최적화하기 위한 기술입니다.
      • 보안: 데이터베이스의 보안을 강화하고, 사용자 권한을 관리하는 능력이 필요합니다.

    https://www.youtube.com/watch?v=e2oj-xgpiH0 

    • Data Engineer:
      • 데이터 처리: 데이터를 수집, 변환, 저장하는 기술입니다.
      • 데이터 파이프라인 구축: 데이터의 흐름을 관리하고, 여러 데이터 소스를 통합하는 능력이 필요합니다.
        데이터베이스 관리: DBA와 유사하게, Data Engineer도 데이터베이스를 관리하며, 필요한 경우 데이터베이스를 설계하고 구축할 수 있습니다.

     

    오늘 포스팅에서 느낀 바와 같이, DBA와 데이터 엔지니어, 두 전문가 모두 데이터의 세계에서 중추적인 역할을 담당하고 있습니다. 하지만, 그들의 역할, 기술, 스킬셋은 매우 다르며, 그들이 만들어내는 결과물도 다릅니다. DBA는 데이터의 안전과 효율적인 관리를 위해 필요한 전문가이며, 데이터 엔지니어는 데이터를 수집, 변환, 저장하는 과정을 관리하고, 이를 다양한 분석 도구와 연결하는 역할을 담당합니다. 이 두 전문가는 각각의 역할에 최적화된 스킬셋과 기술을 가지고 있으며, 그들의 역할이 서로 보완적이기 때문에, 데이터를 관리하고 활용하는 모든 기업에서는 이 두 전문가가 함께 일해야만 효과적인 데이터 관리와 활용이 가능합니다. 여러분의 실무 혹은 일상에 조금이나마 도움이 되셨길 바랍니다! 오늘도 테크씬이었습니다. 기분 좋은 하루 보내세요!^^

     


     

    [관련 포스팅]

    2023.01.29 - [AI] - 데이터 사이언티스트 vs 데이터 엔지니어: 주요 차이점과 이해

     

    데이터 사이언티스트 vs 데이터 엔지니어: 주요 차이점과 이해

    1. 디지털화의 가속화 (DX), 새로운 직업들 지난 10년간, 특히 지난 5년간 세상은 급격히 변화하면서 삶과 일의 중심부가 디지털화되고 축이 변화하는 DX(Digital Transformation, 디지털 전환)를 경험하고

    techscene.tistory.com

    2023.02.06 - [개발] - 데이터 직군 안내서: DA, TA, DE, DS, ML엔지니어, BI 분석가

     

    데이터 직군 안내서: DA, TA, DE, DS, ML엔지니어, BI 분석가

    "테크씬의 5줄 요약" • 데이터 분야의 주요 역할에는 DA, TA, DE, ML엔지니어, BI분석가, DS가 포함됨 • 각 역할에는 고유한 책임, 기술 및 자격이 존재함 • 데이터 분석/시각화, 머신러닝 알고리즘

    techscene.tistory.com

     

     

     
     
    반응형