본문 바로가기
SQL

RDBMS

by junsseok 2025. 12. 15.

RDBMS


백엔드 개발 공부하면서 RDBMS라는 단어를 엄청 많이 듣게 됐는데, 솔직히 처음엔 뭔 소린지 하나도 모르겠었어요.

그래서 이번 기회에 제대로 정리해보려고 함.


RDBMS = 관계형 데이터베이스

RDBMS는 Relational Database Management System의 줄임말이고, 

우리말로는 관계형 데이터베이스 관리 시스템이라고 합니다.



근데 이렇게 말하면 또 어려우니까... 그냥 엑셀 스프레드시트 생각하면 되요.

표 형태로 데이터 저장하는 거. 근데 엑셀보다 훨씬 더 강력하고 안전하게 관리할 수 있다는 게 차이점?


기본 구조 이해하기


RDBMS는 테이블이라는 단위로 데이터를 저장한다. 

예를 들어 회원가입 기능 만든다고 생각해보자. 그럼 회원 테이블 하나 만들고, 거기에 회원ID, 이름, 이메일, 비밀번호 이런 식으로 열(컬럼)을 만드는 거에요. 그리고 회원 한 명 한 명이 한 행(로우)이 되는 거죠.

여기서 중요한 게 기본키라는 개념인데, 이건 각 행을 구별할 수 있는 고유한 값이야. 보통 회원ID 같은 걸 기본키로 쓴다. 

 

중복되면 절대 안 됨!

 


왜 관계형이냐?


테이블끼리 연결할 수 있어서 그래요.

회원 테이블, 주문 테이블 따로따로 있는데 이걸 연결하면 "홍길동이 어제 뭐 샀는지" 이런 거 바로 알 수 있어요.

이때 주문 테이블에서 회원 테이블의 회원ID를 참조하는데, 이걸 외래키라고 불러요.

이게 진짜 신박한 게, 데이터 중복 없이 효율적으로 저장하면서도 필요한 정보는 다 연결해서 볼 수 있어요.


많이 쓰는 RDBMS들


시장에 RDBMS 제품이 진짜 많은데, 대표적인 것들만 몇 개 뽑아보면:

(1) MySQL - 오픈소스고 가장 많이 쓰임. 웹 개발할 때 보통 MySQL 씀.
(2)  PostgreSQL - 얘도 오픈소스인데 MySQL보다 기능이 더 많고 복잡한 쿼리 돌릴 때 좋다고 함.
(3)  Oracle - 대기업들이 주로 쓰는 상용 제품. 비싸지만 성능 짱짱.
(4)  SQL Server - 마이크로소프트 제품. 윈도우랑 궁합 좋음.
(5)  SQLite - 가벼운 버전. 모바일 앱 만들 때 많이 씀.


좋은 점


데이터 무결성을 보장한다는 게 제일 큰 장점인 것 같음. 예를 들어서 이메일 중복 안 되게 설정해놓으면 시스템이 알아서 막아줌.

그리고 SQL이라는 언어로 데이터를 다루는데, 이게 표준이라서 MySQL 배우면 PostgreSQL도 비슷하게 쓸 수 있다는 것도 장점.

트랜잭션 처리도 안전하게 됨. 은행 앱 같은 데서 돈 이체할 때 중간에 에러나면 롤백되는 거 있잖아? 그런 거 가능하게 해줌.


단점


요즘 빅데이터나 실시간 처리가 중요해지면서 RDBMS의 한계도 드러나는 것 같음. 데이터가 엄청 많아지면 처리 속도가 느려질 수 있고, 서버 여러 대로 확장하는 것도 NoSQL보다는 복잡해요.

그리고 테이블 구조를 미리 다 정해놔야 해서 유연성이 떨어진다는 단점도 있음. 나중에 컬럼 추가하거나 변경하는 게 좀 귀찮아요.

MongoDB 같은 NoSQL도 요즘 많이 쓰긴 하지만, 대부분의 웹사이트나 앱들은 아직도 RDBMS 쓰고 있음. 특히 데이터 정합성이 중요한 서비스(쇼핑몰, 금융 등)는 거의 무조건 RDBMS.


면접한줄요약

RDBMS는 테이블 형태로 데이터를 저장하고 테이블 간 관계를 설정할 수 있는 데이터베이스 시스템으로, 

SQL을 사용해 데이터를 관리하며 ACID 속성을 통해 트랜잭션의 안정성과 데이터 무결성을 보장합니다.

'SQL' 카테고리의 다른 글

트랜잭션  (1) 2025.12.19
정규화란?  (0) 2025.12.18