데이터 엔지니어링 기초

이번 섹션은 AWS 서비스 자체보다는 데이터 엔지니어링의 기초 개념에 초점을 둡니다.
시험 가이드에서도 AWS 서비스뿐 아니라 데이터 관련 기본 개념을 알아야 한다고 명시되어 있습니다.


1. 데이터의 세 가지 유형

① 구조화 데이터 (Structured Data)

  • 정의: 미리 정의된 스키마(열, 자료형 등)에 맞춰 정리된 데이터
  • 특징: SQL로 쉽게 질의 가능, 행/열 구조로 일관성 있음
  • 예시:
    • 관계형 데이터베이스 (MySQL, PostgreSQL, Amazon RDS, Amazon Redshift)
    • 잘 정리된 CSV 파일
    • 전형적인 엑셀 시트

👉 시험 포인트: RDB vs 데이터 레이크 차이를 구분해야 함. Redshift(OLAP)와 S3 기반 데이터 레이크 차이를 물을 수 있음.


② 비구조화 데이터 (Unstructured Data)

  • 정의: 스키마가 없거나 일정하지 않은 데이터
  • 특징: 바로 질의할 수 없음. 전처리/메타데이터 추출 필요
  • 예시:
    • 텍스트 문서 (위키 문서, 전자책 등)
    • 오디오, 동영상, 이미지 파일
    • 이메일, 워드 문서

👉 시험 포인트: 이미지/영상/텍스트 → Amazon Rekognition, Transcribe, Comprehend 같은 서비스 활용.


③ 반구조화 데이터 (Semi-structured Data)

  • 정의: 완전한 스키마는 없지만, 태그/계층 구조 등 일부 구조적 특징 존재
  • 예시:
    • JSON, XML
    • 로그 파일 (웹 서버 로그, 애플리케이션 로그 등)
    • 이메일 헤더

👉 시험 포인트: JSON/로그 → Amazon Athena, Glue, OpenSearch로 쿼리 가능.


2. 데이터의 특성 – 3V (시험 중요!)

AWS 시험에서 자주 등장하는 개념: 데이터의 3V
(Volume, Velocity, Variety)

① Volume (데이터 양)

  • 정의: 데이터의 크기
  • 예시:
    • SNS → 하루 수 TB 이상
    • 대형 리테일러 → 수년간 거래 기록 수 PB
  • AWS 관련 서비스:
    • 대용량 마이그레이션 → Snowball, Snowmobile
    • 스토리지 → Amazon S3, EFS, FSx

② Velocity (데이터 생성/처리 속도)

  • 정의: 데이터가 생성/수집/처리되는 속도
  • 예시:
    • IoT 센서 → 매 ms 단위 데이터 스트리밍
    • 주식 고빈도 거래(HFT) → 실시간 처리 필수
  • AWS 관련 서비스:
    • 실시간 스트리밍 → Kinesis Data Streams
    • 근실시간(near real-time) 배치 → Kinesis Firehose, AWS Glue streaming ETL

👉 시험 포인트: “실시간(real-time)” vs “근실시간(near real-time)” 서비스 구분 문제 자주 나옴.


③ Variety (데이터 다양성)

  • 정의: 데이터의 형태와 출처의 다양성
  • 예시:
    • 구조화: 관계형 DB (RDS, Redshift)
    • 반구조화: JSON 로그 (CloudTrail 로그 등)
    • 비구조화: 환자 피드백 텍스트, 의료 영상
  • AWS 관련 서비스:
    • 다양한 포맷 저장/분석 → Lake Formation, Glue, Athena

3. 추가로 알아두면 좋은 개념

  • Veracity (진실성, 정확성)

    • 공식 시험 가이드엔 없지만, 데이터의 신뢰성과 품질을 뜻함.
    • AWS Glue DataBrew, SageMaker Data Wrangler를 통해 데이터 정제 가능.
  • 데이터 품질 관리

    • Completeness(완전성), Accuracy(정확성), Consistency(일관성) 등은 시험에서 자주 출제.
  • 로그와 반구조화 데이터 처리

    • CloudWatch Logs + Athena로 쿼리
    • OpenSearch로 검색 및 분석

정리 (시험 대비 포인트)

  • 세 가지 데이터 유형

    • Structured (SQL 질의 가능)
    • Semi-structured (JSON/로그, 일부 구조)
    • Unstructured (텍스트/영상/오디오, 전처리 필요)
  • 데이터의 3V

    • Volume → 크기 (S3, Snowball)
    • Velocity → 속도 (Kinesis, Firehose)
    • Variety → 다양성 (RDS, S3, Glue, Athena 등)
  • 시험에서 잘 나오는 부분

    • Kinesis Data Streams vs Firehose 차이
    • Snowball vs Snowmobile 선택 기준
    • 데이터 레이크 vs 데이터 웨어하우스 (S3 + Athena vs Redshift)
    • Glue / Data Wrangler / EMR 비교

👉 이 섹션은 AWS 서비스 자체보다는 데이터 엔지니어링 기초 개념을 AWS 환경에 어떻게 적용하는지 묻는 문제가 출제될 가능성이 큽니다.