엔지니어링 업무의 가장 기본은 데이터를 수집하고, 가공 및 적재를 통해 데이터 서비스를 제공하는 일련의 과정이며, 이러한 파이프라인을 잘 구성하고 제공하는 것입니다. 특히 대용량 데이터를 처리하는 분산 시스템의 경우 레거시 시스템의 정보를 분산 저장소에 어떻게 저장할 수 있으며, 한 번 저장된 데이터를 정재 및 가공을 통해서 지표 혹은 2차 3차 가공 데이터를 추출하는 방법 그리고 다양한 데이터 제품을 개발하고 이러한 데이터를 다수의 사용자가 읽고 재가공할 수 있도록 저장 및 조회 시스템을 구성하는 것이 아주 중요합니다. 이러한 일련의 데이터 파이프라인 구성에 필요한 기본적인 하둡 에코시스템에 대해 이해하고 실습을 통해서 학습하는 것이 이번 과정의 목표입니다
- 기업 내외에서 발생하는 다양한 형태의 데이터를 수집, 변환 및 적재를 위한 다양한 기술을 연구하고 이러한 작업을 좀 더 자동화 할 수 있는 서비스와 플랫폼을 개발하는 업무를 하고 있습니다
- 데이터 엔지니어링에서 사용하는 기본적인 수집, 변환 및 적재 도구를 경험함으로써 데이터 처리에 대한 기본적인 개념을 학습합니다
- 관계형 데이터베이스의 수집은 아파치 스쿱, 데이터 변환을 위한 프레임워크는 아파치 스파크가 산업표준이라고 할 수 있을만큼 널리 활용됩니다
- 적재 및 서빙 레이어의 경우는 제공 서비스의 특성에 따라 다양한 오픈소스가 존재하지만, 표준 SQL에 가장 근접한 지원과 안정적인 하이브를 통해 데이터웨어하우스의 기초에 대해 학습합니다
- 특정 시점의 데이터 분석과 지표 생성을 위한 데이터 수집, 변환 그리고 적재 오픈소스 인프라에 대해 학습합니다
- 기본적인 사용방법에 대한 학습 뿐만 아니라 개별 컴포넌트들의 동작방식과, 배경지식을 통해 보다 깊은 이해를 할 수 있습니다
- Docker Compose, Apache Sqoop, Spark, Hive 등의 오픈소스 실습 예제를 통해 학습합니다
- 데이터 엔지니어링 업무 수행을 위한 기본 기술을 익히고자 하는 분
- 어느 정도 전산지식만 있다면 적응은 가능하지만, 데이터베이스, 하둡 및 리눅스 시스템에 대한 기본적인 이해가 있어야 원활한 학습이 가능합니다
- 스파크의 경우 스칼라, 파이썬, R 등 다양한 언어를 지원하므로 이 가운데 하나 이상은 익숙한 프로그래밍 언어가 필요합니다
- 데이터 엔지니어링 기본 : 데이터 웨어하우스 및 데이터 엔지니어링에 대한 기본적인 이해 그리고 학습에서 활용할 도커 및 컴포즈 도구를 실습합니다
- 아파치 스쿱 : 데이터 수집에 대한 관련 도구 이해 그리고 아파치 스쿱의 동작방식과 실습을 통해 다양한 방식의 테이블 수집을 실습합니다
- 아파치 스파크 : 데이터 변환의 전반에 대한 이해 그리고 아파치 스파크의 내부 동작방식 및 실습 예제를 통해 스파크 프레임워크에 대해 학습합니다
- 아파치 하이브 : 아파치 하이브 서비스의 이해 및 데이터베이스, 테이블 생성 등의 DDL 부터 데이터의 변환 조회를 위한 DML에 까지 실습합니다
- 지표 생성 프로젝트 : 데이터 수집, 변환 그리고 적재에 까지 학습했던 도구를 활용하여 가상의 서비스에 대한 지표를 생성하는 프로젝트를 실습합니다
- 이번 과정을 통해서 데이터 엔지니어링 도구들에 대해 조금 더 빨리 적응할 수 있으셨으면 좋겠고, 과제를 수행하는 데에 조금이나마 도움이 되었으면 합니다