Data 용어 정리

NoSQL이란?

김 레인 2021. 2. 10. 17:47

NoSQL: Not Only SQL 은 빅데이터와 함께 떠오른 기술이다

NoSQL의 개념

NoSQL은 Not Only SQL의 약자로, 기존의 RDBMS 형태의 관계형 데이터베이스가 아닌 다른 형태의 데이터 저장 기술을 의미

비정형데이터를 쉽게 담을 수 있는 DB

NoSQL의 특징

  • 대규모의 데이터
    • 더 융통성있는 데이터 모델을 사용, 데이터의 저장 및 검색을 위한 특화된 메커니즘 제공, 키 값 저장 기법을 사용하여 응답속도나 처리효율 등에 있어서 매우 뛰어난 성능
  • 기존에 비해 단순화된 형태
    • RDBMS와 달리 데이터간의 관계를 정의하지 않는다.
    • 일반적으로 테이블간 Join도 불가능
  • 수평적 확장성
    • RDBMS가 클라이언트/서버 환경에 맞는 데이터저장기술이라면, NoSQL은 클라우드 환경에 맞는 저장기술
  • 분산형 구조
  • 고정되지 않는 테이블 스키마
    • 데이터를 저장하는 칼럼은 각기 다른 이름과 다른 데이터 타입을 갖는것이 허용됨
  • 데이터 조회를 위해 비SQL 인터페이스를 통한 접근 ex) 직접 프로그래밍 등
  • 관계형 데이터베이스에서는 지원하는 데이터 처리 완결성(Transaction, ACID 지원)이 보장되지 않음

NoSQL의 유형과 예시

데이터 모델에 따라 아래와 같이 분류

  • Key-Value DB : Key-Value 쌍으로 데이터 저장, ex) Riak, Vodemort, Tokyo
  • Wide Cilumnard DB / Big Talbe DB : Column Familiy 데이터 모델 ex) HBase, Cassandra,Hypertable
  • Document DB : JSON, XML같은 Collection 데이터 모델 구조 ex) Mongo DB, Cough DB
  • Graph DB : Nodes, Relationship, Key-Value 데이더 모델 ex) Neo4j

출처: https://jwprogramming.tistory.com/70 [개발자를 꿈꾸는 프로그래머] 에서 발췌