ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [MongoDB] 1. NoSQL이란?
    DB/MongoDB 2022. 9. 29. 00:37
    728x90
    반응형

    NoSQL의 등장배경

    • RDB(관계형 데이터베이스)를 대신할 새로운 대안의 필요성이 제기 되었다.
      • 정형화된 데이터를 주로 처리하는 RDB는 빠른 속도로 대량 생산되는 다양한 유형의 비정형 데이터를 저장 및 관리하는데 적합하지 않다.
      • 단일 컴퓨터 환경에서 주로 사용되는 RDB는 여러 컴퓨터가 연결되어 하나의 시스템을 구성하는 클러스터 환경에서는 확장성 측면에서 비효율적이다.
    • 이러한 문제점들을 해결하려고 제안된 것이 NoSQL이다.

    NoSQL이란?

    • 빠른 속도로 생성되는 대량의 비정형 데이터를 저장하고 처리 목적이다.
    • ACID(원자성, 일관성, 격리성, 지속성)를 위한 트랜잭션 기능을 제공하지 않는다.
    • 대신 저렴한 비용으로 분산된 컴퓨터에 데이터를 분산, 저장, 처리하는 것이 가능한 데이터베이스이다.
    • 특징
      • 관계 모델보다 더 융통성 있는 데이터 모델 사용한다.
      • 스키마 없이 동작하기 때문에 데이터 구조를 미리 정의할 필요 없이 수시로 그 구조를 바꿀 수 있음  - 비정형 데이터 저장에 적합하다.
      • 대부분 오픈소스로 제공한다.
      • SQL 대신 별도의 분석 기술을 이용해 데이터를 읽어야한다.

    NoSQL은 RDB의 경쟁자가 아니다!

    • NoSQL은 대량 데이터 생성, 수정보단 삽입 연산 위주의 데이터 저장 관리 용도이다.
    • RDB는 조인과 같은 복잡한 질의 처리, 일관성이 중요한 데이터 저장, 정형화 데이터를 관리 저장하는 용도이다.

    NoSQL의 종류

    출처 : https://velog.io/@gparkkii/DatabaseSQLNoSQL

    • 키 - 값(Key-Value) DB
    • 문서 기반(Document-based) DB - MogoDB가 이것에 해당한다.
    • 컬럼 기반(Column-based) DB
    • 그래프 기반(Graph-based) DB

    문서기반 데이터베이스(Document-based DB)

    • 키와 문서의 쌍으로 데이터 저장
      • 트리 형태의 계층적 구조가 존재하는 JSON, XML 등과 같은 반정형 형태의 문서로 데이터 저장.
      • 문서는 객체지향에서 객체의 개념과 유사하다.
    • 키-값 데이터 모델이 확장된 형태이다.
    • 문서 전체를 검색하는 것도 가능하지만, XQuery와 같은 특별한 문서 대상 질의 언어를 이용하면 문서 내의 일부를 검색할 수도 있다.
    • 대표적인 예 : MogoDB, CouchDB 등
    728x90
    반응형

    'DB > MongoDB' 카테고리의 다른 글

    [MongoDB] 6. 기본 명령어 - find()  (0) 2022.09.29
    [MongoDB] 5. MongoDB 시작  (0) 2022.09.29
    [MongoDB] 4. MongoDB 환경  (0) 2022.09.29
    [MongoDB] 3. MongoDB란?  (0) 2022.09.29
    [MongoDB] 2. JSON  (0) 2022.09.29

    댓글

Copyright 2022. Pupbani all right reserved