빅데이터분석기사 필기 데이터 저장 단원은 RDBMS의 ACID 속성, NoSQL 4가지 유형과 대표 데이터베이스, CAP 이론, 분산파일시스템(GFS·HDFS)까지 폭넓은 개념을 다룹니다. 이 글에서는 시험 출제 빈도 높은 핵심 개념을 초보자도 이해할 수 있도록 완벽 정리합니다. 빅데이터분석기사 합격을 위한 기출 중심 문제풀이와 해설도 함께 확인하세요.
시험 합격 전략 요약
데이터 저장 단원에서 가장 중요한 포인트는 세 가지입니다.
- RDBMS의 ACID 4가지 속성 키워드 정확히 암기
- NoSQL 4종류(Document / Key-value / Column-oriented / Graph)의 특징과 대표 DB 연결
- CAP 이론: 세 속성(Consistency·Availability·Partition Tolerance) 중 동시에 두 가지만 만족 가능하다는 핵심 원칙과 각 조합별 대표 DBMS
특히 CAP 이론에서 CA / CP / AP 조합에 어떤 DBMS가 해당하는지를 묻는 문제가 자주 출제됩니다. HDFS의 구성 요소(네임 노드, 데이터 노드, 복제)도 반드시 암기해야 합니다.
1단원: 데이터 저장 개요 & RDBMS
초압축 암기 요약
- 데이터 저장 = 분석에 적합한 방식으로 안전하고 영구적으로 보관 + 검색·수정·삭제·읽기 제공
- RDBMS = Column(열) + Row(행)으로 구성된 테이블 기반 DB
- 정형 데이터 대량 저장에 적합, SQL 사용, CRUD 수행
- RDBMS 트랜잭션 특징: ACID
- ACID = Atomicity(원자성) / Consistency(일관성) / Isolation(독립성) / Durability(영속성)
초보자 이해용 상세 설명
정의
RDBMS(관계형 데이터베이스 관리 시스템)는 속성을 구분하는 Column(열)과 저장되는 값인 Row(행)으로 정의된 테이블로 구성되는 데이터베이스입니다. 테이블과 테이블의 관계를 통해 데이터의 무결성 및 중복을 최소화합니다.
ACID 4가지 상세 설명
① 원자성(Atomicity)
트랜잭션의 모든 연산이 완전히 수행되거나, 전혀 수행되지 않아야 합니다. 즉, 중간 상태가 존재하지 않습니다. 예를 들어 계좌 이체 시 출금과 입금이 동시에 성공하거나 동시에 실패해야 합니다.
② 일관성(Consistency)
트랜잭션 실행 전후로 데이터베이스의 무결성 제약조건이 항상 만족되어야 합니다.
③ 독립성(Isolation)
동시에 여러 트랜잭션이 실행될 때, 각 트랜잭션은 서로 간섭하지 않고 독립적으로 수행됩니다.
④ 영속성(Durability)
트랜잭션이 성공적으로 완료된 경우, 그 결과는 장애가 발생해도 영구적으로 반영됩니다.
시험 출제 포인트
ACID의 각 영문 약자와 한국어 의미를 정확히 연결하는 문제가 출제됩니다. 특히 Atomicity(원자성)와 Durability(영속성)의 개념이 혼동되기 쉬우므로 주의가 필요합니다.
시험 핵심 포인트
- RDBMS = 테이블(Column + Row) 기반 관계형 DB
- RDBMS = 정형 데이터 대량 저장에 적합
- SQL(Structured Query Language) 사용
- CRUD = Create, Read, Update, Delete
- ACID 4요소: 원자성(A) / 일관성(C) / 독립성(I) / 영속성(D)
- 원자성 = All or Nothing (전부 성공 or 전부 실패)
- RDBMS = 테이블 간 관계로 데이터 무결성 및 중복 최소화
2단원: NoSQL — 개요 및 4가지 종류
초압축 암기 요약
- NoSQL = Not only SQL
- 전통적 관계형 DB보다 제한이 덜한 데이터 모델 기반
- 장점: 수평적 확장성(Scale-out), 데이터 복제, 간편한 API제공, 일관성 보장
- NoSQL 특징: 비용(오픈소스), 확장성(클러스터 기반), 유연성(Scheme Less), 성능(RDBMS 대비 우수)
- NoSQL DBMS관점 특성: BASE = Basically Available / Soft-State / Eventually Consistency
- NoSQL 4종류: Document-oriented / Key-value / Column-oriented / Graph
초보자 이해용 상세 설명 — NoSQL 4종류
① Document-oriented 데이터베이스
문서 형식의 정보를 저장·관리하기 위한 NoSQL입니다. JSON, BSON 형태의 문서를 기본 단위로 저장합니다.
대표 DB: MongoDB, Azure Cosmos DB, CouchDB, MarkLogic, OrientDB
② Key-value 데이터베이스
데이터를 키(Key)와 그에 대응하는 값(Value)을 쌍으로 저장하는 NoSQL입니다. 가장 단순한 구조로 조회 속도가 매우 빠릅니다.
대표 DB: Redis, Oracle NoSQL Database, Voldmort, Oracle Berkeley DB, Memcached, Hazelcast
③ Column-oriented 데이터베이스
데이터를 행(Row) 기반이 아닌 열(Column) 기반으로 저장 및 처리하는 NoSQL입니다. 대용량 데이터의 집계·분석에 유리합니다.
대표 DB: Cassandra, HBase, Google BigTable, Vertica, Druid, Accumulo, HyperTable
④ Graph 데이터베이스
데이터를 노드(Node, Vertex)로 표현하며, 노드 사이의 관계를 연결선(Edge)으로 표현하는 NoSQL입니다. 소셜 네트워크, 추천 시스템 등에 적합합니다.
대표 DB: Neo4j, Blazegraph, OrientDB
시험 출제 포인트
NoSQL 4종류의 대표 DB를 연결하는 문제가 자주 출제됩니다. 특히 HBase, Cassandra는 Column-oriented, Redis는 Key-value, MongoDB는 Document-oriented, Neo4j는 Graph 데이터베이스임을 확실히 연결해 두어야 합니다.
시험 핵심 포인트
- NoSQL = Not only SQL (비관계형 DB 총칭)
- NoSQL 특징: 비용(오픈소스) / 확장성 / 유연성(Scheme Less) / 성능
- Scheme Less = 스키마 없이 동작, 필드 자유롭게 추가 가능
- NoSQL BASE 특성: Basically Available / Soft-State / Eventually Consistency
- Document-oriented 대표: MongoDB, CouchDB
- Key-value 대표: Redis, Memcached
- Column-oriented 대표: HBase, Cassandra, Google BigTable
- Graph 대표: Neo4j, Blazegraph
3단원: CAP 이론
초압축 암기 요약
- CAP 이론 = 분산 시스템에서 Consistency, Availability, Partition Tolerance 세 속성을 동시에 모두 만족하는 것은 불가능하며, 오직 두 가지만 만족할 수 있다는 이론
- C(Consistency, 일관성) = 모든 서버에서 가장 최근에 쓰여진 데이터를 읽어야 함
- A(Availability, 유효성) = 보낸 요청에 대해 항상 응답 가능
- P(Partition Tolerance, 분산 가능) = 네트워크 오류가 있어도 시스템이 동작해야 함
- CA 조합 DBMS: RDBMS, MySQL, Maria DB 등
- CP 조합 DBMS: Big Table, HBase, MongoDB, Redis
- AP 조합 DBMS: Dynamo, Voldmort, Cassandra, CouchDB
초보자 이해용 상세 설명
정의
CAP 이론은 분산 시스템 설계에서 한 대의 서버로 이루어진 시스템이 아니라 여러 서버로 이루어진 시스템을 가정할 때, Consistency(일관성), Availability(유효성), Partition Tolerance(분산 가능)라는 세 가지 속성 모두를 만족하는 것은 불가능하며 오직 두 가지만 만족할 수 있다는 이론입니다.
3가지 속성 상세 설명
C — Consistency (일관성)
어느 서버에서 데이터를 읽더라도 가장 최근에 쓰여진 데이터가 읽혀야 한다는 속성입니다. 모든 노드가 같은 시점에 같은 데이터를 봅니다.
A — Availability (유효성)
클라이언트가 보낸 요청에 대해서는 항상 응답이 가능해야 하는 특성입니다. 일부 노드에 장애가 발생해도 서비스는 계속 응답합니다.
P — Partition Tolerance (분산 가능)
서버 간의 통신에서 네트워크가 끊긴 수준의 오류가 있더라도 시스템이 동작해야 함을 의미합니다. 분산 시스템에서 사실상 필수 요소입니다.
예시로 이해하기
은행 ATM 시스템은 CA(일관성+유효성)를 선택합니다. 정확한 잔액 정보(일관성)와 항상 응답 가능한 서비스(유효성)가 중요하기 때문입니다. SNS 서비스는 AP(유효성+분산가능)를 선택합니다. 잠깐의 데이터 불일치는 허용하더라도 항상 접속 가능한 것이 더 중요하기 때문입니다.
시험 출제 포인트
각 조합(CA / CP / AP)에 해당하는 대표 DBMS를 연결하는 문제가 고빈도로 출제됩니다. HBase는 CP, Cassandra는 AP, RDBMS는 CA 조합임을 반드시 암기해야 합니다.
시험 핵심 포인트
- CAP 이론: 세 속성 중 동시에 두 가지만 만족 가능
- C(Consistency) = 모든 서버에서 최신 데이터 읽기 보장
- A(Availability) = 항상 응답 가능
- P(Partition Tolerance) = 네트워크 오류에도 시스템 동작
- CA 조합: RDBMS, MySQL, Maria DB
- CP 조합: Big Table, HBase, MongoDB, Redis
- AP 조합: Dynamo, Voldmort, Cassandra, CouchDB
4단원: 분산파일시스템 — GFS & HDFS
초압축 암기 요약
- 분산파일시스템 = x86 서버급 저사양 서버들을 활용한 대용량·분산·데이터 집중형 고성능 Fault-tolerance 저장 방식
- GFS(Google File System) = 구글 개발, 대용량 서버 연결, 대규모 클러스터 서비스 플랫폼 기반 파일시스템
- GFS 구성: 클라이언트(Client) / 마스터(Master) / 청크 서버(Chunk Server)
- 청크(Chunk) = 파일의 단위 (GFS 1.0 : 64MB, GFS 2.0 : 128MB)
- HDFS(Hadoop Distributed File System) = 하둡 분산 파일 시스템, 여러 서버에 설치되어 동작
- HDFS 구성: 네임 노드(Name Node) / 보조 네임 노드(Secondary Name Node) / 데이터 노드(Data Node) / 복제(Replication)
초보자 이해용 상세 설명
GFS(Google File System)
구글에서 개발한 파일시스템으로, 일반 상용 하드웨어를 이용하여 대량의 서버를 연결하고 데이터에 대한 접근이 효율적이고 안정적인 대규모 클러스터 서비스 플랫폼의 기반 파일시스템입니다. 파일은 청크(Chunk) 단위로 나뉘어 청크 서버에 분산 저장됩니다. GFS 1.0에서 청크 크기는 64MB, GFS 2.0에서는 128MB입니다.
HDFS(Hadoop Distributed File System)
대용량 파일을 저장하고 처리하기 위해 개발된 파일시스템으로, 하나의 서버에서 동작하는 것이 아니라 여러 개의 서버에 설치되어 운영됩니다. 하둡 분산 파일 시스템만을 위한 별도의 스토리지가 없는 구조로, 로컬 디스크를 이용하여 확장 가능한 유연성을 보장합니다.
HDFS 구성 요소 상세
네임 노드(Name Node): 파일 시스템의 메타데이터(파일명, 복제본 위치 등)를 관리하는 마스터 서버입니다.
보조 네임 노드(Secondary Name Node): 네임 노드의 메타데이터를 주기적으로 백업하는 역할을 합니다.
데이터 노드(Data Node): 실제 데이터 블록을 저장하는 서버들입니다.
복제(Replication): 데이터 블록을 여러 데이터 노드에 복제하여 장애 시에도 데이터를 보호합니다.
시험 출제 포인트
GFS의 청크 크기(64MB/128MB)와 HDFS 구성 요소의 역할을 묻는 문제가 출제됩니다. 특히 네임 노드와 데이터 노드의 역할 구분이 핵심입니다. 네임 노드 = 메타데이터 관리, 데이터 노드 = 실제 데이터 저장으로 정확히 구분해야 합니다.
시험 핵심 포인트
- 분산파일시스템 = x86 저사양 서버 기반, 고성능 Fault-tolerance 환경 제공
- GFS 청크 크기: GFS 1.0 = 64MB, GFS 2.0 = 128MB
- GFS 구성: 클라이언트 / 마스터 / 청크 서버
- HDFS = 여러 서버에 분산 설치, 별도 스토리지 없이 로컬 디스크 활용
- HDFS 네임 노드 = 메타데이터(파일명, 복제 위치) 관리
- HDFS 데이터 노드 = 실제 데이터 블록 저장
- HDFS 복제(Replication) = 장애 시 데이터 보호 목적
기본 확인문제 5문제
Q1. 다음 중 RDBMS의 ACID 트랜잭션 속성에 대한 설명으로 올바른 것은?
① Atomicity(원자성)은 트랜잭션 실행 전후 무결성 제약조건이 항상 만족되어야 함을 의미한다.
② Consistency(일관성)은 트랜잭션이 성공해도 장애 시 결과가 사라질 수 있음을 의미한다.
③ Isolation(독립성)은 동시에 실행되는 여러 트랜잭션이 서로 간섭하지 않음을 의미한다.
④ Durability(영속성)은 트랜잭션의 모든 연산이 전부 수행되거나 전혀 수행되지 않아야 함을 의미한다.
Q2. 다음 중 NoSQL 데이터베이스 유형과 대표 DB의 연결이 올바른 것은?
① Document-oriented — HBase, Cassandra
② Key-value — Redis, Memcached
③ Column-oriented — MongoDB, CouchDB
④ Graph — Redis, Neo4j
Q3. 다음 중 CAP 이론에 대한 설명으로 올바른 것은?
① 분산 시스템에서 Consistency, Availability, Partition Tolerance 세 가지를 동시에 모두 만족할 수 있다.
② CAP 이론에서 오직 하나의 속성만 선택하여 만족할 수 있다.
③ 분산 시스템에서 세 속성 중 두 가지만 동시에 만족할 수 있다는 이론이다.
④ CAP 이론은 단일 서버 시스템에만 적용된다.
Q4. 다음 중 HDFS(Hadoop Distributed File System)의 구성 요소가 아닌 것은?
① 네임 노드(Name Node)
② 청크 서버(Chunk Server)
③ 데이터 노드(Data Node)
④ 복제(Replication)
Q5. 다음 중 NoSQL의 BASE 특성에 해당하지 않는 것은?
① Basically Available
② Soft-State
③ Eventually Consistency
④ Atomicity
기본문제 해설
Q1 정답: ③
Isolation(독립성)은 동시에 실행되는 여러 트랜잭션이 서로 간섭하지 않고 독립적으로 수행됨을 의미합니다. ①은 Consistency(일관성)의 설명, ②는 Durability(영속성)와 반대되는 설명, ④는 Atomicity(원자성)의 설명입니다.
Q2 정답: ②
Key-value 데이터베이스의 대표 DB는 Redis와 Memcached입니다. ①의 HBase와 Cassandra는 Column-oriented, ③의 MongoDB와 CouchDB는 Document-oriented, ④에서 Redis는 Key-value이므로 Graph와 함께 묶이면 틀립니다.
Q3 정답: ③
CAP 이론은 분산 시스템에서 Consistency, Availability, Partition Tolerance 세 속성 중 두 가지만 동시에 만족할 수 있다는 이론입니다. ①은 ‘모두 만족 가능’으로 틀렸고, ②는 ‘하나만’으로 틀렸으며, ④는 단일 서버가 아닌 분산 시스템에 적용됩니다.
Q4 정답: ②
청크 서버(Chunk Server)는 HDFS가 아닌 GFS(Google File System)의 구성 요소입니다. HDFS의 구성 요소는 네임 노드, 보조 네임 노드, 데이터 노드, 복제(Replication)입니다.
Q5 정답: ④
NoSQL의 BASE 특성은 Basically Available, Soft-State, Eventually Consistency입니다. Atomicity(원자성)는 RDBMS의 ACID 특성에 해당합니다.
고난도 확인문제 3문제
HQ1. CAP 이론에서 다음의 DBMS가 선택한 조합이 올바르게 연결된 것은?
(가) HBase, MongoDB, Redis
(나) Dynamo, Cassandra, CouchDB
(다) RDBMS, MySQL, Maria DB
① (가) CA / (나) CP / (다) AP
② (가) CP / (나) AP / (다) CA
③ (가) AP / (나) CA / (다) CP
④ (가) CP / (나) CA / (다) AP
HQ2. 다음 중 NoSQL과 RDBMS에 대한 비교 설명으로 틀린 것은?
① RDBMS는 SQL을 사용하고, NoSQL은 Scheme Less 구조를 지원한다.
② RDBMS의 트랜잭션 특징은 ACID이고, NoSQL의 DBMS관점 특성은 BASE이다.
③ RDBMS는 수평적 확장(Scale-out)이 용이하고, NoSQL은 수직적 확장(Scale-up)만 가능하다.
④ NoSQL은 대용량 읽기/쓰기 성능이 RDBMS보다 우수하다.
HQ3. 다음 중 GFS(Google File System)와 HDFS에 대한 설명으로 올바른 것을 모두 고른 것은?
(가) GFS 1.0의 청크 크기는 64MB, GFS 2.0의 청크 크기는 128MB이다.
(나) HDFS는 하둡 분산 파일 시스템만을 위한 별도의 스토리지가 있는 구조이다.
(다) HDFS의 네임 노드는 메타데이터를 관리하고, 데이터 노드는 실제 데이터 블록을 저장한다.
(라) GFS의 구성 요소는 클라이언트, 마스터, 청크 서버이다.
① (가), (다)
② (가), (나), (다)
③ (가), (다), (라)
④ (나), (다), (라)
고난도 해설 (풀이과정 포함)
HQ1 정답: ②
풀이: CAP 이론의 조합별 대표 DBMS를 정확히 연결해야 합니다. CP 조합(일관성+분산가능)에는 Big Table, HBase, MongoDB, Redis가 해당합니다. AP 조합(유효성+분산가능)에는 Dynamo, Voldmort, Cassandra, CouchDB가 해당합니다. CA 조합(일관성+유효성)에는 RDBMS, MySQL, Maria DB가 해당합니다. 따라서 (가) CP / (나) AP / (다) CA → 정답 ②.
HQ2 정답: ③
풀이: ①은 맞는 설명입니다. ②는 맞는 설명입니다. ③은 틀린 설명입니다. RDBMS는 수직적 확장(Scale-up)이 일반적이고, NoSQL이 수평적 확장(Scale-out)에 유리합니다. NoSQL의 특징으로 ‘확장성 — 클러스터 기반 서버 여러 개 이용’이 명시되어 있습니다. ④는 맞는 설명입니다. 따라서 정답 ③.
HQ3 정답: ③
풀이: (가) GFS 1.0 = 64MB, GFS 2.0 = 128MB → 맞습니다. (나) HDFS는 하둡 분산 파일 시스템만을 위한 별도의 스토리지가 없는 구조입니다. 로컬 디스크를 이용합니다 → 틀린 설명. (다) 네임 노드 = 메타데이터 관리, 데이터 노드 = 실제 데이터 저장 → 맞습니다. (라) GFS 구성: 클라이언트, 마스터, 청크 서버 → 맞습니다. 따라서 올바른 것은 (가), (다), (라) → 정답 ③.
NoSQL 4종류 핵심 요약표
| NoSQL 종류 | 저장 방식 | 대표 DB |
|---|---|---|
| Document-oriented | 문서(JSON/BSON) 형식으로 저장 | MongoDB, CouchDB, Azure Cosmos DB |
| Key-value | 키-값 쌍으로 저장 | Redis, Memcached, Hazelcast |
| Column-oriented | 행(Row) 기반으로 저장·처리 | HBase, Cassandra, Google BigTable |
| Graph | 노드(Vertex) + 연결선(Edge)으로 표현 | Neo4j, Blazegraph, OrientDB |
| CAP 조합 | 만족 속성 | 대표 DBMS |
|---|---|---|
| CA | 일관성 + 유효성 | RDBMS, MySQL, Maria DB |
| CP | 일관성 + 분산 가능 | HBase, MongoDB, Redis, Big Table |
| AP | 유효성 + 분산 가능 | Dynamo, Cassandra, CouchDB |
다음 편 예고
2편에서는 RDBMS의 ACID 속성, NoSQL 4가지 종류, CAP 이론, GFS·HDFS 분산파일시스템까지 데이터 저장 단원 전반을 완벽하게 정리했습니다. 다음 편에서는 빅데이터 처리 기술과 분석 도구 관련 핵심 개념을 이어서 다룰 예정입니다. 빅데이터분석기사 합격을 위한 체계적인 시리즈 학습을 계속 이어가세요.
