devlog_owen
[TIL][기술면접준비] 1. NoSQL과 RDBMS의 특징과 차이점에 대해서 장, 단점을 들어 설명해주세요 본문
NoSQL vs RDBMS
NoSQL (비관계형 데이터베이스)
스키마 유연성: NoSQL은 스키마가 없거나 유연한 스키마를 가지고 있기 때문에 데이터모델을 유연하게 변경할 수 있다.
확장성: NoSQL은 수평적으로 확장이 가능하다. 대용량의 데이터를 처리하고 분산시스템을 구축하느데 적합하다.
빠른 읽기/ 쓰기 성능: NoSQL은 단순한 키-값 저장소로 설계되어있어 빠른 읽기와 쓰기 성능을 제공한다.
다양한 데이터 모델: 문서(Document), 그래프(Graph), 열(Column), 키-값(Key-Value) 등 다양한 데이터모델을 지원한다.
장점:
유연한 데이터 모델: 스키마 유연성으로 인해 데이터 모델을 신속하게 변경할 수 있다.
확장성: 대용량 데이터 처리와 분산 시스템 구축에 용이하다.
빠른 성능: 단순한 구조로 인해 빠른 읽기/쓰기 성능을 제공한다.
단점:
제한된 쿼리 기능: NoSQL은 유연성을 위해 일부 쿼리 기능이 제한될 수 있다.
데이터 중복: 관계형 데이터베이스에 비해 데이터 중복이 발생할 수 있다.
트랜잭션 제약: NoSQL은 ACID(원자성, 일관성, 격리성, 지속성) 트랜잭션을 보장하지 않는 경우가 많다.
RDBMS (관계형 데이터베이스)
특징:
정형화된 스키마: RDBMS는 데이터를 테이블 형태로 저장하며, 스키마를 사용하여 데이터 구조를 정의한다.
강력한 쿼리 기능: SQL을 사용하여 데이터를 질의하고 조작하는 강력한 쿼리 기능을 제공한다.
데이터 일관성: 관계형 데이터베이스는 ACID 트랜잭션을 통해 데이터 일관성을 보장할 수 있습니다.
장점:
강력한 쿼리 기능: SQL을 사용하여 다양한 복잡한 쿼리를 수행할 수 있다.
데이터 일관성: ACID 트랜잭션을 통해 데이터 일관성을 보장할 수 있다.
단점:
제한된 확장성: 대규모 데이터 처리 및 분산 시스템에는 비효율적일 수 있다.
고정된 스키마: 스키마 변경이 어려울 수 있으며, 데이터 모델을 변경하기 위해서는 구조 변경이 필요하다.
성능: 대량의 데이터 처리와 읽기/쓰기 성능에서 NoSQL에 비해 제한적일 수 있다.
결론:
NoSQL과 RDBMS의 특징과 차이점에 대해서 장, 단점을 들어 설명해주세요
NoSQL은 스키마 유연성과 확장성에 강점을 가지며, 대규모 데이터 처리와 분산 시스템에 적합하나 쿼리 기능이 제한되고 데이터 중복이 발생할 수 있습니다.
RDBMS는 강력한 쿼리 기능과 데이터 일관성을 제공하지만 확장성이 제한되고 고정된 스키마로 인해 구조 변경이 어려울 수 있습니다.
'TIL' 카테고리의 다른 글
[TIL] nest.js에서 네이버 소셜로그인 기능구현하기 (0) | 2024.01.18 |
---|---|
[TIL] 최종프로젝트 와이어프레임 figma로 나타내기, erd 테이블 설정 수정 (3) | 2024.01.15 |
[TIL] Redis란? Redis와 MySQL의 차이, Redis 설치 (1) | 2024.01.12 |
240110 [TIL] nest.js 내장 예외처리 정리,HTTP 상태코드 (2) | 2024.01.11 |
240108 [TIL] inlay hints, prettier 설정, vs code 색상설정 (1) | 2024.01.10 |