Brain
Science
root
/
학습 노트
/
Study Note
/
5: 데이터베이스 (Database)
/
5. 분산 데이터베이스, NoSQL 및 NewSQL
5. 분산 데이터베이스, NoSQL 및 NewSQL
261. 분산 데이터베이스 (Distributed Database) 목표 - 단일 시스템처럼 보이게 하는 투명성(Transparency) 제공
262. 분산 데이터베이스 투명성 6가지 규칙
263. 위치 투명성 (Location Transparency) - 데이터 물리적 위치 몰라도 접근
264. 분할 투명성 (Fragmentation/Partition Transparency) - 데이터 분할 여부 은닉
265. 복제 투명성 (Replication Transparency) - 데이터 중복 유지 및 갱신 투명
266. 병행 투명성 (Concurrency) / 장애 투명성 (Failure) / 지역 사상 투명성 (Local Mapping)
267. 데이터 분할 기법 (Fragmentation)
268. 수평 분할 (Horizontal Fragmentation) - 튜플(행) 단위 분할, 셀렉트 연산
269. 수직 분할 (Vertical Fragmentation) - 속성(열) 단위 분할, 프로젝트 연산 (PK 반드시 포함)
270. 복제 (Replication) - 동기식 복제 (Synchronous) vs 비동기식 복제 (Asynchronous)
271. 마스터-슬레이브 (Master-Slave / Primary-Replica) 복제 - 읽기/쓰기 분산 아키텍처
272. 멀티 마스터 (Multi-Master / Peer-to-Peer) 복제 - 양방향 쓰기 가능, 충돌 해결 매커니즘 필수
273. 동종 분산 DB vs 이종 (Heterogeneous) 분산 DB 통합
274. NoSQL (Not Only SQL) 데이터베이스 - 스키마리스(Schemaless), 수평적 확장(Scale-out), 분산 아키텍처
275. NoSQL 데이터 모델 4가지
276. 키-값 저장소 (Key-Value Store) - 속도 최적화, Redis, Memcached, Amazon DynamoDB
문서 저장소 (Document Store)
2024-03-21
컬럼 패밀리 저장소 (Column Family Store)
2024-03-21
그래프 저장소 (Graph Store)
2024-03-21
280. 샤딩 (Sharding) - NoSQL의 수평적 파티셔닝 기술 (데이터베이스 분할)
281. 샤드 키 (Shard Key / Partition Key) - 분산 배치 기준이 되는 키 설계 중요성
282. 해시 샤딩 (Hash Sharding) - 균등 분배 / 레인지 샤딩 (Range Sharding) - 범위 검색 유리 (핫스팟 문제 유의)
283. 일관된 해싱 (Consistent Hashing) - 노드 추가/삭제 시 재배치 최소화 (링 구조 배열)
284. 맵리듀스 (MapReduce) - NoSQL/Hadoop의 분산 데이터 병렬 처리 프로그래밍 모델 (Map: 매핑/필터링, Reduce: 집계)
285. 그래프 쿼리 언어 - Cypher (Neo4j), Gremlin, SPARQL
286. 시계열 데이터베이스 (Time Series Database, TSDB) - 시간순 로깅 특화, InfluxDB, Prometheus
287. 시계열 데이터 특성 - 높은 쓰기 처리량, 다운샘플링 (Downsampling), 보존 정책 (Retention Policy)
288. 공간 데이터베이스 (Spatial Database) - 좌표, 기하학적 객체 쿼리, PostGIS 확장
289. R 트리 (R-Tree) / MBR (Minimum Bounding Rectangle) - 공간 검색 인덱스 구조
290. NewSQL 데이터베이스 - RDB의 ACID 트랜잭션과 NoSQL의 수평적 확장성(Scale-out) 결합 패러다임
291. 구글 스패너 (Google Cloud Spanner) - 글로벌 분산, 트루타임(TrueTime/원자시계+GPS) 기반 글로벌 일관성 보장 NewSQL
292. 칵로치DB (CockroachDB) - 생존성 극대화 분산 SQL 데이터베이스
293. 티아이디비 (TiDB) - HTAP (Hybrid Transactional/Analytical Processing) 지원 NewSQL
294. HTAP - OLTP(트랜잭션)와 OLAP(분석) 워크로드를 단일 데이터베이스 플랫폼에서 분리/동시 처리하는 기술 (Row+Column 하이브리드 엔진)
295. 메모리 캐싱 (Caching) 기술 적용 - Look-aside (Lazy Loading) 패턴, Write-through 패턴
296. 캐시 스탬피드 (Cache Stampede) / Thundering Herd 문제 - 대규모 동시 캐시 미스 발생 부하
297. 레디스 (Redis) 자료구조 - String, List, Set, Sorted Set, Hash
298. 몽고DB (MongoDB) 아키텍처 - 레플리카 셋 (Replica Set), 샤드 클러스터 (mongos, config server, shard)
299. 카산드라 (Cassandra) 특징 - 링 기반 피어투피어, 가십 프로토콜(Gossip Protocol), 튜너블 컨시스턴시 (Tunable Consistency - Quorum Read/Write)
300. 툼스톤 (Tombstone) 메커니즘 - 분산 DB에서 삭제된 레코드 마킹 (삭제 동기화 지연 해결)
301. 데이터 마이그레이션 도구 및 CDC (Change Data Capture) - Debezium 등 실시간 변경 로깅/전송
302. 엘라스틱서치 (Elasticsearch) - 루씬(Lucene) 기반 텍스트 검색 및 분석 역색인(Inverted Index) DB
303. 역색인 (Inverted Index) 구조 - 단어(Term)가 포함된 문서 ID 리스트 매핑 (검색 엔진 핵심)
304. 데이터 레이크하우스 (Data Lakehouse) - 데이터 레이크(비정형)와 웨어하우스(정형)의 융합 구조 (Databricks, Delta Lake)
305. 오라클 RAC (Real Application Clusters) - 공유 디스크(Shared Disk) 기반 다중 인스턴스 클러스터링 RDB (수직적 한계 완화)
306. 셰어드 낫띵 (Shared Nothing) 아키텍처 - 데이터 분할 공유 (수평 확장, NoSQL 기본 구조)
307. 글로벌 보조 인덱스 (GSI, Global Secondary Index) 분산 환경 오버헤드
2026-04-07
308. 폴리글랏 퍼시스턴스 (Polyglot Persistence) - 마이크로서비스마다 목적에 맞는 최적의 이기종 DB 선택/혼용
309. CQRS 아키텍처와 DB 동기화 (Event Sourcing 연동)
2026-04-07
310. 멀티테넌트 (Multi-tenant) 데이터베이스 구조 - 논리적 스키마 분리, 물리적 인스턴스 분리 격리
2026-04-07
311. 데이터베이스 퍼징 (Database Fuzzing) 및 테스트 취약점
2026-04-07
312. 클라우드 관리형 DB (DBaaS, Database as a Service) - AWS RDS, Azure SQL 등
2026-04-07
313. 그래프 신경망 (GNN) 연계를 위한 그래프 데이터베이스 활용
2026-04-07
314. NoSQL 모델링 전략 - 정규화가 아닌 쿼리 패턴 주도 설계 (Query-driven Modeling), 역정규화 내재화
2026-04-07
315. 임베디드 도큐먼트 (Embedded Document) 패턴 - 연관 데이터를 한 문서에 중첩 저장 (조인 배제)
2026-04-07
316. 참조 (Reference) 패턴 - 문서 크기 한계 시 외부 링크 저장
2026-04-07
317. 버저닝 (Versioning) 데이터 모델 설계
2026-04-07
318. 트리 구조 저장을 위한 NoSQL 모델 (Materialized Path, Nested Sets)
2026-04-07
319. 블록체인 기반 변조 방지 원장 데이터베이스 (Amazon QLDB)
2026-04-07
320. 다중 모델 데이터베이스 (Multi-model Database) - 단일 엔진 내 Document, Graph, KV, Relational 지원 (ArangoDB 등)
2026-04-07