관리 메뉴

VivaButton

NoSQL이란? 본문

IT/빅데이터

NoSQL이란?

비바버튼 2018. 8. 1. 14:46
728x90

요약 : 빅데이터 처리를 위한 비관계형 데이터베이스 관리 시스템(DBMS)


전통적인 관계형 데이터베이스 관리 시스템(RDBMS)과는 다르게 설계된 비관계형(non-relational) DBMS로, 대규모의 데이터를 유연하게

처리할 수 있는 것이 강점이다. 노에스큐엘(NoSQL)은 테이블-컬럼과 같은 스키마가 없이, 분산 환경에서 단순 검색 및 추가 작업을 위한 

키값을 최적화 하고, 지연(latency)과 처리율(throughput)이 우수하다.


그리고 대규모 확대가 가능한 수평적인 확장성의 특징을 가지고 있다. NoSQL에 기반을 둔 시스템의 대표적인 예로는 카산드라

(Apache Cassandra), 하둡(Hadoop), 몽고디비(Mongo DB) 등이 있다.


NoSQL이 무엇의 약자인지는 사람에 따라 No SQL ,  Not Pnly SQL, Non-Relational Operational Database SQL로 엇갈리는 의견들이 있다.

현재 Not Only SQL로 풀어 설명하는 것이 다수를 차지하고 있다.

이 말의 의미를 풀어보자면, 단순히 기존 관계형 RDBMS가 갖고 있는 특성뿐만 아니라, 다른 특성들을 부가적으로 지원한다는 것을 의미한다.


NoSQL DB의 특징을 살펴보면, 기존의 관계형DB 보다 더 융통성 있는 데이터 모델을 사용하고, 데이터의 저장 및 검색을 위한 특화된 매커니즘을 제공한다. 이를 통해 NoSQL 데이터베이스는 단순 검색 및 추가 작업에 있어서 매우 최적화된 키 값 저장 기법을 사용하여, 응답 속도가 , 처리 효율 등에 있어서 매우 뛰어난 성능을 나타낸다. 


* NoSQL의 특징(기존 관계형DB와 비교)

1. 관계형 모델을 사용하지 않으며 테이블간의 조인 기능 없음.

2. 직접 프로그래밍을 하는 등의 비 SQL 인터페이스를 통한 데이터 엑세스.

3. 대부분 여러 대의 데이터베이스 서버를 묶어(클러스터링) 하나의 데이터베이스를 구성

4. 관계형 데이터베이스에서는 지원하는 Data처리 완결성(Transaction ACID 지원) 미보장

5. 데이터의 스키마와 속성들을 다양하게 수용 및 동적 정의 (Schema-less)

6. 데이터베이스의 중단없는 서비스와 자동 복구 기능 지원

7. 다수가 Open Source로 제공.

8. 확장성, 가용성, 높은 성능