Booil Jung

NoSQL

데이터베이스 기술의 역사는 데이터 관리 패러다임의 진화 과정 그 자체라 할 수 있다. 수십 년간 이 영역의 절대적 표준으로 군림해 온 관계형 데이터베이스 관리 시스템(RDBMS)은 데이터의 정형화와 무결성을 통해 정보 시스템의 신뢰성을 담보하는 견고한 기반을 제공했다. 그러나 21세기에 들어서면서 데이터의 양, 속도, 다양성이 전례 없는 수준으로 폭증함에 따라, 기존 RDBMS가 지닌 구조적 한계는 점차 명확해졌다. 본 서론에서는 NoSQL이라는 새로운 패러다임이 태동하게 된 역사적, 기술적 필연성을 RDBMS의 유산과 그 한계를 통해 조명하고, ‘Not Only SQL’이라는 용어에 담긴 철학적 의미를 탐구함으로써 앞으로 전개될 논의의 서막을 연다.

1970년대에 이르러 데이터베이스 기술은 중요한 전환점을 맞이했다. 이전의 계층형 및 네트워크형 데이터 모델은 데이터의 논리적 구조와 물리적 저장 방식이 강하게 결합되어 있어, 데이터베이스 구조의 작은 변경이 애플리케이션 코드의 대대적인 수정을 유발하는 문제를 안고 있었다.1 이러한 한계를 극복하기 위해 등장한 관계형 모델은 데이터를 행(Row)과 열(Column)으로 구성된 단순한 2차원 테이블의 집합으로 표현함으로써, 데이터의 논리적 구성과 물리적 저장 구조를 성공적으로 분리했다.1

이러한 구조적 혁신과 더불어, 관계형 모델의 성공을 이끈 두 가지 핵심 기둥은 바로 SQL(Structured Query Language)과 ACID 트랜잭션이었다. SQL은 데이터베이스와 상호작용하기 위한 표준화된 언어로서, 개발자들이 데이터 저장 방식의 복잡성에서 벗어나 데이터 자체에 집중할 수 있게 했다.1 한편, ACID 트랜잭션은 데이터베이스 연산의 신뢰성을 보장하는 네 가지 핵심 속성, 즉 원자성(Atomicity), 일관성(Consistency), 고립성(Isolation), 지속성(Durability)을 정의한다.3 이 ACID 원칙은 금융 거래와 같이 데이터의 정확성과 무결성이 무엇보다 중요한 시스템에서 RDBMS를 대체 불가능한 선택지로 만들었다.

데이터의 일관성을 유지하기 위한 또 다른 핵심 전략은 정규화(Normalization)였다. 정규화는 데이터의 중복을 최소화하기 위해 테이블을 논리적으로 분해하는 과정으로, 이를 통해 데이터 저장 공간을 효율적으로 사용하고 데이터 변경 시 발생할 수 있는 이상 현상(Anomaly)을 방지했다.6 이처럼 RDBMS는 SQL, ACID, 정규화라는 강력한 도구를 통해 지난 수십 년간 데이터 관리의 황금 표준으로 자리매김했다.

21세기 초, 웹 2.0의 등장과 함께 데이터 환경은 근본적인 변화를 맞이했다. Facebook, Twitter와 같은 소셜 미디어 서비스, 사물 인터넷(IoT) 센서, 모바일 애플리케이션 등에서 생성되는 데이터는 그 양이 기하급수적으로 증가했을 뿐만 아니라, 텍스트, 이미지, 동영상, 로그 파일 등 그 형태 또한 기존의 정형 데이터를 압도하는 비정형(Unstructured) 및 반정형(Semi-structured) 데이터가 주를 이루게 되었다.3

이러한 데이터 환경의 변화는 RDBMS의 구조적 한계를 드러내는 계기가 되었다. RDBMS의 가장 큰 특징인 엄격한 스키마는 데이터의 일관성을 보장하는 장점이었지만, 데이터 구조가 수시로 변경되는 애자일(Agile) 개발 환경에서는 오히려 빠른 개발과 배포를 저해하는 족쇄로 작용했다.1 또한, 정규화를 통해 잘게 쪼개진 테이블들은 데이터를 조회할 때마다 복잡한 조인(Join) 연산을 요구했는데, 이는 페타바이트(PB)급의 대규모 데이터셋에서는 감당하기 어려운 성능 저하를 유발했다.1

무엇보다 현대적인 웹 애플리케이션은 전 세계 수백만 명의 동시 접속자를 처리하면서도 밀리초(ms) 단위의 낮은 지연 시간을 유지해야 하는 ‘웹 스케일(Web-Scale)’ 요구사항에 직면했다.1 RDBMS는 주로 단일 서버의 성능을 높이는 수직적 확장(Scale-Up)에 의존했는데, 이는 고사양 서버의 막대한 비용 문제와 함께 확장성 자체의 물리적 한계에 부딪혔다.2 대규모 읽기/쓰기, 빠른 응답 시간, 상시 가동을 위한 높은 가용성 등 새로운 시대의 요구사항 앞에서 RDBMS만으로는 더 이상 충분하지 않다는 인식이 확산되기 시작했다.

이러한 기술적 배경 속에서 2009년, Last.fm의 Johan Oskarsson이 오픈 소스 분산 데이터베이스 관련 모임을 조직하며 ‘NoSQL’이라는 용어를 처음 사용했다.13 이 용어는 단순히 기술적 분류를 넘어, 수십 년간 데이터베이스 시장을 독점해 온 RDBMS 패러다임에 대한 일종의 반발 정신을 담고 있었다.15

초기에는 ‘No SQL’ 즉, SQL을 사용하지 않는 데이터베이스로 오해되기도 했으나, 현재는 ‘Not Only SQL’로 해석하는 것이 일반적이다.17 이는 SQL이나 관계형 모델을 완전히 부정하고 대체하려는 것이 아니라, 데이터 저장 및 관리 문제에 있어 SQL 외에도 다양한 해결책이 존재하며, 문제의 특성에 맞는 최적의 도구를 선택해야 한다는 실용주의적 철학을 내포한다.9

이러한 철학적 전환은 NoSQL이 단순히 RDBMS의 성능 문제를 해결하기 위한 기술적 대안을 넘어, 데이터를 바라보고 관리하는 근본적인 관점의 변화, 즉 패러다임의 전환임을 시사한다. RDBMS가 데이터를 ‘관계’와 ‘정형화된 스키마’라는 엄격한 틀 안에서 중앙집중적으로 통제하려는 ‘통제 중심’ 패러다임이었다면, NoSQL은 ‘스키마 유연성’과 ‘분산’을 통해 데이터 관리의 자율성을 애플리케이션 개발자에게 부여하고 다양한 데이터 모델을 허용하는 ‘자율성과 다양성 중심’ 패러다임이라 할 수 있다. 이 패러다임은 단일 데이터베이스가 모든 문제를 해결할 수 없다는 인식 아래, 애플리케이션의 각 기능에 최적화된 여러 데이터 저장소를 조합하여 사용하는 ‘폴리글랏 영속성(Polyglot Persistence)’이라는 현대적인 아키텍처 사상으로 발전하게 되었다.6

NoSQL 데이터베이스는 단일 기술이 아닌, 공통된 철학을 공유하는 다양한 기술들의 집합체다. 그 본질을 이해하기 위해서는 전통적인 RDBMS와 근본적으로 어떤 차이가 있는지 비교 분석하는 것이 효과적이다. 이 장에서는 NoSQL을 정의하는 세 가지 핵심 원리인 데이터 모델, 스키마 유연성, 그리고 확장성 패러다임을 RDBMS와 비교하여 심층적으로 분석하고, 이러한 차이가 어떻게 NoSQL의 고유한 특성을 형성하는지 탐구한다.

데이터를 어떻게 구조화하고 저장하는가 하는 데이터 모델의 차이는 RDBMS와 NoSQL을 가르는 가장 근본적인 분기점이다.

이러한 데이터 모델의 유연성은 개발 생산성에도 직접적인 영향을 미친다. 많은 NoSQL 데이터베이스, 특히 문서 모델은 데이터를 애플리케이션 코드에서 사용하는 객체(Object)와 매우 유사한 형태로 저장한다. 이로 인해 RDBMS 환경에서 흔히 발생하는 ‘객체-관계 임피던스 불일치(Object-Relational Impedance Mismatch)’ 문제를 완화하고, 복잡한 객체-관계 매핑(ORM) 계층의 필요성을 줄여준다.6

데이터 구조의 정의, 즉 스키마(Schema)를 언제, 어떻게 적용하는지에 대한 접근 방식은 두 패러다임 간의 또 다른 핵심적인 차이를 만든다.

이러한 차이는 데이터 관리에 대한 책임 소재의 변화를 의미하기도 한다. RDBMS에서는 데이터베이스가 데이터 무결성에 대한 상당 부분의 책임을 지지만, NoSQL에서는 그 책임이 애플리케이션 개발자에게로 상당 부분 이전된다. 즉, NoSQL의 유연성은 개발자에게 더 큰 자율성을 부여하는 동시에, 애플리케이션 레벨에서 데이터의 일관성과 유효성을 검증해야 하는 새로운 과제를 안겨준다.29 이는 기술 선택 시 반드시 고려해야 할 중요한 트레이드오프다.

데이터와 사용자 트래픽이 증가함에 따라 시스템의 처리 용량을 늘리는 확장(Scaling) 방식에서도 두 패러다임은 뚜렷한 차이를 보인다.

NoSQL의 수평 확장은 주로 샤딩(Sharding)이라는 기술을 통해 구현된다. 샤딩은 대규모 데이터셋을 여러 개의 작은 조각(샤드)으로 나누어 각기 다른 서버에 분산 저장하는 기법이다.35 RDBMS 환경에서도 샤딩을 구현할 수는 있지만, 테이블 간의 관계와 트랜잭션의 ACID 속성을 유지하면서 데이터를 분산시키는 것은 매우 복잡하고 어려운 작업이다.35 반면, 관계(Join)가 없고 데이터 모델이 유연한 NoSQL은 샤딩을 훨씬 자연스럽고 효율적으로 적용할 수 있다.

다음 표는 RDBMS와 NoSQL의 핵심적인 특징을 요약하여 비교한 것이다.

표 1: RDBMS와 NoSQL의 핵심 특징 비교

특징 RDBMS (관계형 데이터베이스) NoSQL (비관계형 데이터베이스)
데이터 모델 정형 데이터 (테이블, 행, 열) 비정형/반정형 데이터 (키-값, 문서, 컬럼, 그래프 등)
스키마 엄격함 (Schema-on-Write) 유연함 (Schema-on-Read)
확장성 수직 확장 (Scale-Up) 중심 수평 확장 (Scale-Out) 중심
트랜잭션 ACID (강한 일관성) BASE (결과적 일관성, 가용성 중심)
데이터 관계 조인(Join)을 통한 관계 표현 비정규화, 임베딩을 통한 데이터 중복 허용
쿼리 언어 표준 SQL DB별 다양한 쿼리 언어 또는 API (MQL, CQL 등)

결론적으로, NoSQL의 핵심 혁신은 데이터 모델의 다형성, 스키마의 유연성, 그리고 수평적 확장성에 있으며, 이는 RDBMS가 지배하던 시대에는 상상하기 어려웠던 대규모의 동적인 데이터를 처리할 수 있는 새로운 가능성을 열었다. 그러나 이러한 유연성과 성능은 데이터베이스의 책임을 애플리케이션으로 옮겨온 대가이며, 이는 NoSQL 시스템을 설계하고 운영하는 데 있어 새로운 고려사항을 제시한다.

NoSQL 데이터베이스는 대부분 분산 시스템을 기반으로 한다. 따라서 NoSQL의 동작 원리를 깊이 있게 이해하기 위해서는 분산 시스템을 지배하는 핵심 이론들을 먼저 살펴보아야 한다. 이 장에서는 RDBMS의 근간을 이루는 ACID 모델과 대척점에 있는 BASE 철학을 소개하고, 분산 시스템 설계의 근본적인 트레이드오프를 설명하는 CAP 정리를 분석한다. 나아가 CAP 정리의 한계를 보완하고 현대 분산 시스템의 복잡성을 더 잘 설명하는 PACELC 정리까지 탐구함으로써 NoSQL 기술의 이론적 토대를 공고히 한다.

데이터베이스 트랜잭션 모델은 데이터의 변경 사항을 어떻게 안정적으로 처리할 것인가에 대한 철학을 담고 있다. RDBMS와 NoSQL은 이 지점에서 근본적으로 다른 길을 선택했다.

2000년, 컴퓨터 과학자 Eric Brewer는 분산 시스템 설계에 있어 근본적인 제약을 설명하는 CAP 정리를 제시했다.41 이 정리는 어떤 분산 데이터 저장소도 다음 세 가지 속성 중 최대 두 가지만을 동시에 만족시킬 수 있다는 것을 골자로 한다.3

현실의 분산 시스템에서 네트워크 장애는 언제든 발생할 수 있는 피할 수 없는 문제다. 따라서 분할 허용성(P)은 선택이 아닌 필수적인 속성으로 간주된다.42 결국, CAP 정리는 네트워크 분할이 발생했을 때 시스템 설계자가 일관성(C)과 가용성(A) 사이에서 불가피한 선택을 해야 한다는 것을 의미한다.

CAP 정리는 분산 시스템의 트레이드오프를 이해하는 데 강력한 프레임워크를 제공하지만, 한계 또한 명확하다. 이 정리는 오직 네트워크 분할이라는 ‘장애 상황’에서의 선택만을 다룰 뿐, 대부분의 시간 동안 시스템이 동작하는 ‘정상 상황’에서의 트레이드오프는 설명하지 못한다.45

이러한 한계를 보완하기 위해 Daniel Abadi는 PACELC 정리를 제안했다. 이 정리는 CAP의 논리를 확장하여 다음과 같이 설명한다: 만약 Partition(분할)이 발생하면, 시스템은 Availability(가용성)와 Consistency(일관성) 사이에서 선택해야 한다. 하지만 그 외(Else)의 정상 상황에서는, Latency(지연시간)와 Consistency(일관성) 사이에서 선택해야 한다.51

이러한 이론적 프레임워크들은 NoSQL 시스템을 선택하고 설계할 때 중요한 지침을 제공한다. 다음 표는 ACID와 BASE, 그리고 PACELC 정리에 따른 데이터베이스 시스템의 특성을 요약한 것이다.

표 2: ACID와 BASE 속성 비교

속성 ACID BASE
목표 데이터 정확성, 신뢰성 확장성, 가용성
일관성 강한 일관성 (Strong Consistency) 결과적 일관성 (Eventual Consistency)
가용성 일관성을 위해 희생될 수 있음 최우선으로 보장 (Basically Available)
상태 항상 일관된 상태 일시적으로 비일관적 상태 허용 (Soft State)
주 적용 분야 RDBMS (금융, 재고 관리 등) NoSQL (소셜 미디어, 빅데이터 분석 등)

표 3: PACELC 정리에 따른 데이터베이스 시스템 분류

  Else: Latency 선호 (EL) Else: Consistency 선호 (EC)
Partition: Availability 선호 (PA) PA/EL (가용성/지연시간 우선) - Amazon DynamoDB - Apache Cassandra PA/EC (장애 시 가용성, 평시 일관성 우선) - MongoDB
Partition: Consistency 선호 (PC) PC/EL (장애 시 일관성, 평시 지연시간 우선) - 이론적 조합, 드묾 PC/EC (항상 일관성 우선) - CockroachDB (NewSQL) - VoltDB (NewSQL) - RDBMS

중요한 점은, CAP이나 PACELC가 시스템을 ‘CP 또는 AP’와 같이 이분법적으로 규정하는 것이 아니라는 것이다. 실제 시스템들은 완벽한 CP나 AP가 아니며, 이 두 극단 사이의 스펙트럼 어딘가에 위치한다.45 예를 들어, Cassandra는 요청마다 일관성 수준을 조절할 수 있는 ‘튜닝 가능한 일관성(tunable consistency)’을 제공하여, 개발자가 특정 요구사항에 맞춰 일관성과 가용성/지연시간의 균형을 동적으로 선택할 수 있게 한다. 따라서 이 이론들은 데이터베이스를 특정 상자에 가두는 분류법이 아니라, 분산 시스템 설계 시 고려해야 할 다차원적인 ‘트레이드오프 공간(trade-off space)’을 이해하는 유용한 프레임워크로 활용해야 한다.

NoSQL은 단일한 데이터 모델을 강요하지 않고, 문제의 특성에 따라 최적의 구조를 선택할 수 있는 ‘다형성(Polymorphism)’을 제공한다. 이는 NoSQL의 가장 큰 강점 중 하나로, 데이터를 보다 자연스럽고 효율적으로 표현할 수 있게 한다. 이 장에서는 NoSQL을 구성하는 네 가지 주요 데이터 모델-키-값 스토어, 문서 스토어, 컬럼 패밀리 스토어, 그래프 데이터베이스-의 구조, 특징, 장단점 및 대표적인 시스템을 심층적으로 분석한다. 각 모델이 어떤 유형의 문제 해결에 최적화되어 있는지 구체적인 사용 사례를 통해 살펴본다.

다음 표는 네 가지 주요 NoSQL 데이터 모델의 핵심 특징을 요약하여 비교한 것이다.

표 4: NoSQL 데이터 모델 유형별 특징 및 대표 시스템

데이터 모델 구조 장점 단점 주요 사용 사례 대표 시스템
키-값 스토어 (Key, Value) 쌍 단순, 빠른 속도, 높은 확장성 복잡한 쿼리 불가, 값 검색 어려움 캐싱, 세션 관리, 실시간 순위표 Redis, DynamoDB
문서 스토어 (Key, Document) 쌍, JSON/BSON 유연한 스키마, 풍부한 쿼리, 직관적 개발 데이터 중복 가능성, 대규모 트랜잭션 복잡 콘텐츠 관리, 사용자 프로필, 제품 카탈로그 MongoDB, Couchbase
컬럼 패밀리 스토어 (Row Key, Column Family, Column, Timestamp) 대규모 쓰기 성능, 높은 확장성, 희소 데이터 효율적 복잡한 쿼리 및 집계 어려움, 높은 학습 곡선 시계열 데이터, 로그 분석, IoT 데이터 Cassandra, HBase
그래프 데이터베이스 (Node, Edge, Property) 복잡한 관계 모델링, 빠른 관계 탐색 특정 사용 사례에 한정, 대규모 집계 연산 비효율 소셜 네트워크, 추천 엔진, 사기 탐지 Neo4j, Amazon Neptune

결론적으로, NoSQL 데이터 모델의 선택은 저장하려는 ‘데이터의 구조’ 자체보다, 애플리케이션이 해당 데이터를 ‘어떻게 접근하고 활용할 것인가(Access Pattern)’에 의해 결정되어야 한다. RDBMS가 데이터의 논리적 구조를 정규화하여 모델링하는 ‘데이터 중심’ 접근 방식을 취한다면, NoSQL은 애플리케이션의 쿼리 패턴에 최적화된 구조를 설계하는 ‘애플리케이션 중심’ 접근 방식을 요구한다.85 예를 들어, Cassandra의 데이터 모델링은 “쿼리를 먼저 설계하고, 그 쿼리에 맞는 테이블을 만들라”는 원칙을 따를 정도로 접근 패턴을 중시한다. 이는 NoSQL로의 기술 전환이 단순히 데이터베이스를 교체하는 것을 넘어, 데이터 모델링에 대한 철학적 전환을 필요로 함을 시사한다.

NoSQL 데이터베이스의 성능과 확장성을 최대한 활용하기 위해서는 그 특성에 맞는 데이터 모델링 전략이 필수적이다. RDBMS의 정규화(Normalization)가 데이터의 중복을 최소화하고 일관성을 유지하는 데 초점을 맞추었다면, NoSQL의 모델링은 애플리케이션의 읽기 성능을 극대화하는 데 주안점을 둔다. 이 장에서는 NoSQL 모델링의 핵심 전략인 비정규화(Denormalization)의 개념과 그에 따른 트레이드오프를 분석하고, 특히 문서 데이터베이스에서 데이터 관계를 표현하는 주요 패턴인 임베딩(Embedding)과 참조(Referencing)를 구체적인 예시를 통해 심층 비교한다.

문서 데이터베이스(예: MongoDB)에서 데이터 간의 관계를 모델링하는 방식은 크게 임베딩과 참조, 두 가지로 나뉜다. 이 둘은 각각 비정규화와 정규화에 해당하는 접근법으로, 애플리케이션의 데이터 접근 패턴에 따라 신중하게 선택해야 한다.

결론적으로, NoSQL 데이터 모델링의 성패는 애플리케이션이 데이터를 어떻게 사용하고 조회할 것인지, 즉 ‘쿼리 패턴(Query Pattern)’을 얼마나 정확하게 예측하고 그에 맞게 구조를 설계하는가에 달려있다.86 RDBMS처럼 데이터의 논리적 관계를 우선하여 정규화된 모델을 만든 뒤 쿼리를 작성하는 것이 아니라, 가장 빈번하고 중요한 쿼리가 무엇인지를 먼저 정의하고, 해당 쿼리가 가장 효율적으로 실행될 수 있도록 데이터 구조(임베딩, 참조, 비정규화)를 결정해야 한다.

이러한 접근 방식은 NoSQL 데이터 모델링이 프로젝트 초기에 한 번에 완성되는 정적인 ‘설계(Design)’가 아니라, 애플리케이션의 발전과 사용자 행동의 변화에 따라 지속적으로 성능을 측정하고 구조를 개선해 나가는 동적인 ‘튜닝(Tuning)’ 과정에 가깝다는 것을 의미한다.68 이는 개발팀에게 단순히 데이터베이스를 사용하는 능력을 넘어, 데이터 아키텍처를 지속적으로 관리하고 진화시킬 수 있는 역량을 요구하는 중요한 변화다.

앞서 논의한 이론적 기반과 데이터 모델링 전략이 실제 NoSQL 시스템에서 어떻게 구체적으로 구현되어 성능과 확장성을 달성하는지 살펴보는 것은 매우 중요하다. 이 장에서는 시장에서 널리 사용되는 주요 NoSQL 시스템들의 핵심 아키텍처와 기능을 심층적으로 분석한다. 문서 데이터베이스의 강자인 MongoDB의 데이터 처리 엔진인 ‘집계 파이프라인’, 분산 쓰기 성능에 최적화된 Cassandra의 데이터 분산 및 정렬 메커니즘, 그리고 SQL과 NoSQL의 장점을 결합하려는 NewSQL의 대표주자 CockroachDB의 아키텍처를 통해 이론이 실제 기술로 구현되는 과정을 탐구한다.

MongoDB는 유연한 문서 모델뿐만 아니라, 저장된 데이터를 강력하게 처리하고 분석할 수 있는 ‘집계 파이프라인(Aggregation Pipeline)’ 기능을 제공한다. 이는 RDBMS의 복잡한 SQL 쿼리와 유사한 작업을 데이터베이스 서버 내에서 효율적으로 수행할 수 있게 해주는 핵심 기능이다.

Apache Cassandra는 대규모 분산 환경에서의 쓰기 성능과 고가용성에 특화된 컬럼 패밀리 데이터베이스다. 이러한 특성은 데이터를 클러스터에 분산하고, 파티션 내에서 정렬하는 독특한 키(Key) 구조에 기반한다.

NewSQL은 RDBMS의 강력한 일관성과 친숙한 SQL 인터페이스, 그리고 NoSQL의 수평적 확장성과 고가용성을 결합하려는 시도에서 탄생한 새로운 데이터베이스 패러다임이다.105 그 대표주자 중 하나인 CockroachDB의 아키텍처는 이러한 융합이 어떻게 이루어지는지를 잘 보여준다.

이처럼 각 NoSQL 시스템의 내부 아키텍처는 CAP/PACELC 정리에서 논의된 이론적 트레이드오프에 대한 각자의 구체적인 해답을 담고 있다. Cassandra의 Masterless 구조는 가용성을, MongoDB의 Primary-Secondary 복제는 일관성을, CockroachDB의 Raft 합의는 강력한 일관성을 우선시한 결과물이다. 이러한 아키텍처적 선택을 이해하는 것은 특정 비즈니스 요구사항에 가장 적합한 데이터베이스를 선택하는 데 있어 핵심적인 통찰을 제공한다.

이론과 기술적 원리를 넘어, NoSQL이 실제 비즈니스 환경에서 어떻게 대규모 문제를 해결하고 가치를 창출하는지 살펴보는 것은 매우 중요하다. 이 장에서는 전 세계 수억 명의 사용자를 대상으로 서비스를 제공하는 글로벌 IT 기업들의 사례를 통해, NoSQL이 복잡한 시스템 아키텍처의 핵심 구성 요소로 어떻게 활용되는지 심층 분석한다. 특히 Netflix, Uber와 같은 기업들이 왜 특정 NoSQL 솔루션을 선택했으며, 기존 RDBMS 및 다른 데이터 시스템과 어떻게 유기적으로 통합하여 거대한 데이터 파이프라인을 구축했는지 탐구한다.

이러한 사례들은 공통적으로 NoSQL 데이터베이스가 독립된 시스템으로 사용되기보다는, Kafka와 같은 메시지 큐, Spark와 같은 데이터 처리 엔진, Redis와 같은 캐싱 시스템, 그리고 전통적인 RDBMS와 유기적으로 결합된 전체 ‘데이터 파이프라인’의 일부로서 기능한다는 점을 보여준다. 성공적인 NoSQL 도입은 단일 제품의 성능을 평가하는 것을 넘어, 데이터의 수집, 처리, 저장, 분석, 서빙에 이르는 전체 데이터 생명주기를 고려한 통합 아키텍처를 설계하는 문제임을 명확히 시사한다.

NoSQL은 지난 10여 년간 데이터베이스 기술 지형을 근본적으로 바꾸어 놓았다. RDBMS가 해결하기 어려웠던 웹 스케일의 확장성, 비정형 데이터 처리, 그리고 빠른 개발 속도에 대한 요구를 충족시키며 현대적인 애플리케이션 아키텍처의 필수 요소로 자리 잡았다. 그러나 NoSQL이 모든 문제에 대한 만병통치약은 아니며, 그 이면에는 새로운 기술적 도전과 트레이드오프가 존재한다. 이 마지막 장에서는 NoSQL 도입 시 현실적으로 마주하게 되는 한계와 도전 과제를 검토하고, 성공적인 도입을 위한 전략적 접근법을 제시한다. 또한, 빠르게 변화하는 기술 환경 속에서 NoSQL의 미래 발전 방향과 생성형 AI 시대에서의 역할을 조망하며 본 고찰을 마무리한다.

NoSQL이 제공하는 유연성과 성능의 이면에는 다음과 같은 실질적인 도전 과제들이 존재한다.

결론적으로 ‘RDBMS와 NoSQL 중 어느 것이 더 우월한가?’라는 질문은 더 이상 유효하지 않다. 현대적인 애플리케이션 아키텍처는 두 패러다임을 대립적인 것으로 보지 않고, 각자의 강점을 활용하여 상호 보완적으로 사용하는 ‘폴리글랏 영속성(Polyglot Persistence)’ 접근 방식을 지향한다.6 이는 애플리케이션을 구성하는 각각의 마이크로서비스나 기능 단위별로 가장 적합한 데이터 저장소를 선택하여 조합하는 전략이다.

올바른 데이터베이스를 선택하기 위해서는 다음과 같은 기준을 종합적으로 고려해야 한다.

성공적인 도입을 위해서는 특정 기술에 대한 맹신을 버리고, 비즈니스 요구사항을 명확히 정의한 후, 후보 기술들에 대한 철저한 개념 증명(PoC)과 벤치마크 테스트(BMT)를 통해 실제 워크로드에서의 성능과 운영 복잡성을 검증하는 과정이 반드시 선행되어야 한다.138

NoSQL 기술은 지금도 끊임없이 진화하고 있으며, 특히 생성형 AI의 등장은 NoSQL의 역할을 더욱 중요하게 만들고 있다.

궁극적으로 NoSQL의 등장은 ‘데이터베이스’라는 개념 자체를 확장시켰다. 전통적인 데이터베이스가 데이터의 ‘저장과 조회’라는 수동적인 역할에 머물렀다면, 현대의 NoSQL 시스템들은 캐싱(Redis), 데이터 스트리밍(Kafka), 검색, 분석(Elasticsearch) 등 데이터의 생명주기 전반에 걸친 다양한 기능을 능동적으로 수행하는 ‘데이터 플랫폼’으로 진화하고 있다. 앞으로도 NoSQL 기술은 데이터 중심 아키텍처의 핵심 동력으로서, 기술의 경계를 허물고 새로운 가능성을 창출하며 그 여정을 계속해 나갈 것이다.

  1. NoSQL의 역사와 특징 - velog, 8월 3, 2025에 액세스, https://velog.io/@hanblueblue/NoSQL%EA%B3%BC-%EC%97%AD%EC%82%AC
  2. SQL과 NoSQL 비교: 5가지 주요 차이점 - Integrate.io, 8월 3, 2025에 액세스, https://www.integrate.io/ko/blog/the-sql-vs-nosql-difference-ko/
  3. nosql 등장배경 - back end 개발자!! - 티스토리, 8월 3, 2025에 액세스, https://roynus.tistory.com/316
  4. ACID vs BASE - velog, 8월 3, 2025에 액세스, https://velog.io/@jeb1225/ACIDvsBASE
  5. 데이터베이스의 ACID와 BASE 속성 - Medium, 8월 3, 2025에 액세스, https://medium.com/@delivalue100/%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4%EC%9D%98-acid%EC%99%80-base-%EB%AA%A8%EB%8D%B8-14242a1d0316
  6. NoSQL 데이터베이스란 무엇인가요? - 비관계형 데이터베이스 설명 - AWS, 8월 3, 2025에 액세스, https://aws.amazon.com/ko/nosql/
  7. [DataBase] 정규화와 비정규화의 탄생 배경 및 장단점, 8월 3, 2025에 액세스, https://superohinsung.tistory.com/126
  8. [데이터베이스] 정규화 VS 비정규화 공부 및 정리 - velog, 8월 3, 2025에 액세스, https://velog.io/@mindfulness_22/%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4-%EC%A0%95%EA%B7%9C%ED%99%94-VS-%EB%B9%84%EC%A0%95%EA%B7%9C%ED%99%94-%EA%B3%B5%EB%B6%80-%EB%B0%8F-%EC%A0%95%EB%A6%AC
  9. SQL 대 NoSQL 데이터베이스 이해 - MongoDB, 8월 3, 2025에 액세스, https://www.mongodb.com/ko-kr/resources/basics/databases/nosql-explained/nosql-vs-sql
  10. noSQL의 정의와 특징, 장단점을 알아보자 - 개발 공부 자료실, 8월 3, 2025에 액세스, https://codewos.tistory.com/11
  11. [Database] RDBMS와 NoSQL의 차이점 - 히진쓰의 서버사이드 기술 블로그, 8월 3, 2025에 액세스, https://khj93.tistory.com/entry/Database-RDBMS%EC%99%80-NOSQL-%EC%B0%A8%EC%9D%B4%EC%A0%90
  12. NoSQL 데이터베이스란 무엇인가요? - IBM, 8월 3, 2025에 액세스, https://www.ibm.com/kr-ko/think/topics/nosql-databases
  13. NoSQL - 위키백과, 우리 모두의 백과사전, 8월 3, 2025에 액세스, https://ko.wikipedia.org/wiki/NoSQL
  14. ko.wikipedia.org, 8월 3, 2025에 액세스, https://ko.wikipedia.org/wiki/NoSQL#:~:text=2009%EB%85%84%20%EC%B4%88%EC%97%90%20%EB%9D%BC%EC%8A%A4%ED%8A%B8,%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4%EB%A5%BC%20NoSQL%EC%9D%B4%EB%9D%BC%EA%B3%A0%20%EB%B6%88%EB%A0%80%EB%8B%A4.
  15. NoSQL - 나무위키, 8월 3, 2025에 액세스, https://namu.wiki/w/NoSQL
  16. NoSQL(Not only SQL)이란? - Next-BlockChain - 티스토리, 8월 3, 2025에 액세스, https://next-block.tistory.com/m/entry/NoSQLNot-only-SQL%EC%9D%B4%EB%9E%80-MongoDB%EB%9E%80
  17. NoSQL이란 무엇인가? - Dev.GA - 티스토리, 8월 3, 2025에 액세스, https://gangnam-americano.tistory.com/30
  18. cloud.google.com, 8월 3, 2025에 액세스, https://cloud.google.com/discover/what-is-nosql?hl=ko#:~:text=%22not%20only%20SQL%22%EC%9D%98%20%EC%A4%84%EC%9E%84%EB%A7%90,%EA%B4%80%EA%B3%84%ED%98%95%20%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4%EB%A5%BC%20%EC%9D%98%EB%AF%B8%ED%95%A9%EB%8B%88%EB%8B%A4.
  19. NoSQL이란? SQL이란? 둘의 차이는 무엇인가? - 나만을 위한 블로그, 8월 3, 2025에 액세스, https://onlyfor-me-blog.tistory.com/268
  20. SQL과 NOSQL의 차이 ‍ Tech Interview - Gyoogle, 8월 3, 2025에 액세스, https://gyoogle.dev/blog/computer-science/data-base/SQL%20&%20NOSQL.html
  21. [Database] RDB와 NoSQL 비교(특징, 장단점 등) - 개발자의 기록 - 티스토리, 8월 3, 2025에 액세스, https://dev-records.tistory.com/entry/Database-RDB%EC%99%80-NoSQL-%EB%B9%84%EA%B5%90%ED%8A%B9%EC%A7%95-%EC%9E%A5%EB%8B%A8%EC%A0%90-%EB%93%B1
  22. NoSQL이란 무엇인가요? NoSQL 데이터베이스 이해하기 - MongoDB, 8월 3, 2025에 액세스, https://www.mongodb.com/ko-kr/resources/basics/databases/nosql-explained
  23. Schema on Write vs. Schema on Read - Software AG Tech Community & Forums, 8월 3, 2025에 액세스, https://tech.forums.softwareag.com/t/schema-on-write-vs-schema-on-read/294853
  24. Big Data SQL Quick Start. Schema on Read and Schema on Write - Part11. - Oracle Blogs, 8월 3, 2025에 액세스, https://blogs.oracle.com/datawarehousing/post/big-data-sql-quick-start-schema-on-read-and-schema-on-write-part11
  25. [DataBase] RDBMS VS NoSQL - 자바랑 썸타는중 - 티스토리, 8월 3, 2025에 액세스, https://gwamssoju.tistory.com/99
  26. Schema-on-Read vs Schema-on-Write Dremio, 8월 3, 2025에 액세스, https://www.dremio.com/wiki/schema-on-read-vs-schema-on-write/
  27. ELI5: Schema-on-Read vs Schema-on-Write : r/explainlikeimfive - Reddit, 8월 3, 2025에 액세스, https://www.reddit.com/r/explainlikeimfive/comments/nz7tjy/eli5_schemaonread_vs_schemaonwrite/
  28. NoSQL 데이터베이스 - NoSQL이란? - Microsoft Azure, 8월 3, 2025에 액세스, https://azure.microsoft.com/ko-kr/resources/cloud-computing-dictionary/what-is-nosql-database
  29. [NoSQL 데이터베이스별 특징]. Key-Value, Document 등 NoSQL 데이터베이스별 특성에… - Jaemun Jung, 8월 3, 2025에 액세스, https://jaemunbro.medium.com/nosql-%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4-%ED%8A%B9%EC%84%B1-%EB%B9%84%EA%B5%90-c9abe1b2838c
  30. thebook.io, 8월 3, 2025에 액세스, https://thebook.io/006884/0487/#:~:text=%EC%88%98%EC%A7%81%20%ED%99%95%EC%9E%A5%EC%9D%80%20%EC%84%9C%EB%B2%84%EC%9D%98,%EC%9D%B4%20%EB%8D%94%20%ED%98%84%EC%8B%A4%EC%A0%81%EC%9D%B8%20%EB%B0%A9%EB%B2%95%EC%9E%85%EB%8B%88%EB%8B%A4.
  31. 수평 확장 vs 수직 확장 / Tier vs Layer - 베스핀글로벌 테크센터 블로그, 8월 3, 2025에 액세스, https://btcd.tistory.com/16
  32. [Database] SQL vs NoSQL - Hoyeon, 8월 3, 2025에 액세스, https://hoyeonkim795.github.io/posts/SQL-vs-NoSQL/
  33. SQL, NoSQL 비교(특징, 스키마, 속도, 확장) - Eddy - 티스토리, 8월 3, 2025에 액세스, https://node-js.tistory.com/23
  34. NoSQL DB 도입기, 8월 3, 2025에 액세스, https://velog.io/@seanlion/nosqldb
  35. [데이터베이스] RDB와 NoSQL의 차이는? - 데일리디벨롭, 8월 3, 2025에 액세스, https://hyuuny.tistory.com/158
  36. 데이터 혁명: NoSQL로 더 빠르게, 더 유연하게 인사이트리포트 삼성SDS, 8월 3, 2025에 액세스, https://www.samsungsds.com/kr/insights/data-innovations.html
  37. [DB이론] 트랜잭션(transaction)과 ACID 특성을 보장하는 방법 - Victolee - 티스토리, 8월 3, 2025에 액세스, https://victorydntmd.tistory.com/129
  38. BASE와 NoSQL: ACID와의 차이점 및 선택 기준 - 0and24 님의 블로그, 8월 3, 2025에 액세스, https://0and24.tistory.com/30
  39. 분산 시스템에서의 일관성 모델: 다이나모 스타일과 완화된 일관성 - 백번 열번, 8월 3, 2025에 액세스, https://100100e.tistory.com/591
  40. Eventual Consistency 란? - velog, 8월 3, 2025에 액세스, https://velog.io/@soongjamm/Eventual-Consistency-%EB%9E%80
  41. What Is the CAP Theorem? IBM, 8월 3, 2025에 액세스, https://www.ibm.com/think/topics/cap-theorem
  42. CAP theorem - Wikipedia, 8월 3, 2025에 액세스, https://en.wikipedia.org/wiki/CAP_theorem
  43. 서비스에 적합한 데이터베이스 선택법. cap theorem - 공부하샘 - 티스토리, 8월 3, 2025에 액세스, https://hxnsxxm.tistory.com/m/21
  44. [Database] CAP 정리 - Azderica, 8월 3, 2025에 액세스, https://azderica.github.io/00-db-cap/
  45. 분산 데이터 시스템의 일관성과 가용성. CAP 이론과 PACELC - Mark-Kim, 8월 3, 2025에 액세스, https://mark-kim.blog/cap_pacelc/cap_pacelc_theorem/
  46. CAP Theorem: CAP 이론 - 최윧의 개발 노트 - 티스토리, 8월 3, 2025에 액세스, https://choi-yud.tistory.com/27
  47. CAP 정리란? - IBM, 8월 3, 2025에 액세스, https://www.ibm.com/kr-ko/topics/cap-theorem
  48. NoSQL CAP이론 - 도리의 디지털라이프, 8월 3, 2025에 액세스, https://blog.skby.net/nosql-cap%EC%9D%B4%EB%A1%A0/
  49. RDBMS의 한계와 NoSQL을 사용하는 이유 (1) CAP, PACELC 이론 - TheWing - 티스토리, 8월 3, 2025에 액세스, https://sujl95.tistory.com/81
  50. CAP 이론과 PACELC 이론을 알아보자, 8월 3, 2025에 액세스, http://happinessoncode.com/2017/07/29/cap-theorem-and-pacelc-theorem/
  51. Beyond CAP: Unveiling the PACELC Theorem for Modern Systems - DEV Community, 8월 3, 2025에 액세스, https://dev.to/ashokan/beyond-cap-unveiling-the-pacelc-theorem-for-modern-systems-465j
  52. PACELC design principle - Wikipedia, 8월 3, 2025에 액세스, https://en.wikipedia.org/wiki/PACELC_design_principle
  53. PACELC Theorem Explained: Distributed Systems Series by Lohith Chittineni - Medium, 8월 3, 2025에 액세스, https://medium.com/distributed-systems-series/pacelc-theorem-explained-distributed-systems-series-9c509febb8f8
  54. [NoSQL] 키-값 데이터베이스 - O! JAVA - 티스토리, 8월 3, 2025에 액세스, https://ojava.tistory.com/130
  55. NoSQL 저장 유형별 간단 정리 - 이런 사람도 개발합니다., 8월 3, 2025에 액세스, https://rural-mouse.tistory.com/38
  56. 데이터베이스에 대한 기본적인 이해 (NoSQL) - RaMoo - 티스토리, 8월 3, 2025에 액세스, https://ramoo1101.tistory.com/67
  57. Redis, 초면입니다. - 정의, 구조, 장단점, 활용 사례 - 바켠진로그, 8월 3, 2025에 액세스, https://hgggny.tistory.com/entry/Redis-%EC%B4%88%EB%A9%B4%EC%9E%85%EB%8B%88%EB%8B%A4-%EC%A0%95%EC%9D%98-%EA%B5%AC%EC%A1%B0-%EC%9E%A5%EB%8B%A8%EC%A0%90-%ED%99%9C%EC%9A%A9-%EC%82%AC%EB%A1%80
  58. In-memory DB Redis의 특징, 어떻게 사용할까? - 데이널 『데이터 ∙ 분석 ∙ 지식소통』, 8월 3, 2025에 액세스, https://bommbom.tistory.com/entry/Redis%EC%9D%98-%ED%8A%B9%EC%A7%95-%EC%96%B4%EB%96%BB%EA%B2%8C-%EC%82%AC%EC%9A%A9%ED%95%A0%EA%B9%8C
  59. CAP 이론으로 보는 RDBMS vs NoSQL - 자바시작 워니 - 티스토리, 8월 3, 2025에 액세스, https://oneny.tistory.com/114
  60. [NoSQL]NoSQL(Not Only SQL) 종류와 특징 간단히 정리, 8월 3, 2025에 액세스, https://spidyweb.tistory.com/127
  61. Redis 자료구조와 명령어 & 활용사례.md - GitHub, 8월 3, 2025에 액세스, https://github.com/binghe819/TIL/blob/master/DB/Redis/Redis%20%EC%9E%90%EB%A3%8C%EA%B5%AC%EC%A1%B0%EC%99%80%20%EB%AA%85%EB%A0%B9%EC%96%B4/Redis%20%EC%9E%90%EB%A3%8C%EA%B5%AC%EC%A1%B0%EC%99%80%20%EB%AA%85%EB%A0%B9%EC%96%B4%20&%20%ED%99%9C%EC%9A%A9%EC%82%AC%EB%A1%80.md
  62. [Redis] 레디스란 무엇인가? - 특징, 장단점, 사용 사례 - IT is True, 8월 3, 2025에 액세스, https://ittrue.tistory.com/317
  63. DynamoDB 장단점과 DynamoDB를 시작 전에 알면 좋은 11가지 - TheWing - 티스토리, 8월 3, 2025에 액세스, https://sujl95.tistory.com/84
  64. Amazon DynamoDB: 게임 서비스 사용 사례 및 설계 패턴, 8월 3, 2025에 액세스, https://aws.amazon.com/ko/blogs/korea/amazon-dynamodb-gaming-use-cases-and-design-patterns/
  65. 고속 NoSQL 키 값 데이터베이스 - Amazon DynamoDB, 8월 3, 2025에 액세스, https://aws.amazon.com/ko/dynamodb/
  66. NoSQL이란 무엇인가요? 데이터베이스 설명 - Google Cloud, 8월 3, 2025에 액세스, https://cloud.google.com/discover/what-is-nosql?hl=ko
  67. NoSQL과 RDBMS의 장단점 - velog, 8월 3, 2025에 액세스, https://velog.io/@wert1593/NoSQL%EA%B3%BC-RDBMS%EC%9D%98-%EC%9E%A5%EB%8B%A8%EC%A0%90
  68. 데이터 모델링 - MongoDB, 8월 3, 2025에 액세스, https://www.mongodb.com/ko-kr/docs/manual/data-modeling/
  69. [10분 테코톡] 스플릿, 애쉬의 SQL과 NoSQL - YouTube, 8월 3, 2025에 액세스, https://www.youtube.com/watch?v=cnPRFqukzek
  70. 냅다 디비를 만들어! 1위부터 5위까지 DB 비교 - 인하대학교 인트아이, 8월 3, 2025에 액세스, https://int-i.github.io/sql/2022-05-01/db-comparison/
  71. HBase - IT 위키, 8월 3, 2025에 액세스, https://itwiki.kr/w/HBase
  72. Hbase 개요 - DB의 DB - 티스토리, 8월 3, 2025에 액세스, https://dabingk.tistory.com/19
  73. [Cassandra] 아파치 카산드라란? - 윤복로그 - 티스토리, 8월 3, 2025에 액세스, https://goyunji.tistory.com/95
  74. Apache Hbase - velog, 8월 3, 2025에 액세스, https://velog.io/@dksgyals1/Apache-Hbase
  75. [NoSQL] Cassandra vs Hbase vs MongoDB - 좌충우돌 개발자의 기록 - 티스토리, 8월 3, 2025에 액세스, https://lovelushi.tistory.com/entry/NoSQL-Cassandra-vs-Hbase-vs-MongoDB
  76. Apache Cassandra에 대해 알아보자 - 아웃풋 트레이닝, 8월 3, 2025에 액세스, https://baek.dev/post/23/
  77. NoSQL강의) HBase 개요, 특징, client 설명 + Apache Phoenix - 데브원영, 8월 3, 2025에 액세스, https://blog.voidmainvoid.net/236
  78. NoSQL 데이터베이스의 다양한 종류와 선택: 그래프, 키-값, 문서형 등의 데이터 모델, 8월 3, 2025에 액세스, https://4happy5122.tistory.com/2
  79. NEO4J: 그래프 데이터베이스 소개 - velog, 8월 3, 2025에 액세스, https://velog.io/@gun_123/NEO4J-%EA%B7%B8%EB%9E%98%ED%94%84-%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4-%EC%86%8C%EA%B0%9C
  80. 그래프 데이터베이스란 무엇인가요? - 그래프 DB 설명 - AWS, 8월 3, 2025에 액세스, https://aws.amazon.com/ko/nosql/graph/
  81. [Neo4j] Graph Database란? RDBMS와 비교, neo4j 도입 이유 - dgjinsu - 티스토리, 8월 3, 2025에 액세스, https://dgjinsu.tistory.com/48
  82. 통합 그래프 데이터베이스 Oracle 대한민국, 8월 3, 2025에 액세스, https://www.oracle.com/kr/database/integrated-graph-database/
  83. 그래프디비(Graph DB)란? - Liz0904의 멍멍왈왈 - 티스토리, 8월 3, 2025에 액세스, https://liz09045.tistory.com/142
  84. Neo4j와 Graph Data Platforms - Medium, 8월 3, 2025에 액세스, https://medium.com/@godtaehee/neo4j%EC%99%80-graph-data-platforms-439fe012aaa4
  85. NoSQL vs. SQL - cutting through the Tech Twitter noise with a real-world use case - Reddit, 8월 3, 2025에 액세스, https://www.reddit.com/r/programming/comments/13eo11t/nosql_vs_sql_cutting_through_the_tech_twitter/
  86. How Data Models Affect Normalization & Denormalization in NoSQL Databases - MoldStud, 8월 3, 2025에 액세스, https://moldstud.com/articles/p-how-data-models-affect-normalization-denormalization-in-nosql-databases
  87. Denormalization in Databases - GeeksforGeeks, 8월 3, 2025에 액세스, https://www.geeksforgeeks.org/dbms/denormalization-in-databases/
  88. NoSQL 데이터 모델링 - Study Note - 티스토리, 8월 3, 2025에 액세스, https://more-learn.tistory.com/5
  89. [데이터베이스] 정규화 vs. 비정규화(반정규화) - lijly - 티스토리, 8월 3, 2025에 액세스, https://owlyr.tistory.com/20
  90. NoSQL과 RDBMS의 차이 - 챈챈 - 티스토리, 8월 3, 2025에 액세스, https://develoyummer.tistory.com/99
  91. Embedded vs. Referenced Documents in MongoDB - GeeksforGeeks, 8월 3, 2025에 액세스, https://www.geeksforgeeks.org/mongodb/embedded-vs-referenced-documents-in-mongodb/
  92. Embedded Data Versus References - Database Manual - MongoDB Docs, 8월 3, 2025에 액세스, https://www.mongodb.com/docs/manual/data-modeling/concepts/embedding-vs-references/
  93. 운영 요인 및 데이터 모델 - 데이터베이스 매뉴얼 v7.0 - MongoDB Docs, 8월 3, 2025에 액세스, https://www.mongodb.com/ko-kr/docs/v7.0/core/data-model-operations/
  94. References vs Embedding : r/mongodb - Reddit, 8월 3, 2025에 액세스, https://www.reddit.com/r/mongodb/comments/nag9yd/references_vs_embedding/
  95. Data Modeling - Database Manual - MongoDB Docs, 8월 3, 2025에 액세스, https://www.mongodb.com/docs/manual/data-modeling/
  96. References vs Embedding : r/mongodb - Reddit, 8월 3, 2025에 액세스, https://www.reddit.com/r/mongodb/comments/1iniwbm/references_vs_embedding/
  97. NoSQL Database Design. Best Practices and Considerations by Bubu Tripathy - Medium, 8월 3, 2025에 액세스, https://medium.com/@bubu.tripathy/nosql-database-design-1a42731c8265
  98. MongoDB Aggregation: tutorial with examples and exercises - Studio 3T, 8월 3, 2025에 액세스, https://studio3t.com/knowledge-base/articles/mongodb-aggregation-framework/
  99. How To Use Aggregations in MongoDB - DigitalOcean, 8월 3, 2025에 액세스, https://www.digitalocean.com/community/tutorials/how-to-use-aggregations-in-mongodb
  100. Complete Aggregation Pipeline Tutorials - Database Manual - MongoDB Docs, 8월 3, 2025에 액세스, https://www.mongodb.com/docs/manual/tutorial/aggregation-complete-examples/
  101. What is Cassandra Clustering Key? Definition & FAQs ScyllaDB, 8월 3, 2025에 액세스, https://www.scylladb.com/glossary/cassandra-clustering-key/
  102. Partition Key in Cassandra - Madhura Mehendale - Medium, 8월 3, 2025에 액세스, https://madhuramehendale.medium.com/partition-key-in-cassandra-f36d8670375c
  103. Difference between partition key, composite key and clustering key in Cassandra?, 8월 3, 2025에 액세스, https://stackoverflow.com/questions/24949676/difference-between-partition-key-composite-key-and-clustering-key-in-cassandra
  104. Composite Partition Key CQL for Cassandra 3.0 - DataStax Docs, 8월 3, 2025에 액세스, https://docs.datastax.com/en/cql-oss/3.3/cql/cql_using/useCompositePartitionKeyConcept.html
  105. www.yugabyte.com, 8월 3, 2025에 액세스, https://www.yugabyte.com/distributed-sql/newsql/#:~:text=This%20does%20not%20mean%20they,Citus%2C%20VoltDB%2C%20and%20NuoDB.
  106. Top 13 NewSQL Databases in 2024 - Reviews, Features, Pricing, Comparison, 8월 3, 2025에 액세스, https://www.predictiveanalyticstoday.com/newsql-databases/
  107. NewSQL DATABASES 🗄️. Abstract by Madusanka Nipunajith - Medium, 8월 3, 2025에 액세스, https://medium.com/@madushankanipunajith/newsql-databases-%EF%B8%8F-78b50fbae357
  108. An Enterprise Architecture Overview - CockroachDB, 8월 3, 2025에 액세스, https://www.cockroachlabs.com/blog/cockroachdb-enterprise-architecture/
  109. Architecture Overview - CockroachDB, 8월 3, 2025에 액세스, https://www.cockroachlabs.com/docs/stable/architecture/overview.html
  110. Reads and Writes in CockroachDB, 8월 3, 2025에 액세스, https://www.cockroachlabs.com/docs/stable/architecture/reads-and-writes-overview
  111. Architecture Overview - CockroachDB, 8월 3, 2025에 액세스, https://www.cockroachlabs.com/docs/stable/architecture/overview
  112. System Design Netflix A Complete Architecture - GeeksforGeeks, 8월 3, 2025에 액세스, https://www.geeksforgeeks.org/system-design/system-design-netflix-a-complete-architecture/
  113. Evolution of the Netflix Data Pipeline by Netflix Technology Blog, 8월 3, 2025에 액세스, http://techblog.netflix.com/2016/02/evolution-of-netflix-data-pipeline.html
  114. Cassandra Serving Netflix @ Scale - Vinay Chella, Netflix - YouTube, 8월 3, 2025에 액세스, https://www.youtube.com/watch?v=2l0_onmQsPI
  115. Netflix Is Built On Apache Cassandra. Here’s Why It’s Also A Platform for Midsize Companies, 8월 3, 2025에 액세스, https://www.mescomputing.com/news/4185742/netflix-built-apache-cassandra-heres-platform-midsize-companies
  116. Introducing Netflix’s Key-Value Data Abstraction Layer by Netflix Technology Blog, 8월 3, 2025에 액세스, https://netflixtechblog.com/introducing-netflixs-key-value-data-abstraction-layer-1ea8a0a11b30
  117. Netflix Built a Scalable Annotation Service Using Cassandra, Elasticsearch and Iceberg, 8월 3, 2025에 액세스, https://www.infoq.com/news/2023/02/netflix-annotations-cassandra/
  118. Navigating the Netflix Data Deluge: The Imperative of Effective Data Management, 8월 3, 2025에 액세스, https://netflixtechblog.medium.com/navigating-the-netflix-data-deluge-the-imperative-of-effective-data-management-e39af70f81f7
  119. What SQL does Netflix use? - Design Gurus, 8월 3, 2025에 액세스, https://www.designgurus.io/answers/detail/what-sql-does-netflix-use
  120. System Design of Uber App Uber System Architecture - GeeksforGeeks, 8월 3, 2025에 액세스, https://www.geeksforgeeks.org/system-design/system-design-of-uber-app-uber-system-architecture/
  121. How Uber Serves Over 40 Million Reads Per Second from Online …, 8월 3, 2025에 액세스, https://www.uber.com/blog/how-uber-serves-over-40-million-reads-per-second-using-an-integrated-cache/
  122. NoSQL을 사용하는 람다 아키텍처 - Couchbase, 8월 3, 2025에 액세스, https://www.couchbase.com/blog/ko/lamda-architecture-and-beyond-with-nosql/
  123. Twitter’s tweets analysis using Lambda Architecture by Knoldus Inc. - Medium, 8월 3, 2025에 액세스, https://medium.com/knoldus/twitters-tweets-analysis-using-lambda-architecture-17ee1393787f
  124. Cassandra 및 HBase - NoSQL 데이터베이스 간의 차이점 - AWS, 8월 3, 2025에 액세스, https://aws.amazon.com/ko/compare/the-difference-between-cassandra-and-hbase/
  125. 아파치 분산 데이타 베이스 Cassandra 소개 - 조대협의 블로그, 8월 3, 2025에 액세스, https://bcho.tistory.com/440
  126. NoSQL강의) Redis 개요, 기본사용법, command 설명 및 Jedis 예제 - 데브원영, 8월 3, 2025에 액세스, https://blog.voidmainvoid.net/233
  127. [사례연구] 북미 메이저 석유 및 가스 채굴 기업의 재무 운영 개선 - Wiki, 8월 3, 2025에 액세스, https://wiki.a-platform.biz/2b419099-7672-448c-940a-96da42c0c851
  128. 사물 인터넷(IoT) 애플리케이션을 위한 NoSQL 데이터베이스 - Couchbase, 8월 3, 2025에 액세스, https://www.couchbase.com/ko/use-cases/iot/
  129. 스마트팩토리 핵심 IoT데이터, 어떻게 분석할 것인가? 동화기업 NoSQL 몽고DB IoT 적용사례, 8월 3, 2025에 액세스, https://talkit.tv/main/events/3189
  130. [DataBase] NoSQL의 정의와 특징 그리고 NoSQL DB 와 관계형 DB의 차이점, 8월 3, 2025에 액세스, https://slowprogramer.tistory.com/entry/DataBase-NoSQL%EC%9D%98-%EC%A0%95%EC%9D%98%EC%99%80-%ED%8A%B9%EC%A7%95-%EA%B7%B8%EB%A6%AC%EA%B3%A0-NoSQL-DB-%EC%99%80-%EA%B4%80%EA%B3%84%ED%98%95-DB%EC%9D%98-%EC%B0%A8%EC%9D%B4%EC%A0%90
  131. DB RDBMS의 한계와 NoSQL을 사용하는 이유 (3) NoSQL 장단점, 특징 - TheWing - 티스토리, 8월 3, 2025에 액세스, https://sujl95.tistory.com/83
  132. [NoSQL] Ch5. 일관성 - 데이터 이야기, 8월 3, 2025에 액세스, https://jjaesang.github.io/nosql/2019/05/11/nosql-consistency-ch5.html
  133. [NOSQL] NOSQL의 일관성에 대해 알아보자 - Log level - 티스토리, 8월 3, 2025에 액세스, https://firststep-de.tistory.com/34
  134. NoSQL이 뭐길래 - 야망찬 개발자의 블로그, 8월 3, 2025에 액세스, https://sowon-dev.github.io/2022/02/26/220226NoSQL/
  135. 사용 사례에 적합한 데이터베이스는 무엇일까요? - Integrate.io, 8월 3, 2025에 액세스, https://www.integrate.io/ko/blog/which-database-ko/
  136. [데이터베이스] SQL vs NoSQL 개념, 장단점, 비교, 8월 3, 2025에 액세스, https://nice-engineer.tistory.com/entry/SQL-vs-NoSQL
  137. SQL과 NOSQL 특징 및 장단점 - 백엔드로의 코딩 여행 - 티스토리, 8월 3, 2025에 액세스, https://bruno-jang.tistory.com/44
  138. NoSQL 데이터베이스를 평가할 때 가장먼저 고려해야 할 5가지 사항 - MongoDB, 8월 3, 2025에 액세스, https://www.mongodb.com/collateral/top-5-nosql-considerations-whitepaper-south-korea
  139. 무신사 서비스에 적합한 NoSQL 도입 여정 - 1편. AWS DocumentDB에서 Couchbase로 마이그레이션 하기 by MUSINSA tech - Medium, 8월 3, 2025에 액세스, https://medium.com/musinsa-tech/database-6d1052ca6b36
  140. “NoSQL과 생성AI 결합해 개발자의 타임 투 마켓 단축 도울 것” - 전자신문, 8월 3, 2025에 액세스, https://m.etnews.com/20231103000321?obj=Tzo4OiJzdGRDbGFzcyI6Mjp7czo3OiJyZWZlcmVyIjtOO3M6NzoiZm9yd2FyZCI7czoxMzoid2ViIHRvIG1vYmlsZSI7fQ%3D%3D
  141. 생성형 AI 모델의 성능을 강화하는 그래프 데이터베이스 Neo4j - 클루커스, 8월 3, 2025에 액세스, https://gcp.cloocus.com/insight-genai_x_neo4j/