NoSQL

04.Database 2020. 6. 3. 10:56
728x90
반응형

[개념]  관계형 데이터 모델을 사용하지 않는 모든 Database 또는 Data Store

[제공] 전통적인 관계형 데이터베이스 보다 덜 제한적인 일관성 모델을 이용하는 데이터의 저장 및 검색을 위한 매커니즘을 제공

[목적] 단순 검색 및 추가 작업을 위한 매우 최적화된 키 값 저장 공간으로, 레이턴시와 스루풋과 관련하여 상당한 성능 이익을 내는 것이 목적

 

 

[특징] BASE, CAP 이론

 

Basically Available : 기본적으로 Available하고

Soft-state : 사용자가 관리(refresh, modify)하지 않으면 Data가 expire 될 수도 있으며

Eventually consistency : 지금 당장은 아니지만 언젠가는 Data가 일관성을 가진다

 

Acid와 Base의 비교 #1

 

ACID와 BASE의 비교 #2

 

 

 

 

https://embian.wordpress.com/2013/06/27/nosql-2/

 

NoSQL에 대해서 간단히 알아보자!

CAP이론? NoSQL 소개에는 빠지지 않고 등장하는 그림이다. 이 그림을 약 3~5초정도 보면 다음과 같은 의문이 생기게 된다. “그럼 ACID는?” ACID(원자성, 일관성, 고립성, 지속성)는 데이터베이스 트��

embian.wordpress.com

 

 

 

http://develop.sunshiny.co.kr/883

 

RDBMS vs NoSQL, CAP 이론 :: You've got to find what you love.

※ 위 내용은, 여러 자료를 참고하거나 제가 주관적으로 정리한 것입니다.    잘못된 정보나 보완이 필요한 부분을, 댓글 또는 메일로 보내주시면 많은 도움이 되겠습니다. Trackback URL : http://dev

develop.sunshiny.co.kr

 

[구성]

컬럼: H베이스, 아큐물로

도큐먼트: 몽고DB, 카우치베이스

키 값: 다이나모, 리악, 레디스, 캐시, 프로젝트 볼드모트

그래프: Neo4J, AgensGraph, 알레그로그래프, 버투오소

 

 

 

[유형]

 

Document Store

Document-oriented database라고 불리가도 하며 테이블 스키마가 정적이지 않고 유동적입니다. 이것은 즉 레코드 마다 다른 스키마를 가질 수 있다는 뜻입니다. 일반적으로 JSON같은 document를 이용해 record를 저장합니다. 그렇기 때문에 RDB랑 달리 트리형 구조를 저장하거나 찾는데 용이합니다.

 

대표DB : MongoDB, Amazone DynamoDB, CouchBase

 

Wide Column Store

Wide Column Store는 많은 수의 동적 열을 보유할 수 있습니다. record row마다 Key-Value를 가지고 있어 record마다 다른 스키마를 가질 수 있습니다. 스키마가 프리하다는것은 Document Store랑 비슷하나 기본적인 구현은 많이 다릅니다. record면에서는 RDB와 많은점에서 유사하며 더욱 대량 분산처리에 용이합니다. 많은 컬럼과 많은 데이터를 저장해야할때 유용하며 scan에는 (상대적으로) 그다지 좋지 않습니다.

 

대표DB : CassandraHBase, Google BigTable

 

Key-Value Store

 

  • Ordered Key/Value Store

Key/Value Store의 확장된 형태로 Key/Value Store와 데이터 저장 방식은 동일하나, 데이터가 내부적으로 Key 순서로 Sorting되어 저장된다.

NoSQL은 RDBMS의 Order By와 같은 기능을 제공하지 않기 때문에 결과값을 업데이트 날짜 등으로 Sorting해서 보여주는 것은 이 Ordered Key/Value Store가 절대적으로 유리하다. 대표적인 제품으로는 아파치(Apache)의 HBase, Cassandra 등이 있다.

 

 

 

  • Document Key/Value Store

Document 타입은 XML, JSON, YAML과 같이 구조화된 데이터 타입으로, 복잡한 계층 구조를 표현할 수 있다. Document Store 기반의 NoSQL은 제품에 따라 다르기는 하지만 대부분 추가적인 기능(Sorting, Join, Grouping 등)을 제공한다. 대표적인 제품으로는 MongoDB, CouchDB등이 있다.

 

 

https://www.slipp.net/wiki/pages/viewpage.action?pageId=19530140

 

5주차-mongodb - SLiPP 스터디 - SLiPP::위키

설치 http://docs.mongodb.org/manual/installation/ 잠깐!  CAP 이론 NoSQL은 분산형 구조를 띠고 있기 때문에 분산 시스템의 특징을 그대로 반영하는데, 그 특성 중의 하나가 CAP 이론이다. 이 이론은 2002년 버��

www.slipp.net

Key와 Value로 이루어진 심플한 구조의 저장 스토어입니다. 이런 심플한 구조를 사용하는 이유는 속도가 빠르며 분산 저장환경에 용이하기 때문입니다. 주로 빠른 억세스를 위해 메모리를 베이스로 사용합니다. 그렇기 때문에 많은 throughput이 필요하며 모델이 단순한 카운터, server config, session clustering등에 사용됩니다. wide column과 마찬가지로 억세스 속도는 매우 빠르나 scan에는 취약한 모습을 보여줍니다.

 

대표DB : RedisMemcachedEhCacheHazelcast

 

SearchEngine

대량의 데이터와 텍스트 컨텐츠를 빠르게 검색하기 위한 저장 스토어입니다. 텍스트를 토크나이징 하여 색인을 하며 일반적으로 텍스트 검색 뿐만아니라 Ranking, Grouping, Aggregation, Geolocation 거리 계산등의 기능들도 같이 제공되고 있습니다.

대표DB : LuceneElasticsearchSolrsphinxsearch

 

Graph DBMS

그래프 DBMS는 데이터를 노드로 표현하며 노드 사이의 관계를 edge로 표현합니다. 데이터와 데이터간의 관계를 표기할 수 있다고 보는편이 편할것 같습니다. 이런 구조는 마치 페이스북의 친구찾기나 연관 데이터 추천등의 연결된 데이터를 저장하는데 용이합니다. (이런 저장소가 추천을 알아서 해주는 것은 아닙니다)

 

대표DB : Neo4JOrientDB

 

Time Series DBMS

시계열(Time Series)를 처리하기 위해 최적화된 데이터 베이스입니다. 주식거래 같은 시간 단위의 데이터를 처리하고 그래프를 그리는데 매우 용이합니다. 주로 대량의 시계열 데이터를 수집하거나 쿼리할 수 있게 설계 되었습니다

대표DB : InfluxDBRRDtoolGraphite

 

https://inyl.github.io/programming/2017/05/09/database.html

 

728x90

'04.Database' 카테고리의 다른 글

DB 언어  (0) 2020.06.04
DB 성능개선 - 인덱스  (0) 2020.06.04
NOSQL - 카산드라  (0) 2020.06.03
해시 테이블  (0) 2020.06.03
소재 DB - 전산재료공학과 기계학습  (0) 2020.06.03
Posted by Mr. Slumber
,