최신 분산 데이터 처리 생태계
목차 22
빅데이터(3V/5V·수평 확장) → 하둡 코어 3종 → 타조(한국 주도) → NoSQL(★키문컬그★)·BASE·CAP → OLTP vs OLAP 까지, 분산 데이터 시대의 핵심 키워드를 한 강에 모았다. 매년 1~2문항·출제 빈도 안정적. 오늘 외울 두음은 단 하나 — 키문컬그(NoSQL 4종). 나머지는 글자 자체가 뜻이라 비유 한 번이면 충분하다. 회수 — 30강 수평 분할/샤딩(★범해리복★)·29강 ACID(★원일고영★)·28강 정규화(★도부이결다조★). 60점 합격 라인에서 효율이 가장 좋은 영역이다.
PART A — 빅데이터
빅데이터 정의 + 수직 vs 수평 확장 ·빅데이터·
[정의] 기존 단일 서버 RDBMS로는 수집·저장·관리·분석이 어려운 방대한 규모·속도·다양성의 데이터. 답은 분산 저장 + 분산 처리.
[표] 확장 두 방식 — 빅데이터의 답은 수평 확장(Scale-Out)
| 구분 | 수직 확장(Scale-Up) | 수평 확장(Scale-Out) |
|---|---|---|
| 방식 | 한 대 서버 사양 강화 | 평범한 서버 여러 대를 묶어 분산 |
| 비용 | 기하급수적 증가 | 선형 증가 |
| 한계 | 물리적 한계 명확 | 이론적 무한 확장 |
| 빅데이터 | 불가능(PB 규모) | 표준 답 |
[배경] 데이터 폭증 4동력 — 모바일 보급 · 소셜/메신저 · 전자상거래 · IoT 센서. 모든 사용자·기기가 24시간 데이터 생산자가 됐다.
💡 비유 도서관 한 곳에 책 100만 권을 쌓으면 공간·검색 모두 한계지만, 100곳에 나눠 놓으면 100명이 동시에 검색한다 — 이것이 수평 확장.
🔑 암기 빅데이터 = 수평 확장(Scale-Out)이 답 — 빅데이터·하둡·NoSQL이 전부 이 한 가정 위에 선다.
⚠️ 함정 "단일 서버로 PB 비정형 처리 가능" ❌(수직 확장은 물리적 한계).
🎯 빈출 수직/수평 확장 분별 — 30강 ★범해리복★ 수평 분할(행 단위)·샤딩(여러 DB 분산)이 바로 이 수평 확장의 DB판이다.
빅데이터 3V/5V + 데이터 형태 3분류 ·빅데이터· 🌟
[정의] 빅데이터 특성 — 3V가 핵심, 5V는 확장. 매년 빈출 1순위.
| 약어 | 영문 | 한글 | 구분 |
|---|---|---|---|
| V1 | Volume | 규모 | 3V |
| V2 | Velocity | 속도 | 3V |
| V3 | Variety | 다양성 | 3V |
| V4 | Veracity | 정확성 | 5V 확장 |
| V5 | Value | 가치 | 5V 확장 |
[분류] Variety를 펼치면 데이터 형태 3분류 — 비정형이 다수라는 게 빅데이터의 본질
| 형태 | 예 | 비중 |
|---|---|---|
| 정형 | 고정 스키마·테이블·CSV | 약 20% |
| 반정형 | 자체 메타 포함·JSON·XML·로그 | 약 10% |
| 비정형 | 구조 없음·이미지·영상·SNS | 약 70% |
🔑 암기 3V = Volume·Velocity·Variety / 5V = 3V + Veracity + Value — 여섯 글자.
⚠️ 함정 "3V에 Veracity 포함" ❌(→ 5V 확장) · "Velocity = Volume" ❌(양과 속도는 별개) · "빅데이터는 정형만" ❌(정형+반정형+비정형 모두).
🎯 빈출 거의 매회. 3V 한정 출제이면 보기에 Veracity·Value가 끼어 있고 그게 답. 3V와 5V를 따로 외우는 게 핵심.
빅데이터 처리 5단계 + RDBMS와의 관계 ·빅데이터·
[흐름] 수집 → 저장 → 처리 → 분석 → 시각화 — 단계별 도구 매핑이 변형 1순위
[소스] 웹 · 앱 · IoT · 로그 · SNS
│
▼
① 수집 → Flume · Sqoop · Kafka
② 저장 → HDFS · NoSQL · S3
③ 처리 → MapReduce · Spark · Tajo
④ 분석 → Hive · Python · MLlib
⑤ 시각화 → Tableau · Grafana
│
▼
[의사결정 · 서비스 개선]
[표] RDBMS vs 빅데이터 시스템 — 경쟁이 아니라 보완 관계
| 구분 | RDBMS | 빅데이터 시스템 |
|---|---|---|
| 데이터 | 정형(고정 스키마) | 정형+반정형+비정형 |
| 확장 | 수직 | 수평 |
| 트랜잭션 | ACID(즉시 일관) | BASE·결과적 일관성 |
| 주 용도 | OLTP(거래) | OLAP·DW·NoSQL |
💡 비유 RDBMS는 잘 정돈된 서재, 빅데이터 시스템은 물류 창고 — 서재는 100만 권을 못 담고, 창고는 덜 정돈돼도 무한정 쌓는다.
🔑 암기 정형·수직·ACID·OLTP = RDBMS / 비정형·수평·BASE·OLAP = 빅데이터.
🎯 빈출 단계별 도구 매핑("저장 단계 도구는?" → HDFS·NoSQL). 28강 ★도부이결다조★ 정규화가 '중복 최소·일관성'이라면, 빅데이터/NoSQL은 수평 확장과 빠른 읽기를 위해 일부러 중복(역정규화)을 허용한다 — 정반대 트레이드오프.
PART B — 하둡 · 분산 처리 엔진
하둡 정의 + 코어 3종 ·하둡·
[정의] 대용량 데이터를 분산 저장 + 분산 처리하는 자바 기반 오픈소스 프레임워크. 더그 커팅(Doug Cutting)이 2006년 야후 재직 중 개발, 구글 GFS + MapReduce 논문을 오픈소스로 구현. 이름은 아들의 노란 코끼리 인형에서 유래.
| 컴포넌트 | 역할 | 한 줄 |
|---|---|---|
| HDFS | 분산 파일 시스템 | 데이터를 블록으로 쪼개 여러 서버에 저장 |
| MapReduce | 분산 처리 엔진 | 쪼갠 데이터를 여러 서버에서 병렬 처리 |
| YARN | 자원 관리자(2.0) | 서버 자원을 작업에 효율 배분 |
💡 비유 분산 도서관 — HDFS가 책을 100개 도서관에 나눠 보관, MapReduce가 사서 100명을 동시에 투입, YARN이 사서들에게 업무를 배분하는 매니저.
🔑 암기 하둡 코어 3종 = HDFS + MapReduce + YARN(2.0) — 그 외는 전부 에코시스템 또는 NoSQL.
⚠️ 함정 코어에 끼워넣는 단골 — "Hive가 코어" ❌(에코·SQL on Hadoop) · "HBase가 코어" ❌(에코·컬럼 NoSQL) · "Neo4j가 코어" ❌(그래프 NoSQL·하둡 무관).
🎯 빈출 코어 3종 분별이 거의 매회. 보기에 에코시스템 도구나 NoSQL이 끼면 그게 답.
HDFS — 블록·복제·NameNode SPOF ·하둡·
[표] 네 키워드 — 블록 + 복제 + NameNode + DataNode
| 항목 | 내용 |
|---|---|
| 블록 크기 | 하둡 1.0 = 64MB / 2.0~3.0 = 128MB(현재 표준) |
| 복제 수 | 기본 3개 — 한 서버 장애에도 즉시 복구 |
| NameNode | 메타데이터 관리(어느 블록이 어디 있는지) |
| DataNode | 실제 블록 저장(수십~수천 대) |
[표] NameNode 단일 장애점(SPOF) — HDFS 함정의 정체
| 구분 | 하둡 1.0 | 하둡 2.0 HA |
|---|---|---|
| NameNode | 1대 — SPOF(단일 장애점) | 2대(Active+Standby) |
| 장애 시 | 전체 시스템 정지 | ZooKeeper 자동 Failover |
💡 비유 책을 페이지로 찢어 100곳에 나누고 같은 페이지를 3곳에 복제. 본관 사서(NameNode)가 어느 페이지가 어디 있는지 다 기억한다.
🔑 암기 128MB 블록 + 3부 복제 + NameNode SPOF(1.0) → HA(2.0·ZooKeeper).
⚠️ 함정 Secondary NameNode ≠ Standby NameNode. Secondary(1.0)는 메타데이터 체크포인트 생성용일 뿐 자동 페일오버를 못 한다. "Secondary가 자동 인계" ❌ → Standby(2.0 HA)가 정답.
MapReduce — Map·Shuffle·Reduce 3단계 ·하둡·
[정의] 구글 2004년 논문의 분산 처리 모델, 하둡이 오픈소스로 구현.
| # | 단계 | 동작 |
|---|---|---|
| ① | Map | 입력을 (키, 값) 쌍으로 변환 |
| ② | Shuffle | 같은 키끼리 묶어 정렬 |
| ③ | Reduce | 같은 키 그룹을 집계·합산 |
💡 비유 사서 1명이 책 100만 권에서 단어 빈도를 세면 100일, 사서 100명이 1만 권씩 나눠 세고(Map) 같은 단어끼리 모아(Shuffle) 합산(Reduce)하면 1일.
🔑 암기 Map → Shuffle → Reduce 3단계·순서 불변 / 디스크 기반 = MapReduce · 인메모리 = Spark.
⚠️ 함정 "Map→Reduce 2단계" ❌(Shuffle 누락) · "Reduce 먼저" ❌(이름 순서 그대로) · "MapReduce는 인메모리" ❌(디스크 기반).
💡 보충 MapReduce는 단계마다 디스크에 써서 반복 작업(ML 학습)에 느리다. 이 한계가 곧 Spark 등장의 동기.
YARN + 에코시스템 + 한국 주도 분별 ·하둡·
[정의] YARN = 자원 관리 분리(2.0). 하둡 1.0에선 MapReduce가 자원 관리까지 겸했지만, 2.0에서 YARN이 분리되며 Spark·Tajo 등 다양한 엔진이 같은 클러스터를 공유하게 됐다.
[표] 하둡 에코시스템 — 개발 주체 분별이 핵심
| 도구 | 역할 | 개발 주체 |
|---|---|---|
| HDFS·MR·YARN | 코어 | Apache(더그 커팅·야후) |
| Hive | SQL on Hadoop | 페이스북 |
| Pig | 스크립트 기반 | 야후 |
| HBase | 컬럼 NoSQL | Apache(BigTable 클론) |
| Tajo | SQL on Hadoop·분산 DW | 대한민국 |
[보조] 보기에 가끔 나오는 도구 — Sqoop(RDB↔하둡 이동·SQL+Hadoop) · Flume(로그 수집) · ZooKeeper(분산 코디네이션·HA 감시).
🔑 암기 한국 주도 = 타조 유일. Hive=페북·Pig=야후·Spark=UC버클리, 한국 개발은 오직 타조.
⚠️ 함정 "YARN은 하둡 1.0부터" ❌(→ 2.0부터). "YARN 도입 효과"로 나오면 = 다중 처리 엔진 공유 가능이 즉답.
🎯 빈출 '한국 개발' 키워드가 보이면 1초 즉답 → 타조.
★타조(Tajo) — 매년 빈출 1순위 ·하둡· 🌟
[정의] 대한민국이 주도하여 개발한, 아파치 하둡 기반의 분산 데이터 웨어하우스 프로젝트. 31강에서 단 한 카드만 외운다면 이 카드.
| 항목 | 내용 |
|---|---|
| 개발 주도 | 대한민국 — 고려대 DB 연구실 + Gruter + SK텔레콤 |
| 재단 | Apache 톱-레벨(2014 승격) |
| 유형 | SQL on Hadoop · 분산 DW |
| 언어 | 자바 · 표준 SQL |
⚠️ 함정 4종 "Tajo는 RDBMS" ❌(→ 분산 DW) · "Tajo는 NoSQL" ❌(→ 표준 SQL 사용) · "Tajo는 페이스북 개발" ❌(→ 대한민국·페북은 Hive) · "Tajo는 인메모리" ❌(→ 인메모리는 Spark).
💡 보충 2020년 9월 은퇴·2021년 Apache Attic 이관 상태지만, 정처기 시험에서는 여전히 매년 '한국 주도 분산 DW' 키워드로 빈출 — 시험 가치는 그대로 유지.
🔑 암기 한국 주도 + SQL on Hadoop + 분산 DW + Apache 2014 = 타조.
🎯 빈출 거의 매회 고정 출제. 문제에 '대한민국 주도 분산 DW'가 보이면 보기를 읽을 필요도 없이 Tajo — 나머지(Spark·Hive·HBase·Pig)는 전부 미국 기반이라 탈락.
Spark + 하둡/스파크/타조 분별표 ·하둡·
[정의] 분산 인메모리 처리 엔진. UC 버클리 AMPLab(2009 시작·2014 Apache 톱-레벨), MapReduce 대비 최대 100배. 핵심은 RDD(Resilient Distributed Dataset).
| 구분 | MapReduce | Spark | Tajo |
|---|---|---|---|
| 처리 | 디스크 기반 | 인메모리 | SQL on Hadoop |
| 속도 | 느림 | 최대 100배 | SQL 쿼리 빠름 |
| 개발 | 미국(구글 논문·야후 구현) | 미국(UC 버클리) | 대한민국 |
| 주 용도 | 배치 대용량 | 배치+실시간+ML | 분산 DW 분석 |
💡 보충 RDD = Resilient(복원)·Distributed(분산)·Dataset(집합) — 노드 장애 시 lineage(계보) 정보로 자동 재계산. Spark 5종 컴포넌트(Core·SQL·Streaming·MLlib·GraphX)는 보기에 가끔 나오니 한 번만 훑어두면 충분.
🔑 암기 디스크 = MapReduce / 인메모리 = Spark / 한국 DW = 타조 — 세 단어.
🎯 빈출 '인메모리·100배' 키워드 = Spark.
PART C — NoSQL
NoSQL 정의 + BASE + CAP ·NoSQL·
[정의] NoSQL = 'Not Only SQL' — 관계형 모델을 따르지 않는 비관계형 DB의 총칭. SQL을 완전히 버린 게 아니라, 관계형의 제약을 일부 양보하고 수평 확장·유연 스키마·가용성에 집중한 대안.
[표] BASE 모델 — NoSQL의 트랜잭션 모델(ACID의 정반대)
| 약어 | 의미 |
|---|---|
| Basically Available | 일부 노드 장애에도 시스템 응답 |
| Soft state | 시간에 따라 상태 변할 수 있음 |
| Eventually consistent | 결국 일관 — 즉시 일관은 양보 |
[표] CAP 정리(브루어, 2000) — 셋 중 둘만
| 분류 | 의미 | 대표 시스템 |
|---|---|---|
| CP | 일관성 우선 | HBase · MongoDB(strong) |
| AP | 가용성 우선 | Cassandra · DynamoDB |
| CA | 분산 X · 단일 노드 | RDBMS |
💡 비유 ACID는 은행 금고(반드시 정확하지만 느릴 수 있음), BASE는 편의점 재고(잠깐 안 맞을 순 있어도 24시간 열림) — 좋고 나쁨이 아니라 용도 차이.
🔑 암기 BASE = 결과적 일관성 / CAP = 셋 중 둘만. 29강 ★원일고영★ ACID는 즉시·강한 일관성, BASE는 그중 C(일관성)를 양보하고 가용성을 챙긴 모델. 분산에선 네트워크 분할(P)이 불가피해 C·A 중 하나를 양보해야 한다.
⚠️ 함정 "CAP 셋 다 동시 만족" ❌(둘만) · "Cassandra = CP" ❌(→ AP) · "HBase = AP" ❌(→ CP).
★키문컬그 — NoSQL 4종 ·NoSQL· 🌟
[두음] 오늘의 핵심 두음 — ★키문컬그★. NoSQL 4종을 네 글자로 묶었다.
키밸(Key-Value) · 문서(Document) · 컬럼(Wide-Column) · 그래프(Graph) 스토리: '키(열쇠)로 잠긴 문(서)을 열고 컬(컬럼) 기둥 사이로 그(래프) 인맥 지도를 펼친다'
| 약어 | 유형 | 대표 시스템 | 비유 | CAP |
|---|---|---|---|---|
| 키 | Key-Value | Redis · DynamoDB | 명함첩 | AP |
| 문 | Document | MongoDB · CouchDB | 서류 폴더 | CP |
| 컬 | Wide-Column | Cassandra · HBase | 엑셀 시트(열 단위) | AP/CP |
| 그 | Graph | Neo4j | 인맥 지도 | — |
[분류 기준] 4종은 데이터의 구조로 분류(Key-Value 쌍·Document·열 패밀리·노드+엣지). 사용 목적(OLAP/OLTP) 기준 분류 ❌.
🔑 암기 키·문·컬·그 = Redis·MongoDB·Cassandra·Neo4j — 열두 글자. 보기 순서가 매년 뒤바뀌니 4글자 매칭이 즉답의 척추.
⚠️ 함정 'NoSQL 4종에 해당하지 않는 것'이면 보기에 Relational Store·OLAP·DW·OLTP가 끼어 있고 그게 답. MongoDB를 Key-Value로, Cassandra를 Document로 바꿔놓는 대표 시스템 뒤바꿈도 함정.
🎯 빈출 1순위. 5번씩 입에 굴려두면 보기 순서가 어떻게 섞여도 4글자 매칭으로 자동 즉답.
NoSQL 4종 상세 + Cassandra vs HBase ·NoSQL·
[표] 4종 각 특징 한눈에
| 유형 | 구조 | 대표 | 강점·활용 |
|---|---|---|---|
| Key-Value | (키, 값) 쌍·가장 단순 | Redis·DynamoDB | O(1) 해시 즉시 조회 — 세션·캐시·실시간 랭킹 |
| Document | JSON/BSON·유연 스키마·중첩 | MongoDB·CouchDB | 문서마다 필드 자유·JOIN 대신 중첩 — 카탈로그·CMS |
| Wide-Column | 열(컬럼) 패밀리 단위 저장 | Cassandra·HBase | 같은 열 모아 압축 폭발 — 시계열·로그·대량 쓰기 |
| Graph | 노드(점) + 엣지(선) | Neo4j(Cypher) | 다단 관계(친구의 친구) ms — 소셜·추천·사기 탐지 |
💡 비유 명함첩(이름만 알면 즉시) · 서류 폴더(양식 자유·한 서류에 다) · 엑셀 시트(열 단위 압축) · 인맥 지도(노드+엣지). Graph는 RDBMS 5단 JOIN(결과 폭발)을 패턴 매칭 한 줄·ms로 대체.
[표] Cassandra vs HBase — 자주 뒤바꿔 출제
| 항목 | Cassandra | HBase |
|---|---|---|
| CAP | AP(가용성 우선) | CP(일관성 우선) |
| 구조 | 마스터 없는 P2P | 마스터-슬레이브 |
| 개발 | 페이스북 → Apache | Apache(BigTable 클론) |
| 하둡 의존 | 독립 | 하둡 기반(HDFS 사용) |
🔑 암기 Cassandra = AP·P2P / HBase = CP·마스터.
⚠️ 함정 Cassandra=CP ❌ · HBase=AP ❌ 의 자리 뒤바꿈. Document는 28강 ★도부이결다조★ 정규화의 정반대 — 한 문서에 다 넣고·중복 허용·JOIN 회피(역정규화).
NoSQL vs RDBMS — 대체가 아닌 보완 ·NoSQL·
[표] 정규화 vs 역정규화 트레이드오프가 한눈에 갈리는 자리
| 구분 | RDBMS | NoSQL |
|---|---|---|
| 데이터 모델 | 관계형(테이블·튜플) | 4종(★키문컬그★) |
| 스키마 | 고정·사전 정의 | 유연·동적·스키마리스 |
| JOIN | 핵심 연산 | 거의 안 씀(역정규화·중첩) |
| 확장 | 수직 | 수평 |
| 트랜잭션 | ACID | BASE·결과적 일관성 |
| 정규화 | 정규화 강조 | 역정규화 허용 |
🔑 암기 정규화 = RDBMS / 역정규화 = NoSQL — 용도가 다를 뿐. 28강 ★도부이결다조★ 정규화는 '이상 현상 제거·중복 최소·일관성', NoSQL은 수평 확장·빠른 읽기를 위해 일부러 중복을 허용한다.
⚠️ 함정 "NoSQL은 SQL을 절대 안 쓴다" ❌ — 'Not Only SQL'(Cassandra의 CQL·MongoDB Query). "RDBMS는 시대에 뒤떨어졌다" ❌ — OLTP·금융 결제는 2026년에도 RDBMS 본진. "NoSQL이 RDBMS를 완전 대체" ❌ — 보완·공존.
🎯 빈출 'Not Only SQL' 의미 + 정규화/역정규화 분별.
PART D — OLTP vs OLAP
OLTP — 실시간 거래 처리 ·OLTP/OLAP·
[정의] OLTP = Online Transaction Processing — 실시간으로 짧은 트랜잭션을 다수 처리하는 운영 시스템. 사용자가 화면에서 일으키는 모든 거래가 OLTP.
| 특징 | 내용 |
|---|---|
| 처리 단위 | 소량의 행(1~수십) INSERT·UPDATE |
| 응답 시간 | 밀리초 — 사용자 체감 직접 |
| 트랜잭션 | ACID 필수 |
| 스키마 | 정규화(고정 스키마·이상 현상 제거) |
| 사용자 | 일반 고객·운영자 |
| 대표 시스템 | Oracle · MySQL · PostgreSQL |
🔑 암기 OLTP = T(ransaction) = 짧고 빠름·실시간·밀리초·ACID·정규화·운영.
💡 보충 OLTP 자리의 핵심 3종 — 29강 ★원일고영★ ACID(송금 All-or-Nothing·무결성·격리·영속) · 28강 정규화(고정 스키마·이상 현상 제거) · 26강 COMMIT/ROLLBACK(트랜잭션 종료 결재 사인). 간편송금 시스템의 출금→입금→거래내역 INSERT→COMMIT을 한 트랜잭션으로 수십 ms에 처리하는 게 OLTP의 정수.
🎯 빈출 T 한 글자로 매핑 — 다음 분별표(★)에서 OLAP와 자리 바꿔치기로 출제.
OLAP + DW·마트·레이크 ·OLTP/OLAP·
[정의] OLAP = Online Analytical Processing — 대용량 누적 데이터를 다차원 분석하는 시스템. 분석가·임원·의사결정자가 사용. SUM·AVG·COUNT·GROUP BY 같은 집계가 중심.
| 특징 | 내용 |
|---|---|
| 처리 단위 | 대량의 행(수만~수억) 집계 |
| 응답 시간 | 초~분 단위 OK |
| 연산 | SELECT·GROUP BY·집계 함수 위주 |
| 스키마 | 역정규화·스타 스키마 |
| 사용자 | 분석가·임원·의사결정자 |
| 대표 시스템 | Snowflake·BigQuery·Redshift·Tajo·Hive |
[표] OLAP 데이터 저장소 3종
| 저장소 | 정의 |
|---|---|
| DW(Data Warehouse) | 정제된 정형 데이터 대규모 통합 저장소 |
| 데이터 마트 | DW의 부분집합(부서·주제별) |
| 데이터 레이크 | 원본 그대로 보관(정형+반정형+비정형) |
💡 비유 OLTP가 매장 계산대(1초 안에 결제)라면 OLAP는 본사 회의실 대시보드(누적 매출 총합을 집계·분석, 몇 분 걸려도 OK).
🔑 암기 OLAP = A(nalytical) = 크고 깊음·집계·DW / DW=정제 정형·마트=부분집합·레이크=원본 다 보관.
⚠️ 함정 "데이터 레이크는 정형만 저장" ❌(정형+반정형+비정형 원본 그대로).
💡 보충 OLAP는 27강 ★프위그해셀오★ SELECT에서 GROUP BY·HAVING·집계 함수가 주연으로 서는 무대 — 다차원 분석 쿼리의 뼈대.
★OLTP vs OLAP 분별표 — 시험 1순위 ·OLTP/OLAP· 🌟
[표] 매년 '자리 바꿔치기' 함정으로 출제되는 결정 카드
| 구분 | OLTP(T·거래) | OLAP(A·분석) |
|---|---|---|
| 목적 | 실시간 거래 | 의사결정·분석 |
| 데이터 | 정규화된 정형 | 역정규화·다차원 |
| 트랜잭션 | 작고 짧음 | 크고 김 |
| 연산 | INSERT·UPDATE | SELECT·GROUP BY |
| 응답 | 밀리초 | 초~분 |
| 사용자 | 고객·운영자 | 분석가·임원 |
| 시스템 | Oracle·MySQL | Snowflake·BigQuery·Tajo |
[표] 트랜잭션 모델로 한 번 더 — ACID vs BASE + CAP 자리
| 구분 | ACID(RDBMS·OLTP) | BASE(NoSQL·분산) |
|---|---|---|
| 일관성 | 즉시 일관(Strong) | 결과적 일관(Eventual) |
| CAP | CA(RDBMS)·CP 일부 | AP(웹 분산·캐시) |
🔑 암기 T = 짧고 빠름·실시간 / A = 크고 깊음·집계 — 자리가 바뀌면 무조건 오답.
⚠️ 함정 'OLTP가 DW에서 대량 집계'나 'OLAP가 밀리초 응답'처럼 T와 A의 키워드가 섞이면 그게 오답. CAP도 'Cassandra=CP' ❌ · 'HBase=AP' ❌ 뒤바꿈에 주의.
🎯 빈출 31강 시험 1순위·매년 변형. T·A 두 글자만 머리에 두면 보기에서 자리 바뀜이 즉시 보인다.
기출 다지기
[기출 1 출제] 빅데이터의 특성을 나타내는 3V에 해당하지 않는 것은? (소거/이질성형 · 2022년 변형)
- ① Volume (규모)
- ② Velocity (속도)
- ③ Variety (다양성)
- ④ Veracity (정확성)
정답 및 해설 보기
정답 ④ Veracity — 3V = Volume·Velocity·Variety, 5V = 3V + Veracity + Value.
| 보기 | 판정 | 이유 |
|---|---|---|
| ① Volume | ✅ 3V | 데이터의 양(규모) |
| ② Velocity | ✅ 3V | 실시간 생성·유통 속도 |
| ③ Variety | ✅ 3V | 정형+반정형+비정형 다양성 |
| ④ Veracity | ❌ 5V 확장 | 정확성 — 3V에 미포함 |
보기에 5V 항목(Veracity·Value)을 섞는 게 단골 패턴. 반대로 '5V에 해당하지 않는 것'이면 5개 모두 해당이라 함정이 성립하지 않는다.
🔑 암기 3V = V·V·V / 5V = +Veracity+Value.
[기출 2 출제] 다음 중 아파치 하둡의 핵심 구성 요소가 아닌 것은? (소거/이질성형 · 2024년 변형)
- ① HDFS — 분산 파일 시스템
- ② MapReduce — 분산 처리 엔진
- ③ YARN — 자원 관리자
- ④ Neo4j — 그래프 데이터베이스
정답 및 해설 보기
정답 ④ Neo4j — 하둡 코어 = HDFS + MapReduce + YARN. 끝.
| 보기 | 판정 | 분류 |
|---|---|---|
| ① HDFS | ✅ 코어 | 분산 파일 시스템 |
| ② MapReduce | ✅ 코어 | 분산 처리 엔진 |
| ③ YARN | ✅ 코어(2.0) | 자원 관리자 |
| ④ Neo4j | ❌ 하둡 무관 | ★키문컬그★ '그(래프)' NoSQL |
Hive·Pig·HBase·Tajo는 에코시스템, Neo4j·MongoDB·Redis는 NoSQL — 둘 다 코어가 아니다.
🔑 암기 코어 3종 외에는 다 에코시스템 또는 NoSQL.
[기출 3 출제] 다음 설명에 해당하는 빅데이터 기술은? (설명→용어 · 2021·2022 연속 출제)
'대한민국이 주도하여 개발한, 아파치 하둡 기반의 분산 데이터 웨어하우스 프로젝트로, 2014년 아파치 톱-레벨 프로젝트로 승격되었으며 표준 SQL을 사용해 분산 환경에서 대용량 분석 쿼리를 실행한다.'
- ① Apache Spark
- ② Apache Hive
- ③ Apache Tajo
- ④ Apache HBase
정답 및 해설 보기
정답 ③ Apache Tajo — 보기별 개발 주체로 한눈에 갈린다.
| 보기 | 개발 주체 | 판정 |
|---|---|---|
| ① Spark | UC 버클리 AMPLab(미국) | ❌ |
| ② Hive | 페이스북(미국) | ❌ |
| ③ Tajo | 대한민국(고려대·Gruter·SKT) | ✅ |
| ④ HBase | Apache·BigTable 클론(미국) | ❌ |
타조만 한국 주도. Apache 2014 톱-레벨·SQL on Hadoop·분산 DW. 2020년 Attic 이관 상태지만 '한국 주도 분산 DW' 키워드로 매년 빈출 — 시험 가치 유지. 문제에 '대한민국 주도'만 보이면 보기를 읽을 필요도 없다.
🔑 암기 한국 주도 = Tajo 유일 — Spark·Hive·HBase·Pig 다 미국.
[기출 4 출제] 다음 중 NoSQL 데이터베이스의 4가지 유형에 해당하지 않는 것은? (소거/이질성형 · 2023년 변형)
- ① Key-Value Store
- ② Document Store
- ③ Wide-Column Store
- ④ Relational Store
정답 및 해설 보기
정답 ④ Relational Store — NoSQL 4종 = ★키문컬그★(키밸·문서·컬럼·그래프).
| 보기 | ★키문컬그★ 매칭 | 판정 |
|---|---|---|
| ① Key-Value Store | 키 — Redis·DynamoDB | ✅ |
| ② Document Store | 문 — MongoDB·CouchDB | ✅ |
| ③ Wide-Column Store | 컬 — Cassandra·HBase | ✅ |
| ④ Relational Store | RDBMS 영역 — NoSQL 아님 | ❌ |
4종 분류 기준은 데이터 모델. 보기에 Relational·OLAP·DW·OLTP 같은 카테고리가 끼면 그게 답. 대표 시스템 매칭(MongoDB가 Key-Value로 나오면 함정)도 주의.
🔑 암기 NoSQL 4종 = 키·문·컬·그만.
[기출 5 출제] 다음 중 OLTP와 OLAP에 대한 설명으로 옳지 않은 것은? (설명 판단형 · 매년 변형 출제)
- ① OLTP는 짧은 트랜잭션을 실시간 처리하며 응답 시간이 중요하다.
- ② OLAP는 대용량 다차원 분석을 목적으로 한다.
- ③ OLTP는 정규화, OLAP는 역정규화·스타 스키마를 쓴다.
- ④ OLTP는 분석가·임원의 의사결정을 위해 DW에서 대량 행을 집계한다.
정답 및 해설 보기
정답 ④ — '분석가·임원·DW·대량 집계'는 전부 OLAP(A)의 키워드인데 'OLTP'라고 써놓은 자리 바꿔치기.
| 보기 | 판정 | 이유 |
|---|---|---|
| ① OLTP=실시간·밀리초 | ✅ | T의 정확한 정의 |
| ② OLAP=대량·다차원·집계 | ✅ | A의 정확한 정의 |
| ③ OLTP=정규화 / OLAP=역정규화 | ✅ | 각각 정확 |
| ④ OLTP가 DW에서 대량 집계 | ❌ | OLAP 자리를 OLTP에 넣은 함정 |
| T의 키워드(OLTP) | A의 키워드(OLAP) |
|---|---|
| 밀리초·INSERT·운영·정규화·고객 | DW·집계·분석가·역정규화·임원 |
🔑 암기 T = 짧고 빠름 / A = 크고 깊음 — 자리가 바뀌면 오답.
한 장 요약
[PART A] 빅데이터 3V/5V · 수평 확장(Scale-Out) · 처리 5단계
│ '왜 분산이 필요한가'
[PART B] 하둡 HDFS + MapReduce + YARN · 타조(한국) · Spark(인메모리)
│ '무엇으로 분산 저장·처리하나'
[PART C] NoSQL ★키문컬그★ 4종 · BASE · CAP
│ '관계형을 대신하는 분산 저장'
[PART D] OLTP/OLAP T = 거래·밀리초 / A = 분석·초~분
출제 1순위 카드 5장
| # | 영역 | 즉답 |
|---|---|---|
| ① | 빅데이터 3V/5V | V·V·V / +Veracity·Value(5V 확장) |
| ② | 하둡 코어 | HDFS + MapReduce + YARN(2.0) — Hive·HBase·Neo4j 제외 |
| ③ | 타조(Tajo) | 한국 주도 + SQL on Hadoop + 분산 DW |
| ④ | NoSQL 4종 | ★키문컬그★ — 키밸·문서·컬럼·그래프 |
| ⑤ | OLTP vs OLAP | T=거래·밀리초 / A=분석·초~분(자리 바꿈) |
함정 5쌍 + 보너스 5
| 함정 ❌ | 정답 ✅ |
|---|---|
| 3V에 Veracity 포함 | 3V = Volume·Velocity·Variety만 |
| 한국 개발 = Hive·Pig | Hive=페북·Pig=야후 / 한국 = 타조 |
| Spark 디스크 기반 | Spark = 인메모리·100배 |
| NoSQL 4종에 Relational Store | 4종 = ★키문컬그★만 |
| OLTP가 DW에서 대량 집계 | OLTP=거래·OLAP=분석(자리 바꿈) |
보너스 — 하둡 1.0 NameNode 자동 페일오버 ❌(SPOF·2.0 HA만) · YARN은 2.0부터 · MapReduce는 3단계(Map·Shuffle·Reduce) · NoSQL은 대부분 BASE · CAP 셋 다 동시 만족 ❌(둘만·브루어).
회수 한 줄 30강 수평 분할/샤딩(★범해리복★) → 빅데이터 수평 확장 · 29강 ACID(★원일고영★) ↔ BASE · 28강 정규화(★도부이결다조★) ↔ NoSQL 역정규화. 오늘 외울 두음은 단 하나 — 키문컬그.
