NoSQL과 RDBMS의 특징과 차이점에 대해서 장, 단점을 들어 설명해주세요.
RDBMS는 관계형 데이터베이스 관리 시스템으로 관계모델, 스키마, ACID 특성을 가지고 있습니다. 테이블 형식으로 저장하며 테이블은 관계를 나타내고 있습니다. 데이터의 구조는 미리 정의된 스키마에 따라야 하며 트랜젝션의 원자성, 일관성, 고립성, 지속성을 보장합니다. 장점으로는 ACID 특성으로 데이터의 일관성 복잡한 쿼리를 다루는데 효과적입니다. 단점으로는 확장이 어렵기 때문에 성능 저하가 발생할 수 있습니다. NoSQL은 비관계형 데이터베이스로 데이터가 동적으로 정의되기 때문에 스키마가 느슨합니다. 비정형 데이터로 다양한 형식의 데이터를 저장할 수 있으며 대규모 데이터를 분산 저장하고 처리할 수 있습니다. 장점으로는 확장성과 유연성이 있습니다. 수평적 확장이 용이하며 대용량 데이터를 다루기에 적합합니다. 또한 유연성으로 다양한 형태의 데이터를 다룰 수 있습니다. 단점으로는 일관성을 보장받기 어렵고 복잡한 쿼리와 조인을 처리하는 RDBMS보다 쿼리 제약이 있을 수 있습니다. 결국 애플리케이션의 요구사항에 따라서 선택을 해야하며 일관성이 더 중요한 경우 RDBMS가 적합하고 NoSQL은 대규모 확장과 유연성이 필요한 경우 더 적합합니다.
'CS' 카테고리의 다른 글
쿠키(Cookie) 세션(Session) (0) | 2024.01.10 |
---|---|
CORS(Cross Origin Resource Sharing) (1) | 2024.01.02 |
기본키(Primary Key), 외래키(Foreign Key) (1) | 2024.01.01 |
HTTP Method (1) | 2024.01.01 |
N+1문제의 발생이유와 해결방법 (0) | 2023.12.27 |