cs지식 정리하기/면접 대비

[6일차] 기술 면접 준비

젤리의it 2024. 3. 25. 21:45

1. RDBMS와 NOSQL의 차이점을 설명하세요

RDBMS는 고정된 행(row)과 열(column)로 구성된 테이블에 데이터를 저장
장점은 스키마가 명확하게 정의, 데이터의 무결성 보장, 데이터를 중복없이 한번만 저장
단점은 유연성이 떨어짐 관계를 맺고 있어서 조인문이 복잡한 쿼리가 만들어질 수 있음.

NoSQL는 관계형 데이터베이스를 제외한 다른 형태의 데이터 저장 기술을 의미
테이블 간의 관계를 정의하지 않아 일반적으로 테이블 간 Join도 불가능
유연한 스키마를 제공하며, 대량의 데이터와 높은 사용자 부하에서도 손쉽게 확장
장점은 스키마가 없기때문에 유연하고 데이터 조정 및 새로운 필드 추가가능, 데이터를 읽는 속도가 빠름.
단점은 데이터의 중복이 발생할 수 있음

관계형 데이터베이스(RDBMS)를 사용해야 할 때
데이터베이스의 ACID 성질을 준수해야 하는 소프트웨어를 개발하는 경우
ACID란 Atomicity(원자성), Consistency(일관성), Isolation(격리성), Durability(지속성)의 약어로, 데이터베이스에서 실행되는 하나의 트랜잭션(Transaction)에 의한 상태의 변화를 수행하는 과정에서, 안전성을 보장하기 위해 필요한 성질을 뜻합니다.
관계를 맺고 있는 데이터가 자주 변경되는 애플리케이션의 경우
변경될 여지가 없고 명확한 스키마가 사용자와 데이터에게 중요한 경우

NoSQL 데이터베이스를 사용해야 할 때
정확한 데이터의 구조를 알 수 없거나 변경, 확장될 가능성이 있는 경우
읽기는 자주 해도 데이터 변경은 자주 없는 경우
막대한 양의 데이터를 다뤄야 해서 데이터베이스를 수평으로 확장해야 하는 경우

'cs지식 정리하기 > 면접 대비' 카테고리의 다른 글

[8일차] 기술 면접 준비  (0) 2024.03.27
[7일차] 기술 면접 준비  (0) 2024.03.26
[5일차] 기술 면접 준비  (0) 2024.03.20
[4일차] 기술 면접 준비  (0) 2024.03.19
[3일차] 기술 면접 준비  (1) 2024.03.13