Brain
Science
root
/
학습 노트
/
Study Note
/
14: 데이터 엔지니어링 (Data Engineering)
/
1. 데이터 인프라 및 수집 아키텍처
1. 데이터 인프라 및 수집 아키텍처
1. 빅데이터 3V / 5V - 볼륨(Volume), 속도(Velocity), 다양성(Variety), + 진실성(Veracity), 가치(Value)
2024-05-24
2. 정형 데이터 (Structured Data) - RDBMS 테이블 같이 엄격한 스키마 구조 보유
2024-05-24
3. 반정형 데이터 (Semi-structured Data) - 데이터 내부(태그)에 구조(메타데이터)를 포함 (XML, JSON, 로그)
2024-05-24
4. 비정형 데이터 (Unstructured Data) - 스키마가 없는 텍스트, 음성, 비디오, 이미지 데이터
2024-05-24
5. 데이터 웨어하우스 (DW, Data Warehouse) - 전사적 관점의 비즈니스 인텔리전스(BI)를 위한 통합/주제별/시계열 데이터 저장소 (Inmon 모델)
2024-05-24
6. 데이터 마트 (Data Mart) - 부서별(영업, 재무 등) 필요에 맞춘 소규모 분석 DB (Kimball 모델)
2024-05-15
7. 데이터 레이크 (Data Lake) - 하둡/S3 등 저렴한 스토리지에 원시(Raw) 형태의 모든 비정형/정형 데이터를 구조화 없이 무한 저장
2024-05-15
8. 데이터 레이크하우스 (Data Lakehouse) - 데이터 레이크의 유연성/저비용과 DW의 ACID 트랜잭션, SQL 성능을 단일 계층에 결합한 현대 아키텍처 (Databricks, Snowflake)
2024-05-15
9. 스키마 온 리드 (Schema-on-Read) - 저장 시엔 원시 그대로 두고, 쿼리(읽기)할 때 스키마를 동적으로 부여 (데이터 레이크)
2024-05-15
10. 스키마 온 라이트 (Schema-on-Write) - 저장 전 정규화/ETL을 통해 스키마에 맞게 정제 (DW)
2024-05-15
11. 분산 컴퓨팅 스케일 아웃 (Scale-out) - 저가형 범용 x86 서버(Commodity Hardware) 대수를 늘려 성능 무한 확장
2023-10-24
12. 아파치 하둡 (Apache Hadoop) - 대용량 데이터 분산 저장 및 병렬 처리 자바 오픈소스 프레임워크
2023-10-24
13. HDFS (Hadoop Distributed File System) - 거대 파일을 기본 128MB 블록 단위로 쪼개 수많은 데이터노드에 분산 저장
2023-10-24
14. 네임노드 (NameNode) - 파일 디렉터리, 블록 맵핑 메타데이터 관리 마스터 노드 (SPOF 존재)
2023-10-24
15. 데이터노드 (DataNode) - 실제 데이터를 보관하는 수많은 워커 노드
2023-10-24
16. 복제 (Replication) 계수 3 - 하드웨어 장애(고장)에 대비해 동일 블록을 서로 다른 랙(Rack) 서버에 3벌 복사하여 결함 허용(Fault Tolerance) 달성
2025-01-01
17. 랙 인지 (Rack Awareness) 알고리즘 - 데이터 복제 시 물리적으로 동일한 스위치 전원을 공유하는 랙에 전부 넣지 않고 분산 배치
2025-01-01
18. 맵리듀스 (MapReduce) - 디스크 I/O 기반 분산 병렬 연산 프레임워크 (Map: 매핑/필터링 -> Shuffle: 데이터 섞기 -> Reduce: 집계합산)
2025-01-01
19. 데이터 지역성 (Data Locality) - 연산 코드를 데이터가 이미 존재하는 노드로 전송하여 네트워크 전송 오버헤드 최소화 (연산 이동이 데이터 이동보다 싸다)
2025-01-01
20. YARN (Yet Another Resource Negotiator) - 하둡 2.0 클러스터 자원(CPU/Mem) 스케줄링 통합 관리자
2025-01-01
21. 아파치 스파크 (Apache Spark) - 하둡 맵리듀스의 느린 디스크 반복 접근 단점을 극복한 인메모리(In-Memory) 기반 초고속 범용 분산 처리 엔진
2026-04-02
22. RDD (Resilient Distributed Dataset) - 스파크 핵심. 탄력적이고 불변하는 메모리 데이터 구조. 장애 시 리니지(계보) 연산 기록을 바탕으로 즉시 자가 복구
2026-04-02
23. 지연 평가 (Lazy Evaluation) - 트랜스포메이션 연산(map, filter)은 즉시 실행 안하고 DAG 궤적만 그리다가, 액션(count, save) 명령 시 옵티마이저가 묶어서 한 번에 최적 처리
2026-04-02
24. 아파치 플링크 (Apache Flink) - 배치 모사가 아닌 네이티브 이벤트 기반 진정한 실시간 스트림 처리 엔진 (상태 관리, 워터마크 지원 우수)
2026-04-02
25. 아파치 카프카 (Apache Kafka) - 분산 이벤트 스트리밍 플랫폼 (Pub/Sub 메시지 큐), 고성능 로그 파이프라인
2026-04-02
26. 토픽(Topic)과 파티션(Partition) - 메시지 저장 경로 / 파티션 분할을 통한 컨슈머 병렬 분산 처리 달성
2026-04-05
27. 오프셋 (Offset) 보존 및 컨슈머 그룹 (Consumer Group) 부하 분배 원리
2026-04-05
28. 아파치 하이브 (Apache Hive) - 맵리듀스 자바 코드 대신 HiveQL(SQL) 쿼리를 날려주는 하둡 데이터 웨어하우스 추상화
2026-04-05
29. 아파치 즈쿠퍼 (Apache ZooKeeper) - 분산 클러스터 노드 상태 동기화, 분산 락, 스플릿 브레인 방지(리더 선출) 코디네이션
2026-04-05
30. 스플릿 브레인 (Split Brain) 장애와 Quorum(정족수 과반 투표) 방어망 체계
2026-04-05
31. 아파치 우지 (Apache Oozie) / 아파치 에어플로우 (Apache Airflow) - 복잡한 분산 파이프라인 작업 간 DAG 의존성 스케줄링 관리
2026-04-05
32. CDC (Change Data Capture) - 기존 RDBMS(운영 DB)의 트랜잭션 로그(Redo, Binlog)를 긁어내 DB 성능 부하 없이 실시간으로 카프카나 DW에 변경/동기화 시키는 데이터 이관 핵심 기술 (Debezium)
2026-04-05
33. ETL (Extract, Transform, Load) - 운영계에서 데이터 추출 후 별도 서버에서 정제(T)하여 DW 적재(L) (병목 발생)
2026-04-05
34. ELT (Extract, Load, Transform) - 추출 데이터를 바로 클라우드 DW(Snowflake, BigQuery)로 쏟아넣고, 클라우드 DB 연산력 자체를 이용해 그 안에서 SQL로 정제 변환 (현대 대세)
2026-04-05
35. NoSQL (Not Only SQL) 데이터베이스 구조 유형 4가지
2026-04-05
36. 키-값 저장소 (Key-Value) - Redis, Memcached (인메모리 초고속 세션/캐시)
2026-04-05
37. 도큐먼트 저장소 (Document) - MongoDB (JSON 형태 유연한 계층 저장, 부분 필드 검색 용이)
2026-04-05
38. 컬럼 패밀리 저장소 (Wide-Column) - HBase, Cassandra (수십억 행의 시계열 로깅 데이터 쓰기 최적화)
2026-04-05
39. 그래프 저장소 (Graph DB) - Neo4j (노드와 엣지 관계 맵핑, 조인 오버헤드 없는 최단경로/추천 탐색)
2026-04-05
40. CAP 정리 (CAP Theorem) - 분산 데이터베이스는 일관성(Consistency), 가용성(Availability), 파티션 감내(Partition Tolerance) 세 가지를 동시에 완벽히 만족할 수 없음 (P는 필수이므로 CP 또는 AP 모델 선택)
41. PACELC 정리 - 장애(P) 시 A와 C의 상충, 정상(E) 시 지연(Latency)과 일관성(C)의 상충 관계 확장 정리
42. BASE 특성 (Basically Available, Soft-state, Eventual Consistency)
2026-04-15
43. 람다 아키텍처 (Lambda Architecture) - 빅데이터 처리 시 과거 배치는 하둡(Batch Layer)으로, 실시간 처리는 스트리밍(Speed Layer)으로 듀얼 구축하여 뷰에서 합치는 모델 (복잡성 증가 단점)
44. 카파 아키텍처 (Kappa Architecture) - 람다 단점 극복, 배치 레이어를 버리고 과거/실시간 모든 데이터를 카프카 기반 단일 스트 림 계층으로 통일 처리
45. 컬럼 지향 저장소 (Columnar Storage) 포맷
2026-04-10
46. LSM 트리 (Log-Structured Merge-Tree) - 쓰기 성능 극대화
2026-04-10
47. 콤팩션 (Compaction)과 툼스톤 (Tombstone) 메커니즘
2026-04-10
48. 컨시스턴트 해싱 (Consistent Hashing) - 링 구조 분산 저장
2026-04-10
49. 데이터 메시 (Data Mesh) - 도메인 주도 분산 데이터 구조
2026-04-10
50. 데이터 패브릭 (Data Fabric) - 지능형 데이터 가상화 계층
2026-04-10
51. 데이터 카탈로그 (Data Catalog) - 메타데이터 검색 및 자산화
2026-04-10
52. 데이터 리니지 (Data Lineage) - 데이터 흐름과 변환 족보 추적
2026-04-10
53. DataOps - 데이터 파이프라인 CI/CD 자동화 및 버저닝
2026-04-10
54. 오픈 테이블 포맷 - Iceberg, Delta Lake 데이터 레이크하우스 핵심
2026-04-10
55. 스토리지와 컴퓨팅의 분리 - 클라우드 레이크하우스 스케일링
2026-04-10
56. 데이터 가상화 연방 쿼리 - Trino와 Presto의 분산 쿼리 엔진
2026-04-10
57. 시계열 데이터베이스 (TSDB) - 다운샘플링과 데이터 보존 정책
2026-04-10
58. 뉴에스큐엘 (NewSQL) - 분산 RDBMS 글로벌 스패너(Spanner) 아키텍처
2026-04-10
59. 블룸 필터 (Bloom Filter) - 디스크 I/O 최적화 확률적 검색
2026-04-10
60. 다크 데이터 발굴 자산화 및 프라이버시 클린 룸 결합망
2026-04-10