현수IT - Delta Lake, 이 영상 하나면 끝납니다! 🔥 영상의 핵심 내용을 요약하여 표로 정리해 드립니다.
1. 데이터 저장소 비교 (Data Lake vs Data Warehouse)
| 대표 서비스 | AWS S3, Google Cloud Storage, Azure ADLS | Google BigQuery, AWS Redshift, Snowflake |
| 저장 포맷 | 파켓(Parquet), JSON, CSV 등 (비정형/정형 모두 가능) | 정형화된 테이블 형태 |
| 장점 | • 대용량 데이터를 저렴하게 저장 가능 • 다양한 형태의 원천 데이터 수용 가능 |
• 관리가 쉽고 데이터 분석/시각화 연동 용이 • ACID 특성 보장 (업데이트/딜리트 등 안전) |
| 단점 | • 데이터 수정(Update/Delete) 및 동시성 대응 어려움 • 롤백 및 스키마 품질 관리 어려움 |
• 대용량 저장 시 요금이 상대적으로 비쌈 • 비정형 데이터(이미지, 텍스트 등) 다루기 어려움 • 벤더 락인(Vendor Lock-in) 강함 |
2. 오픈 테이블 포맷 (Open Table Format)
- 개념: 파켓 파일 형식으로 관리되는 데이터 위에 메타데이터 레이어(로그 파일 등)를 얹어 데이터 레이크의 저렴함과 데이터 웨어하우스의 안전한 관리 기능(ACID)을 동시에 챙기는 기술
- 대표 종류:
- Apache Iceberg (넷플릭스 개발)
- Delta Lake (데이터브릭스 개발) — 본 영상의 메인 실습 주제
- Apache Hudi (우버 개발)
3. 델타 레이크(Delta Lake) 주요 명령어 및 특징
| 기본 구조 | 물리적 데이터(Parquet 파일) + 변경 이력을 기록하는 메타데이터 디렉토리(_delta_log) |
| DESCRIBE HISTORY | 테이블 생성, 수정, 삭제 등의 버전별 변경 이력(Version, Timestamp, Operation 등) 조회 |
| Time Travel (VERSION AS OF / TIMESTAMP AS OF) | 특정 버전이나 시점의 데이터로 돌아가 과거 데이터 조회 가능 |
| RESTORE TABLE | 특정 과거 버전의 상태를 최신 상태로 복원 (기존 버전이 삭제되는 것이 아니라 새로운 버전으로 추가됨) |
| OPTIMIZE | 잦은 수정·삽입으로 인해 잘게 쪼개진 작은 파켓 파일들을 큰 파일(기본 128MB 단위 등)로 병합하여 읽기 성능 향상 |
| VACUUM | 더 이상 참조되지 않는 오래된 미사용 물리 파일을 영구 삭제 (※ 주의: 실행 시점 이전의 Time Travel/복원이 불가능해짐) |
현수IT - 데이터 엔지니어 기초 완전 정리! Part 1 영상의 핵심 개념과 주요 용어들을 표로 정리해 드립니다.
1. 데이터 저장소 및 관리 관련 용어
| 용어 | 개념 및 설명 | 비유 / 예시 |
| 데이터 레이크 (Data Lake) |
정형·비정형(이미지, 로그, 오디오 등) 대규모 데이터를 가공 없이 그대로 보관하는 저장소 | 온갖 카테고리의 책이 뒤섞여 있는 헌책방 |
| 데이터 웨어하우스 (Data Warehouse) |
전사 부서의 의사 결정을 위해 정형화된 데이터를 중앙에서 관리하고 저장하는 저장소 | 카테고리별로 서가에 깔끔하게 꽂혀 있는 도서관 |
| 데이터 마트 (Data Mart) |
데이터 웨어하우스에서 특정 부서(마케팅, 인사 등)나 목적에 맞게 추출·구축한 소규모 데이터 저장소 | 내 서재에 특정 주제(예: 서양 미술) 책들만 모아둔 책장 |
| 데이터 거버넌스 (Data Governance) |
조직 내 데이터를 안전하고 효율적으로 관리하기 위한 정책, 절차, 권한 등의 관리 체계 | 도서관의 대여 지침, 운영 시간, 접근 권한 관리 |
| 메타데이터 (Metadata) |
데이터에 대한 정보 (데이터를 설명해 주는 데이터) | 사진 파일 위로 스와이프했을 때 나오는 촬영 정보, 테이블의 컬럼 정의서 |
2. 데이터 처리 및 인프라 관련 용어
| 용어 | 개념 및 설명 | 주요 특징 및 구분 |
| 배치 vs 스트리밍 | • 배치(Batch): 많은 양의 데이터를 정해진 시간에 일괄 처리 • 스트리밍(Streaming): 실시간으로 들어오는 데이터를 즉각적으로 처리 |
• 배치: 일일/월간 리포트 생성 • 스트리밍: 실시간 피드백 및 동영상 송출 (난이도가 더 높음) |
| 온프레미스 vs 클라우드 | • 온프레미스(On-Premise): 물리적 서버를 직접 설치·운영 • 클라우드(Cloud): 원격 데이터 센터의 인프라를 빌려서 사용 (AWS, GCP 등) |
• 온프레미스: 내 눈에 보이는 데스크탑, 노트북 등 • 클라우드: 인터넷을 통한 원격 접속 |
| 데이터 파이프라인 | 데이터의 시작점(원천)부터 목적지까지 안전하고 신뢰성 있게 이동 및 전달하는 일련의 과정 | 수도관에 물이 흐르듯 데이터가 흐르도록 연결하는 통로 |
| ETL vs ELT | • ETL: 추출(Extract) ➔ 변환(Transform) ➔ 적재(Load) • ELT: 추출(Extract) ➔ 적재(Load) ➔ 변환(Transform) |
• ETL: 고품질 데이터 저장, 변환 시 시간 소요 • ELT: 빠른 적재 및 유연성 확보 (빅데이터 환경에 적합) |
3. 시스템 및 파일 포맷 관련 용어
| 용어 | 개념 및 설명 | 주요 특징 및 구분 |
| OLTP vs OLAP | • OLTP: 실시간 트랜잭션 처리(입력·수정·삭제) 최적화 시스템 • OLAP: 데이터 분석 및 인사이트 도출 최적화 시스템 |
• OLTP: 회원가입, 정보 수정 (빠른 속도·무결성 중요) • OLAP: 1년간 트렌드 분석 (SELECT 위주, 복잡한 쿼리) |
| 행지향 vs 열지향 포맷 | • 행지향 포맷: 데이터를 행 단위로 저장 • 열지향 포맷: 데이터를 열(컬럼) 단위로 저장 |
• 행지향: OLTP 및 트랜잭션 처리에 유리 (CSV, JSON 등) • 열지향: 대용량 데이터 분석 및 쿼리 속도에 유리 (Parquet, ORC 등) |
| 파켓 (Parquet) | 빅데이터 환경(스파크 등)에서 가장 널리 쓰이는 대표적인 열지향 파일 포맷 | • 컬럼 단위 압축으로 최대 80% 용량 절감 • 스키마 타입(메타데이터) 유지 기능 제공 |
| 파티셔닝 (Partitioning) | 대용량 데이터셋을 특정 기준(예: 날짜)에 따라 물리적·논리적으로 분할하여 관리하는 기법 | 1억 건이 넘는 데이터에서 특정 날짜 영역만 빠르게 조회(풀스캔 방지)하여 성능 최적화 |
|
|
현수IT - 데이터 엔지니어 기초 완전 정리! Part 2 영상의 핵심 내용을 표로 정리해 드립니다.
1. 데이터 엔지니어의 핵심 역할 (R&R)
| 역할 구분 | 주요 내용 |
| 인프라 및 파이프라인 구축·운영 | 데이터가 원활하게 이동하고 처리될 수 있도록 관련 인프라와 데이터 파이프라인을 설계, 구축, 운영, 유지보수 |
| ETL 개발 | 소비자의 니즈(조인, 마스터 테이블 생성 등)에 맞춰 데이터를 가공하고 변환하는 스크립트 개발 |
| 데이터 관리 및 모니터링 | 유입되는 데이터와 저장된 데이터의 신뢰성을 유지하고, 데이터 거버넌스 적용 및 파이프라인 모니터링 수행 |
| 적합한 아키텍처 및 툴 선정 | 회사의 비용, 기술 수준, 인프라 환경 등을 고려하여 가장 효율적인 도구(AWS, 스파크, 에어플로우 등)를 조합하여 아키텍처 구성 |
2. 데이터 직무 비교 (엔지니어 vs 분석가 vs 과학자)
| 구분 | 데이터 엔지니어 (Data Engineer) | 데이터 분석가 (Data Analyst) | 데이터 과학자 (Data Scientist) |
| :--- | :--- | :--- |
| 핵심 목적 | 대규모 데이터를 처리하는 인프라 및 파이프라인 설계 | 데이터 분석 및 인사이트 도출, 비즈니스 의사결정 지원 | 머신러닝·딥러닝 모델 개발 및 복잡한 비즈니스 문제 해결 |
| 주요 업무 | • 파이프라인 개발
• 데이터 웨어하우스 설계
• 데이터 정합성·퀄리티 체크 | • 리포트 작성 및 시각화 대시보드 구축
• A/B 테스트, 지표 분석 (MAU/DAU 등) | • 통계적 분석
• ML/DL 모델 개발 및 성능 평가/배포 |
| 주요 도구 | Python, SQL, Airflow, Spark, Kafka | Excel, SQL, Tableau, Looker | Python, SQL, PyTorch, TensorFlow, MLflow |
| 다루는 데이터 형태 | 원천 데이터, 로그, API (정형·비정형 섞인 더러운 데이터) | 주로 1차 정제된 정형 데이터 | 주로 정제된 데이터 (필요시 자연어 등 비정형 데이터 포함) |
3. 주요 데이터 엔지니어링 워크플로우 사례
| 워크플로우 유형 | 주요 처리 흐름 및 내용 |
| 1. 대용량 데이터 분석 및 시각화 | 몽고DB(비정형) ➔ Apache Spark(정형화) ➔ RDB ➔ BI 도구 시각화 (일일 배치) |
| 2. 주기적인 데이터 아카이빙 | 포스트레SQL ➔ Python ➔ 기간별 판별(5년 미만은 GCS 이동, 5년 이상은 삭제) (월간 배치) |
| 3. 수집을 통한 ETL 프로세스 | 웹 크롤링/API 수집 ➔ Pandas DataFrame ➔ GCS / BigQuery / S3 적재 및 분석 |
| 4. 실시간 데이터 처리 | 쇼핑몰 유저 행동 데이터 ➔ Apache Kafka(실시간 수집) ➔ Apache Flink(실시간 처리) ➔ Redis ➔ 실시간 추천 AI 모델 업데이트 |
| 5. 실시간 모니터링 시스템 | 금융 거래 데이터 ➔ RabbitMQ(실시간 수집) ➔ Spark Streaming(처리) ➔ Elasticsearch(저장 및 검색) ➔ 이상 감지 알림 |
|
|
[장표 반영] 데이터 직무 비교 (데이터 엔지니어 vs 분석가 vs 과학자)
| 구분 | 데이터 엔지니어 (Data Engineer) | 데이터 분석가 (Data Analyst) | 데이터 과학자 (Data Scientist) |
| 핵심 역할 | 대규모 데이터를 처리할 수 있는 데이터 인프라와 파이프라인 설계, 구축, 유지 및 관리 역할 | 데이터를 분석하여 유의미한 인사이트를 도출하고, 이를 바탕으로 비즈니스 의사결정을 지원하는 역할 | 데이터를 분석하고 예측 모델을 개발하여 복잡한 비즈니스 문제를 해결 |
| 주요 업무 | • ETL/ELT 파이프라인 개발 • 데이터 웨어하우스 설계 및 관리 • 데이터 정합성 및 품질 관리 |
• 리포트 작성 및 시각화 대시보드 제작 • 탐색적 데이터 & 비즈니스 성과 분석 • 데이터 파이프라인 개발 |
• 데이터 기반 통계적 분석 • 머신러닝/딥러닝 모델링 • 모델 성능 평가 및 배포 |
| 주요 도구 | SQL, Python, Airflow, Spark, Kafka, Cloud, Kubernetes 등 | SQL, Python, Cloud, Excel, Tableau, Power BI, Looker, Docker 등 | Python, SQL, Cloud, TensorFlow, PyTorch, ML/DL 관리 도구 등 |
| 데이터의 형태 | 원천 데이터, 로그, API 등 데이터 형태가 다양 | 정제된 정형 데이터 (테이블) | 정제된 정형 데이터(테이블), 자연어 등 비정형 데이터 |
| 산출물 (Output) | 데이터 레이크/웨어하우스, 파이프라인, API, 자동화 시스템 | 리포트, 대시보드, 지표 정의 문서, 인사이트 요약 | 모델, 알고리즘, 예측 결과, 실험 리포트 등 |

Rss Feed