특강

Database - 데이터베이스란? DBMS? RDBMS?스키마?

Chansman 2025. 3. 18. 18:57

1️⃣ 데이터베이스란?

데이터베이스는 정보를 저장하고 관리하는 시스템입니다. 생각해보세요, 여러분이 도서관에 가서 책을 빌릴 때 책의 제목, 저자, 대출 여부 같은 정보를 정리된 방식으로 찾을 수 있는 시스템이 바로 데이터베이스입니다. 데이터를 잘 저장하고, 필요할 때 빠르게 찾을 수 있도록 하는 시스템이 데이터베이스입니다.

예시:

  • 도서관에서 책을 찾는 것처럼, 데이터베이스에서는 책 정보를 테이블에 저장하고, 책 제목이나 저자로 검색하여 필요한 정보를 빠르게 찾을 수 있습니다.

2️⃣ DBMS와 RDBMS의 차이

  • **DBMS (Database Management System)**는 데이터를 저장하고 관리하는 프로그램입니다. 예를 들어, 우리가 컴퓨터에 파일을 저장하는 프로그램이라고 생각하면 됩니다. 파일들을 관리하는 프로그램처럼 DBMS는 데이터를 관리하는 역할을 합니다.
  • **RDBMS (Relational Database Management System)**는 DBMS의 특수한 형태로, 데이터를 테이블로 저장하고, 그 테이블들 간에 관계를 설정합니다. 마치 학교의 학생 테이블, 성적 테이블, 수업 테이블이 각각의 정보들을 저장하고, 서로 연결되어 있어야 학생의 성적을 제대로 관리할 수 있는 시스템과 같아요.

비유:

  • DBMS는 단순히 서랍장처럼 데이터를 저장하는 것이라면, RDBMS는 서랍장 안에 파일을 잘 정리하고, 각 파일들이 서로 연결된 방식으로 데이터를 관리하는 시스템입니다.

3️⃣ DBMS와 RDBMS의 장단점

DBMS 장점:

  • 유연성: 다양한 형태의 데이터를 자유롭게 저장할 수 있습니다. 예를 들어, 텍스트 파일, 이미지 파일다양한 종류의 데이터를 함께 저장할 수 있습니다.

DBMS 단점:

  • 데이터 일관성 부족: 데이터를 저장할 때 규칙이나 관계를 제대로 설정하지 않으면 중복이나 오류가 발생할 수 있습니다. 예를 들어, 두 명의 학생이 같은 학번을 가질 수 있는 상황이 생길 수 있습니다.

RDBMS 장점:

  • 정확성: 데이터가 테이블관계로 잘 정리되어 있기 때문에, 중복이나 잘못된 데이터가 발생하지 않도록 규칙을 설정할 수 있습니다. 예를 들어, 학생과 성적연결해서 관리하기 때문에 성적 데이터에 오류가 생기지 않게 할 수 있습니다.
  • SQL 사용: 데이터에 접근하는 방법이 표준화된 SQL 언어로 제공되어, 쉽게 조회수정을 할 수 있습니다.

RDBMS 단점:

  • 성능 문제: 대량의 데이터가 있을 경우 처리 속도가 느려질 수 있습니다. 예를 들어, 너무 많은 학생 정보성적을 관리하는 경우 데이터 처리에 시간이 오래 걸릴 수 있습니다.
  • 복잡성: 많은 테이블을 관리하다 보면 설계가 복잡해지고, 데이터를 연결하거나 수정할 때 실수가 생길 수 있습니다.

4️⃣ 데이터베이스 스키마란?

데이터베이스 스키마는 데이터베이스의 구조를 정의하는 설계도입니다. 스키마테이블이 어떻게 생길지(어떤 정보가 들어갈지, 어떤 순서로 저장될지 등)를 결정합니다. 마치 집을 짓기 위한 설계도처럼, 데이터를 어떻게 저장하고 연결할지를 정해줍니다.

비유:

  • 스키마는 마치 건축 설계도와 같아요. 설계도에 따라 이나 , 방의 크기를 정의하는 것처럼, 스키마는 데이터베이스 안에서 어떤 테이블이 필요한지, 그 테이블 안에 무엇을 저장할지를 정의합니다.

예시:

  • 예를 들어, 학교 데이터베이스에서는 학생 테이블이 있고, 그 안에 학생 이름, 학번, 학년을 저장한다고 설계할 수 있습니다. 또 다른 테이블인 성적 테이블에서는 학번, 과목명, 성적을 저장합니다. 이런 식으로 두 테이블을 연결할 수 있게 해주는 것이 바로 스키마입니다.

✅ 5️⃣ 요약

  • 데이터베이스는 데이터를 저장하고 관리하는 시스템입니다.
  • DBMS는 데이터를 저장하는 시스템이고, RDBMS테이블을 이용해 데이터 간의 관계를 설정하여 데이터의 정확성을 보장하는 시스템입니다.
  • DBMS는 유연하지만 데이터 무결성을 보장하기 어려운 반면, RDBMS정확성을 보장하지만, 처리 성능이 떨어질 수 있습니다.
  • 스키마는 데이터베이스 구조를 정의하는 설계도로, 데이터가 어떻게 저장되고 연결될지에 대한 규칙을 설정합니다.