728x90
반응형
No SQL 이란?
- 여러 정의들이 있지만 대부분 Not Only SQL 로 해석한다.
- 그 이유는 SQL 보다 무언가 를 추가 했다는 뜻이다.
특징
- NoSQL 데이터베이스는 특정 데이터 모델에 대해 특정 목적에 맞추어 구축되는 데이터베이스이다.
- NoSQL 데이터베이스는 개발의 용이성, 기능성 및 확장성이 높다.
- 유연성:
- 유연한 스키마를 제공한다. - 확장성:
- 분산형 하드웨어 클러스터를 이용해 확장하도록 설계 - 고성능:
NoSQL 데이터베이스는 특정 데이터 모델 및 액세스 패턴에 대해 최적화되어 관계형 데이터베이스를 통해 유사한 기능을 충족하려 할 때보다 뛰어난 성능을 얻게 해준다. - 고기능성:
NoSQL 데이터베이스는 각 데이터 모델에 맞춰 특별히 구축된 뛰어난 기능의 API와 데이터 유형을 제공한다.
No SQL 유형
대표적인 유형들만 정리 보겠습니다.
Key Value DB:
- Key 와 Value의 쌍으로 데이터가 저장되는 가장 단순한 형태의 솔루션이다.
Document DB
- 애플리케이션 코드에서 데이터는 종종 객체 또는 JSON 유사 형식의 문서로 표시된다.
- 문서 데이터베이스를 사용하면 개발자들이 자신의 애플리케이션 코드에서 사용하는 것과 동일한 문서 모델 형식을 사용하여 데이터베이스에서 보다 손쉽게 데이터를 저장하고 쿼리할 수 있다.
- 오브젝트에 대한 모든 정보를 하나의 인스턴스 에 저장한다.
- 저장된 모든 객체는 서로 다를수 있다.
Graph DB
- Nodes, Relationship, Key-Value 데이터 모델을 채용한다.
- 그래프 데이터베이스의 목적은 고도로 연결된 데이터세트를 사용하는 애플리케이션을 구축하고 실행하는 것입니다
SQL (관계형) vs. NoSQL(비관계형)
SQL | No SQL | |
데이터 모델 | 테이블로 정규화된다. | 키-값, 문서, 그래프 등 성능과 규모 확장에 최적화된 다양한 데이터 모델을 제공합니다. |
ACID 속성 | ACID 속성을 제공한다. | ACID 속성을 완화 시켰다. 하지만 No SQL 중 ACID 를 제공하는 것도 있다. |
성능 | 디스크 하위 시스템에 따라 다르다. | 기본 하드웨어 클러스터 크기, 네트워크 지연 시간 및 호출 애플리케이션의 기능에 따라 다르다. |
확장 | 하드웨어의 계산 성능을 높이거나 읽기 전용 워크로드의 복제물을 추가함으로써 확장된다. |
분산형 아키텍처를 사용해 액세스 패턴이 확장 가능하기 때문에 분할성이 있다. |
API | SQL 쿼리로 수행된다. | 객체 기반 API를 통해 앱 개발자가 데이터 구조를 쉽게 저장 및 검색할 수 있다. |
참고: https://en.wikipedia.org/wiki/Document-oriented_database
참고: https://aws.amazon.com/ko/nosql/
728x90
반응형
'DataBase > DB 기초' 카테고리의 다른 글
[DB] LIKE 와 INDEX (0) | 2023.02.10 |
---|---|
[DB] Index 기본 (0) | 2023.02.09 |
[DB] Index 기초 (0) | 2021.08.19 |
[DB] GROUP BY (0) | 2021.08.05 |
[DB] Join (0) | 2021.08.05 |
댓글