Notice
Recent Posts
Recent Comments
Link
«   2025/06   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Archives
Today
Total
관리 메뉴

hyewon's study

견고한 데이터 엔지니어링 1장. 데이터 엔지니어링 기반 구축하기 본문

DATA

견고한 데이터 엔지니어링 1장. 데이터 엔지니어링 기반 구축하기

hyeoni__ 2024. 9. 9. 19:29

1.1 데이터 엔지니어링이란?

 

1.1 데이터 엔지니어링 정의

  • 데이터 엔지니어링은 원시 데이터를 가져와 분석 및 머신러닝과 같은 다운스트림 사용 사레를 지원하는, 고품질의 일관된 정보를 생성하는 시스템과 프로세스의 개발, 구현 및 유지관리이다. 
  • 데이터 엔지니어링은 보안, 데이터 관리. 데이터 운영. 데이터 아키텍처, 오케스트레이션, 소프트웨어 엔지니어링의 교차점이다.

 

1.1.2 데이터 엔지니어링 수명 주기

- 데이터 엔지니어링 수명 주기는 전체 수명 주기에 걸쳐 중요한 아이디어인 드러나지 않는 요소라는 개념을 포함한다.

  • 데이터 생성
  • 데이터 저장
  • 데이터 수집
  • 데이터 변환
  • 데이터 서빙

 

1.1.3 데이터 엔지니어의 변화

① 1980년대 부터 2000년대까지: 데이터 웨어하우징에서 웹으로

  • 1980년대: 비즈니스 데이터 웨어하우스 용어 형성되고, 1989년에 데이터 웨어하우스 용어를 공식적으로 만들었다.
  • 1990년대: AOL, 야후, 아마존과 같은 새로운 세대의 웹 우선 기업을 탄생시켰다.

 

② 2000년대 초: 현대 데이터 엔지니어링의 탄생

  • 이전까지 전통적인 모놀리식 관계형 데이터베이스와 데이터 웨어하우스에 계속 의존하면서 해당 시스템이 불안정해짐에 따라 데이터 증가를 처리할 최신화된 접근 방식이 필요했다.
  • 범용 하드웨어(서버, RAM, 디스크, 플래시 드라이브) 비용이 저렴해지고, 분산 컴퓨팅 클러스터에서의 혁신이 등장하면서 데이터 시스템이 분산되고, 빅데이터 시대가 시작되었다.
  • 2003년 구글은 구글 파일 시스템에 관한 논문을 발표했고, 2004년애는 초확장 데이터 처리 패러다임인 맵리듀스에 관한 논문을 발표했다.
  • 2006년에 아파치 하둡을 개발하고 오픈 소스로 공개했으며, 빅데이터 처리 기술이 본격적으로 확산되었다.
  • 아마존은 아마존 웹 서비스(AWS)를 통해 가장 인기 있는 퍼블릭 클라우드 서비스가 되었고, 잇따라 구글 클라우드와 마이크로소프트 애저와 같은 다른 퍼블릭 클라우드가 등장하기 시작했다.

③ 2000년대와 2010년대: 빅데이터 엔지니어링

  • 오픈 소스 빅데이터 도구는 빠르게 진화하고 기업들로 확산되었고, 배치 컴퓨팅에서 이벤트 스트리밍으로의 전환과 함께 실시간 빅데이터의 새로운 시대를 열었다.
  • 2000년대 후반과 2010년대에 데이터 도구가 폭발적으로 증가하면서 빅데이터 엔지니어가 탄생했다.
  • 빅데이터의 용어가 점점 활력을 잃게 되면서 빅데이터 처리는 더 이상 별도의 용어를 사용할 가치가 없을 만큼 접근성이 좋아져 빅데이터 엔지니어는 그저 데이터 엔지니어이다.

④ 2020년대: 데이터 수명 주기를 위한 엔지니어링

  • 데이터 수명 주기 엔지니어는 더 강화된 추상화와 단순화 덕분에 과거 빅데이터 프레임워크의 끔찍한 세부 사항의 방해를 받지 않는다.
  • GDPR과 CCPA 같은 데이터 보호 규정 준수가 중요해졌고, 데이터 관리와 품질 향상에 중점을 두고 있습니다.
  • 과거 대기업에서만 강조되던 데이터 관리와 같은 '기업화' 사항들이 소규모 기업에서도 중요해졌으며, 전통적인 기업의 지휘 총제 접근 방식이 아닌 탈중앙화와 민첩성에 중점을 두고 있다.

GDPR(General Data Protection Regulation)과 CCPA(California Consumer Privacy Act)는 개인 데이터 보호와 프라이버시 권리를 보장하기 위한 주요 법적 규정입니다.

 

1.1.4 데이터 엔지니어링과 데이터 과학

- 데이터 엔지니어링은 데이터 과학의 업스트림에 위치하며, 데이터 엔지니어는 데이터 과학자가 사용할 입력값을 제공하며, 데이터 과학자는 이렇게 입력된 값들을 유용한 결과로 변환한다는 의미다.

 

1.2 데이터 엔지니어링 기술과 활동

데이터 엔지니어의 기술 역량

  • 데이터 도구들을 평가하는 방법과 데이터 엔지니어링 수명 주기 전반에 걸쳐 이 도구들이 어떻게 조합되는지를 이해한다.
  • 원천 시스템에서 어떻게 데이터가 생성되는지, 데이터를 처리하고 선별한 후에 이를 어떻게 소비하고 가치를 창출할지 파악한다.
  • 수많은 복잡한 가변적 요소를 처리하고 비용, 민첩성, 확장성, 단순성, 재사용성, 상호 운용성의 축에 따라 지속해서 최적화를 수행해야 한다.

1.2.1 데이터 성숙도와 데이터 엔지니어

  • 데이터 성숙도는 조직 전체에 걸쳐 더 높은 데이터 활용률, 기능, 통합을 향해 나아가는 과정이지만 단순히 기업 연혁이나 매출에 따라 결정되지는 않는다.
  • 성숙도 모델은 '데이터로 시작하기, 데이터로 확장하기, 데이터로 선도하기'의 세 단계로 구성된다.

 

1단계: 데이터로 시작하기

- 데이터를 이제 막 시작하는 기업에 해당된다.

  • 데이터 아키텍처와 인프라는 계획 및 개발의 초기 단계에 있으며, 채택 및 활용률은 낮거나 아예 존재하지 않을 가능성이 있다.
  • 데이터 팀의 규모는 작으며 대개 한 자릿수의 인원을 보유한다.
  • 데이터 엔지니어가 데이터 과학자나 소프트웨어 엔지니어 등 여러가지 다른 역할을 수행한다.

- 데이터로 시작하는 조직의 데이터 엔지니어는 다음과 같은 사항에 중점을 두어야 한다.

  • 경영진을 포함한 주요 관계자로부터 지원을 받을 수 있어야 한다.
  • 적절한 데이터 아키텍처를 정의한다.(데이터 이니셔티브를 통해 달성하려는 경영 목표와 경쟁 우위를 결정한다)
  • 주요 이니셔티브를 지원하면서 여러분이 설계한 데이터 아키텍처 내에서 작동할 데이터를 확인하고 검수한다.
  • 미래의 데이터 분석가 및 과학자를 위한 견고한 데이터 기반을 구축한다.

- 함정이 많은 까다로운 단계로 몇가지 팁을 소개한다.

  • 데이터로 가시적인 성공을 많이 만들지 못하면 조직의 의지가 약해질 수 있다. 
  • 고립된 환경에서 일하지 말고 종종 부서 외부의 사람들과 소통하여 피드백을 얻는다.
  • 구분되지 않는 과중한 업무들을 피한다.
  • 경쟁 우위를 창출 할 수 있는 경우에만 맞춤형 솔루션과 코드를 구축한다.

 

2단계: 데이터로 확장하기

  • 1단계를 거치고, 이제는 확장성 있는 데이터 아키텍처를 구축하고, 기업이 진정으로 데이터 중심인 미래를 계획하는 것이다.

- 2단계에 진입한 조직에서 데이터 엔지니어 목표는 다음과 같다.

  • 공식적인 데이터 관행 수립
  • 확장성 있고 견고한 데이터 아키텍처 구축
  • 데브옵스 및 데이터옵스 관행 채택
  • ML을 지원하는 시스템 구축
  • 차별화 되지 않은 과중한 업무를 피하고, 경쟁 우위를 확보할 때만 커스터마이징

 

- 주의 깊게 살펴볼 문제는 다음과 같다.

  • 데이터의 정교함에 따라, 최첨단 기술을 채택하고 싶은 유혹이 생긴다. 그러나 모든 기술적 의사결정은 고객에게 제공하는 가치에 따라 결정되어야 한다.
  • 팀의 처리량을 확장하려면 배포와 관리가 쉬운 solution에 집중한다.
  • 자만심이 들 때 실용적인 리더십으로 초점을 전환하고 다음 성숙 단계로 전환한다.
  • 다른 팀과 데이터의 실질적인 유용성에 대해 소통하고, 데이터의 사용과 활용 방법을 교육한다.

3단계: 데이터로 선도하기

  • 이 단계에서 기업은 데이터 중심이다. 데이터 엔지니어가 작성한 자동화된 파이프라인과 시스템을 통해, 사내 직원은 셀프서비스 분석 및 ML을 수행할 수 있다.

- 3단계에 도달한 조직에서 데이터 엔지니어는 이전 단계를 계속해 구축하며, 다음과 같은 작업을 수행한다.

  • 새로운 데이터의 매끄러운 배포와 사용을 위한 자동화를 구축한다.
  • 데이터를 활용하는 사용자 정의 도구와 시스템 구축에 주력한다.
  • 데이터 관리 및 데이터옵스와 같은 데이터의 '기업적' 측면에 집중한다.
  • 데이터를 조직 전체에 노출하고 전파하는 도구를 배포한다.
  • SW 엔지니어, ML 엔지니어 및 분석가 등과 효율적으로 협업한다.
  • 역할, 직책 관계없이 자유롭게 협업 및 토론할 수 있는 커뮤니티와 환경을 구축한다.

- 주의 깊게 살펴볼 문제는 다음과 같다.

  • 현재 상태에 안주하는 것은 중대한 위협 요소이며 3단계에 도달 하면 항상 유지 보수와 개선에 집중해야 한다.
  • 기술의 산만함은 다른 단계보다 더 큰 위협 요소이다. 경쟁 우위를 제공하는 경우에만 직접 구축한 기술을 활용한다.

 

1.2.2 데이터 엔지니어의 배경과 기술

  • 데이터 엔지니어는 데이터 소비자(데이터 분석가 및 데이터 과학자)의 요구 사항과 조직 전체에 걸치 데이터의 광범위한 의미를 이해해야 한다.
  • 데이터 엔지니어링은 전체적인 실무이며, 최고의 데이터 엔지니어는 비즈니스 및 기술적 관점에서 그들의 책임을 판단한다.

 

1.2.3 비즈니스 책임

  • 비기술자 및 기술자와의 커뮤니케이션 방법 파악. (의사소통의 중요성)
  • 비즈니스 요건과 제품 요건을 살펴보고 수집하는 방법 이해. (데이터 및 기술 결정의 비즈니스에 대한 영향)
  • 에자일, 데브옵스, 데이터옵스의 문화적 기반 이해. (조직의 개발 문화 이해)
  • 비용 관리 (비용 절감 및 비용 최적화)
  • 지속적인 학습

1.2.4 기술 책임

- 미리 패키지화된 컴포넌트 또는 자체 개발한 컴포넌트를 사용해 성능과 비용을 높은 수준으로 최적화하는 아키텍처를 구축하는 방법을 이해해야 한다.

 

데이터 엔지니어링 데이터 수명주기 단계

  • 데이터 생성
  • 데이터 저장
  • 데이터 수집
  • 데이터 변환
  • 데이터 서빙

데이터 엔지니어링 수명 주기의 드러나지 않는 요소 

  • 보안
  • 데이터 관리
  • 데이터옵스
  • 데이터 아케틱처
  • 오케스트레이션
  • 소프트웨어 엔지니어링

데이터 엔지니어가 익혀야 할 언어

  • 1차 범주 (주요 언어): SQL, 파이썬, (자바 또는 스칼라 등), 자바 가상 머신(JVM) 언어 및 배시 등
    • JVM 언어: 스파크, 하이브, 드루이드와 같은 아파티 오픈 소스 프로젝트에 널리 쓰임
    • 배시: 리눅스 운영 체계용 명령행 인터페이스
  • 2차 범주 (보조 언어): R, Javascript, Go, Rust, C/C++, C#, 줄리아 등

 

1.2.5 A에서 B로 이어지는 데이터 엔지니어링 역할의 연속성

- 데이터 과학자와 유사하게 데이터 엔지니어도 두 가지 유형으로 구분해 볼 것이다.

 

① A형 데이터 엔지니어

  • A는 추상화를 의미하고, 데이터 아키텍처를 추상적이고 단순하게 유지하며, 과중한 작업을 피한다.
  • 시판되는 기성 제품, 관리형 서비스, 도구를 사용해 데이터 엔지니어링 수명 주기를 관리한다,
  • 데이터 성숙도 수준에 상관없이 다양한 회사에서 근무한다.

② B형 데이터 엔지니어

  • B는 구축을 의미하고, 데이터 도구와 시스템을 맞춤형으로 구축하여 기업의 핵심 역량과 경쟁 우위를 강화한다.
  • 데이터 성숙도가 높은 2단계 및 3단계에서 활동하거나, 독특하고 중요한 데이터 사용 사례에 맞는 맞춤형 도구가 필요한 회사에서 찾아볼 수 있다.

 

1.3 조직 내 데이터 엔지니어

1.3.1 내부 vs 외부 대면 데이터 엔지니어

 

  • 외부 대면 데이터 엔지니어:
    • 소셜 미디어 앱, IoT 기기, 전자 상거래 플랫폼 등 외부 애플리케이션의 사용자와 관련된 데이터를 처리한다.
    • 트랜잭션 및 이벤트 데이터를 수집, 저장, 처리하는 시스템을 설계하고 관리한다.
    • 데이터 엔지니어가 구축한 시스템에는 외부 사용자가 사용하는 애플리케이션에서  데이터 파이프라인으로, 그리고 다시 애플리케이션으로 향하는 피드백 루프가 있다.
    • 외부 시스템은 내부 시스템에 비해 동시성 부하가 크며, 쿼리에 대한 엄격한 제한이 필요하고 보안 문제도 더욱 복잡하다.
  • 내부 대면 데이터 엔지니어:
    • 주로 비즈니스 및 내부 이해관계자를 위한 활동에 집중한다.
    • BI 대시보드, 보고서, 데이터 과학 모델 등을 위한 데이터 파이프라인과 데이터 웨어하우스를 구축하고 유지한다.

 

1.3.2 데이터 엔지니어와 기타 기술 역할

  • 업스트림 데이터 생산자: 데이터 아키텍트,  소프트웨어 엔지니어, 데브옵스 엔지니어와 사이트 신뢰성 엔지니어

※ 업스트림: 데이터가 생산되는 초기 단계 또는 원천

 

1. 데이터 아키텍트

  • 조직의 데이터 관리 청사진을 설계하고 전체 데이터 아키텍처와 시스템을 매핑한다.
  • 기술적 측면과 비기술적 측면을 연결하는 가교 역할을 한다.
  • 사일로 및 사업부 전반에 걸친 데이터 관리 정책데이터 거버넌스와 같은 글로벌 전략을 조율한다.
  • 클라우드 마이그레이션 및 신규 클라우드 설계에서 중요한 역할을 수행한다.

* 사일로: 부서나 팀이 독립적으로 작업하며, 중요한 정보와 자원이 다른 부서와 공유되지 않는 상태

 

2. 소프트웨어 엔지니어

  •  비즈니스 운영을 위한 소프트웨어와 시스템을 구축하며, 데이터 엔지니어가 처리하는 내부 데이터를 생성하는 중요한 역할을 맡는다.
  • 소프트웨어 엔지니어가 만든 시스템은 애플리케이션 이벤트 데이터와 로그를 생성하며, 이는 분석 및 ML 애플리케이션에서 활용된다.
  • 소프트웨어 엔지니어는 내부 데이터를 생성하고, 이 데이터는 외부 데이터(SaaS 플랫폼 등)와 대조된다.
  • 새로운 프로젝트 초기 단계부터 데이터 엔지니어와 협업하여 애플리케이션 데이터를 설계한다.

3. 데브옵스 엔지니어와 사이트 신뢰성 엔지니어

  • 업스트림으로 분류할 수도 있고, 데이터를 소비하거나 데이터 시스템 운영을 조정할 때는 다운 스트림으로 분류할 수 있다.

(추가적으로 찾은 정보)

  • 데브옵스 엔지니어는 개발과 운영 팀 간의 협업을 촉진하고, 소프트웨어 개발과 배포 프로세스를 자동화하여 효율성을 높이는 역할을 한다.
  • 사이트 신뢰성 엔지니어(SRE)는 시스템의 신뢰성과 안정성을 보장하는 데 중점을 두고, 데이터 기반의 성과 분석과 자동화를 통해 안정적인 서비스를 제공하는 역할을 한다.

 

  • 다운스트림 데이터 소비자: 데이터 과학자, 데이터 분석가, 머신러닝 엔지니어

다운스트림: 데이터가 처리되고 분석되는 후속단계 또는 최종목적지

 

1. 데이터 과학자

  •  미래 예측 및 추천 모델을 구축하고 실시간 데이터를 통해 모델을 평가하여 가치를 제공한다. 예를 들어, 고객에게 실시간 제품 추천을 하거나 경제 예측을 통해 트레이더를 지원하는 등의 작업을 한다.
  • 데이터 과학자는 데이터 수집, 정제, 준비에 많은 시간을 할애한다(업무 시간의 70~80%). 이 문제는 적절히 확장되지 않은 데이터 과학 프레임워크나 비효율적인 데이터 준비 과정 때문이다. 로컬에서 개발된 코드나 환경은 운영 환경으로 배포하기 어렵고, 자동화 부족으로 인해 워크플로가 방해받기도 한다.
  • 데이터 엔지니어는 데이터를 수집하고 정제하는 과정을 자동화하여, 데이터 과학자가 데이터 준비에 시간을 낭비하지 않도록 도와야 한다.

 

2. 데이터 분석가

  • 데이터 분석가는 비즈니스 성과와 동향을 분석하기 위해 과거와 현재에 초점을 맞추어 데이터를 다룬다.
  • SQL 쿼리를 사용하여 데이터 웨어하우스나 데이터 레이크에서 데이터를 추출하고, 스프레드시트와 BI 도구(예: Power BI, Looker, Tableau) 등을 활용해 분석한다.
  • 데이터 엔지니어는 데이터 분석가와 협력해 비즈니스에 필요한 새로운 데이터 파이프라인을 구축하며, 데이터 분석가의 주제 전문 지식을 활용해 데이터 품질을 개선하는데 유용한다.

3, 머신러닝 엔지니어와 인공지능 연구원

머신러닝 엔지니어

  • 머신러닝 엔지니어는 고급 머신러닝(ML) 기술을 개발하고, 모델을 훈련하며, 운영 환경에서 ML 프로세스를 실행하는 인프라를 설계하고 유지 관리한다.
  • 머신러닝 엔지니어는 모델 훈련과 배포를 위해 필요한 하드웨어, 서비스, 시스템을 이해한다.

인공지능 연구원

  • 새롭고 진보된 ML 기술을 연구한다

1.3.3 데이터 엔지니어와 비즈니스 리더십

- 데이터가 핵심적인 가치로 진화하면서, 데이터 엔지니어는 전략적 계획에 참여하고 IT의 경계를 넘어서는 주요 이니셔티브를 주도한다.

 

최고 경영진의 데이터

  • 최고 경영자(CEO)
    • 데이터 엔지니어와 협력해 데이터의 가능성과 활용 방안을 제시한다.
    • 데이터 엔지니어와 그들의 관리자는 조직에서 데이터 사용에 관한 맵을 유지 관리하며, 어떤 데이터가 언제까지 사용 가능한지 파악한다.

 

  • 최고 정보 책임자(CIO)
    • 조직 내에서 정보기술을 담당하는 시니어 최고 채임자로, 내부 대면의 역할을 담당한다.엔지니어 및 아키텍트와 협력하여 주요 IT 이니셔티브를 수립하고, 전사적 자원 관리(ERP) 시스템, 고객 관계 관리(CRM)과 같은 주요 요소를 채택하기 위한 전략적 결정을 내린다.
    • IT 조직을 지휘하고, CEO의 지시에 따라 중요한 이니셔티브를 정의하고 실행하는 동시에 지속적인 정책을 수립한다.

 

  • 최고 기술 책임자(CTO)
    • 모바일, 웹 애플리케이션, 사물 인터넷(IoT) 등 외부 애플리케이션에 관한 기술 전략과 아키텍처를 보유한다.
    • CTO는 숙련된 기술자일 가능성이 높고, 소프트웨어 엔지니어링의 기초와 시스템 아키텍처에 대한 감각이 뛰어나다.

 

  • 최고 데이터 책임자(CDO)
    • 기업의 데이터 자산과 전략을 담당하고 데이터의 비즈니스 유틸리티에 중점을 두지만, 강력한 기술적인 전문성이 필요하다.
    • 데이터 제품, 전략, 프로젝트 및 마스터 데이터 관리나 개인정보보호와 같은 핵심 기능을 감독한다.

 

  • 최고 분석 책임자(CAO)
    • CDO의 역할의 변형으로 CDO가 데이터 제공에 필요한 기술과 조직에 초점을 맞춘다면, CAO는 비즈니스 분석, 전략 및 의사결정을 담당한다.

 

  • 최고 알고리즘 책임자(CAO-2)
    • 최고 경영진의 최근 혁신 직책으로, 데이터 과학과 ML에 초점을 맞춘 고도의 기술적 역할을 담당한다.
    • 최신 ML 연구에 동향과 혁신을 잘 알고 있어야 하고 회사의 ML 프로젝트에 관한 깊은 기술적 지식이 있어야 한다.

 

  • 데이터 엔지니어 및 프로젝트 매니저
    • 데이터 엔지니어는 인프라와 서비스 제공 능력에서 역할을 발휘하지만, 프로젝트 매니저는 프로젝트의 전반적인 진행 상황을 총괄하고, 게이트 키퍼 역할을 수행한다.
    • 프로젝트 매니저는 애자일과 스크럼에서 운영하며 가끔은 워터풀 방식에서 나타나고 수많은 요청 목록을 필터링하고, 중요한 성과물에 우선순위를 부여하여 프로젝트를 원활히 진행시킨다.
    • 데이터 엔지니어는 프로젝트 매니저와 협력하여 프로젝트를 위한 스프린트를 계획하고 후속 스탠드업(계획을 공유하는 간단한 회의)을 수행한다.
    • 데이터 엔지니어는 프로젝트 매니저 및 기타 이해관계자에게 진척 상황과 장애 요인을 알리고, 프로젝트 매니저는 끊임없이 변화하는 비즈니스 요구 사항에 맞춰 기술 팀의 전체적인 속도를 조정한다.

애자일: 소프트웨어 개발의 접근 방식으로, 반복적이고 점진적인 작업 방식

※ 스프린트(Sprint): 애자일 방법론에서 사용하는 용어로, 일정 기간 동안 특정 목표를 달성하기 위해 집중적으로 작업하는 기간

 

  • 데이터 엔지니어와 제품 관리자
    • 데이터 중심의 기업 관점에서 데이터 엔지니어와 제품 관리자의 협업은 더욱 빈번하게 이뤄진다. 데이터 엔지니어의 관점에서는 데이터 제품이라고 하며 데이터 제품은 처음부터 새로 구축되거나 기존 제품에서 점진적으로 개선된다.
    • 제품 관리자는 기술팀의 활동과 고객 및 비즈니스의 요구를 균형 있게 조정한다.

 

  • 데이터 엔지니어와 기타 관리 역할
    • 데이터 엔지니어는 프로젝트 관리자와 제품 관리자 외에도 다양한 매니저와 서비스 또는 교차 기능 모델에 따라 상호 작용한다.

 

1.4 결론

- 1장에서는 데이터 엔지니어링 환경의 개요를 다음과 같이 간략히 설명했다

  • 데이터 엔지니어링의 정의와 데이터 엔지니어가 하는 일
  • 기업의 데이터 성숙도 유형
  • A형과 B형 데이터 엔지니어
  • 데이터 엔지니어가 함께 협업하는 대상

 

퀴즈

문제 1. 다음 중 외부 대면 데이터 엔지니어가 주로 고려해야 할 문제가 아닌 것은 무엇일까요?

① 높은 동시성 부하를 처리하기 위한 시스템 설계
② 멀티테넌트 데이터의 보안을 강화하기 위한 조치
③ BI 대시보드용 데이터 파이프라인 설계
④ 사용자 쿼리에 대한 제한을 두어 인프라 안정성 유지

 

문제 2. 데이터 엔지니어는 데이터 과학자가 데이터를 수집하고 준비하는데 드는 시간을 줄이기 위해 어떤 역할을 해야 하나요?

① 머신러닝 알고리즘을 작성한다.

② 데이터를 자동으로 정제하고 준비하는 시스템을 구축한다.

③ 데이터 과학자가 직접 쓸 수 있는 데이터베이스를 관리한다.

④ 데이터 시각화 도구를 만든다.

 

문제 3. 모바일 및 IoT 플랫폼과 같은 외부 애플리케이션의 기술 전략을 담당하는 최고 리더십 직책은 무엇인가요?

①  최고 데이터 책임자(CDO)

② 최고 기술 책임자(CTO)

③  최고 정보 책임자(CIO)

④  최고 분석 책임자(CAO)

 

 

정답

 

1. ③ BI 대시보드용 데이터 파이프라인 설계

설명: 비즈니스 인텔리전스(BI) 대시보드용 데이터 파이프라인 설계는 내부 대면 데이터 엔지니어의 주된 업무로, 내부 분석 및 보고를 지원합니다.

 

2. ② 데이터를 자동으로 정제하고 준비하는 시스템을 구축한다.

설명: 데이터 엔지니어는 데이터 과학자가 데이터 준비에 많은 시간을 낭비하지 않도록 데이터를 자동으로 정제하고 준비하는 파이프라인을 구축하는 역할을 합니다. 데이터 준비 작업을 자동화하면 데이터 과학자가 모델링과 분석에 더 집중할 수 있으며, 워크플로의 효율성을 크게 향상시킬 수 있습니다.

 

3. ② 최고 기술 책임자(CTO)

설명: 최고 기술 책임자(CTO)는 외부 애플리케이션(예: 모바일, IoT)의 기술 전략과 아키텍처를 총괄하는 리더십 직책입니다.