원제 : Paper: NoSQL Databases - NoSQL Introduction and Overview
번역 : Paper: NoSQL Databases - NoSQL Introduction and Overview
Stuttgart Media University의 Christof Strauch는 NoSQL 데이터베이스에 대한 소개와 개관인 NoSQL Databases 이름붙인 믿을 수 없는 120쪽 이상의 논문을 작성했습니다. 이 논문은 2010년 6월부터 2011년 2월 사이에 작성했는데, 조금 최신에서 뒤떨어지기는 하지만, 한입에 NoSQL 세계를 마시고 싶다면, 좋은 기회입니다. 나는 Christof에게 논문으로 이루고 싶었던 것을 짧게 요약해달라고 요청했습니다:
논문은 블로그와 위키와 과학 논문들에 흩어진 정보를 모아 NoSQL 분야의 체계적이고 전반적인 소개와 요약을 하는 것이 목적입니다. 먼저 비관계형 데이터베이스 시스템의 개발과 사용에 대한 이유, 근거, 동기를 다룹니다. 이는 고확장성, 엄청나게 큰 데이터 처리, 많은 서버들간의 데이터 분산, DBMS의 distribution-aware 설계로 요약됩니다.
그리고 논문은 일치, 분할, 저장 배치, 질의, 분산 데이터 처리를 다루는 NoSQL 데이터베이스들이 공통적으로 사용하는 기본적인 개념과 기술 패턴을 소개합니다. 최종 동기화와 ACID vs BASE 트랜잭션 특성들 같은 중요한 개념은 notable 기술의 번호를 따라 다룹니다. multi-version storage, vector clocks, state vs. operational transfer models, consistent hashing, MapReduce, and row-based vs. columnar vs. log-structured merge tree persistence.
NoSQL 데이터베이스 첫번째 등급이기때문에, key-value-저장은 소유와 완전한 분산, 최종 동기화를 자세히 살펴봅니다. 인기있는 오픈 소스 key-value-store인 Voldemort, Tokyo Cabinet/Tyrant 와 Redis 처럼 Amazon Dynamo store까지 살펴봅니다.
그리고, document stores는 문서 저장의 NoSQL 데이터베이스를 대표하는 CouchDB와 MongoDB를 리뷰하여 조사합니다. 끝으로, 논문은 Goolge의 BigTable과 Hypertable, Hbase와 함께 Google의 BigTable의 데이터 모델을 사용하여 Amazon의 Dynamo의 완전 분산과 최종 일치를 통합한 Apache Cassandra를 통해 column-stores를 살펴봅니다.
The paper aims at giving a systematic and thorough introduction and overview of the NoSQL field by assembling information dispersed among blogs, wikis and scientific papers. It firstly discusses reasons, rationales and motives for the development and usage of nonrelational database systems. These can be summarized by the need for high scalability, the processing of large amounts of data, the ability to distribute data among many (often commodity) servers, consequently a distribution-aware design of DBMSs.
The paper then introduces fundamental concepts, techniques and patterns that are commonly used by NoSQL databases to address consistency, partitioning, storage layout, querying, and distributed data processing. Important concepts like eventual consistency and ACID vs. BASE transaction characteristics are discussed along with a number of notable techniques such as multi-version storage, vector clocks, state vs. operational transfer models, consistent hashing, MapReduce, and row-based vs. columnar vs. log-structured merge tree persistence.
As a first class of NoSQL databases, key-value-stores are examined by looking at the proprietary, fully distributed, eventual consistent Amazon Dynamo store as well as popular opensource key-value-stores like Project Voldemort, Tokyo Cabinet/Tyrant and Redis.In the following, document stores are being observed by reviewing CouchDB and MongoDB as the two major representatives of this class of NoSQL databases. Lastly, the paper takes a look at column-stores by discussing Google’s Bigtable, Hypertable and HBase, as well as Apache Cassandra which integrates the full-distribution and eventual consistency of Amazon’s Dynamo with the data model of Google’s Bigtable."
Related Articles
- Ultra-large-scale Sites - a collection of papers written by students at Stuttgart Media University.