데이터 베이스(Database)란?
데이터베이스(Database)는 여러 사람이 공유할 목적으로 체계화해 통합, 관리하는 데이터의 집합을 의미한다.
데이터베이스는 일반적으로 데이터베이스 관리 시스템(DBMS, DataBase Management System)에 의해서 제어됩니다.
데이터베이스의 특징
- 자료 추상 : 복잡한 자료를 쉽게 사용, 개념화 , 사물의 공통 성질을 추출함(간단하게 학생이라는 데이터를 추상화한다면 이름, 나이, 반, 학번등으로 구별하여 사용할 수 있다.)
- 자료 독립 : 자료와 프로그램의 독립성(데이터와 프로그램 사이에서 프로그램이 변경되어도 자료는 변하지 않고, 자료를 변경하더라도 프로그램은 그대로 사용할 수 있어야 한다.)
- 자기 정의 : 자료의 구성과 내용을 DB 자신이 저장 및 관리(데이터를 정의하는 자료(메타데이터 같은 것들)를 데이터베이스가 저장하고 있다.)
데이터베이스의 장점
- 데이터의 논리적 독립성 : 논리적 구조가 변경되어도 데이터베이스를 이용하는 프로그램에는 영향을 안 미친다.
- 데이터의 물리적 독립성 : 저장 장치의 구조가 변경되어도 데이터베이스를 이용하는 프로그램 및 개념 스키마에는 영향을 안 미친다.
- 데이터의 무결성 유지 : 데이터를 사용할 때 다양한 제약조건으로 데이터에 결점이 생기지 않도록 유지한다.
- 데이터 중복성 최소화 : 데이터를 통합하여 구성함으로 중복을 미리 통제한다.
- 데이터 불일치 제거 : 중복을 최소화하여 불일치를 제거한다.
데이터 베이스 관리 시스템(DBMS, DataBase Management System)이란?
데이터베이스 관리 시스템은 다수의 사용자들이 데이터베이스 내의 데이터를 접근할 수 있도록 해주는 소프트웨어 도구의 집합이다.
데이터베이스 관리 시스템은 사용자 또는 다른 프로그램의 요구를 처리하고 응답하여 데이터를 사용할 수 있게 해준다.
데이터베이스 관리 시스템의 필수 기능
- 정의 기능 : 데이터의 형태, 구조, 데이터를 저장하는 것에 관한 내용 정의한다.
- 조작 기능 : 사용자의 요구에 따라 데이터의 검색, 갱신, 삽입, 삭제 등을 지원
- 제어 기능 : 데이터의 정확성과 안정성을 유지하는 기능
스키마(Schema)란?
DB의 구조(개체, 속성, 관계)에 대한 정의 및 제약 조건 등을 기술한 것을 의미한다.
- 개체(Entity) : 현실 세계에서 꼭 필요한 사람이나 사물과 같이 구별되는 모든 것을 말한다.(식당에 필요한 개체 : 고객, 음식, 요리사 등등)
- 속성(Attribute) : 개체나 관계가 가지고 있는 고유의 특성을 말한다.(음식의 속성 : 메뉴 이름, 메뉴 가격, 재료 원산지 등등)
- 단일 값 속성 : 값을 하나만 가질 수 있는 속성
- 다중 값 속성 : 값을 여러개 가질 수 있는 속성
- 단순 속성 : 의미를 더는 분해할 수 없는 속성
- 복합 속성 : 의미를 분해할 수 있는 속성 (주민번호 앞자리 → 년, 월, 일로 구성되어있다.)
- 유도 속성 : 기존의 다른 속성의 값에서 유도되어 결정되는 속성 (Ex, 할인율을 적용한 판매가)
- 널(Null) 속성 : 아직 결정되지 않았거나 존재하지 않는 값 (공백, 0과는 다른 의미이다.)
- 키(Key) 속성 : 각 개체를 식별하는 데 사용되는 속성
- 관계(Relationship) : 서로 다른 개체가 맺고 있는 의미 있는 연관성을 말한다. ("학생이 수업을 수강한다."에서 수강이 관계를 의미한다.)
- 일대일 관계 (1 : 1) : 개체들이 서로 하나만 대응되는 관계이다.(Ex, 학생은 하나의 학번을 가지고 있다.)
- 일대다 관계(1 : N) : A개체는 B개체를 여러개와 대응될 수 있지만 B개체는 A개체의 하나의 값만 대응되는 관계를 말한다. (Ex, 예매자는 극장 좌석을 2개 이상 예매할 수 있지만, 좌석은 여러 사람이 동시에 가질 수 없다.)
- 다대다 관계(N : M) : A개체도 B개체도 서로 여러개와 대응되는 관계를 말한다.(Ex, A학생은 걷기와 음악듣기라는 취미를 가지고 있다. B학생도 걷기와 음악듣기 취미를 가지고 있다.)
크게 개념 스키마, 외부 스키마, 내부 스키마로 구성되어있다.(그러나 각 DBMS마다 스키마의 정의가 다를 수 있다.)
- 개념 스키마 : 데이터 전체의 구조를 정의한다.
- 외부 스키마 : 이용자가 취급하는 데이터 구조를 정의한다. (각 사용자가 접근할 수 있는 인터페이스 역할을 담당한다.)
- 내부 스키마 : 데이터 구조의 형식을 구체적으로 정의한다. (실제 데이터가 어떤 형식인지(숫자인지, 문자열인지 등) 및 구조 등을 정의한다.)
참고 자료
https://ko.wikipedia.org/wiki/%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4
데이터베이스 - 위키백과, 우리 모두의 백과사전
위키백과, 우리 모두의 백과사전. SQL 데이터베이스 쿼리의 예. 데이터베이스(영어: database, DB)는 여러 사람이 공유하여 사용할 목적으로 체계화해 통합, 관리하는 데이터의 집합이다.[1] 작성된
ko.wikipedia.org
https://www.oracle.com/kr/database/what-is-database/
데이터베이스란?
데이터베이스에 대한 필수 지식과 이를 비즈니스에 활용하는 방법을 알아보세요.
www.oracle.com
데이터베이스 관리 시스템 - 위키백과, 우리 모두의 백과사전
위키백과, 우리 모두의 백과사전. 데이터베이스 관리 시스템(영어: database management system, DBMS)은 다수의 사용자들이 데이터베이스 내의 데이터를 접근할 수 있도록 해주는 소프트웨어 도구의 집
ko.wikipedia.org
https://velog.io/@kon6443/DB-ERD-%EA%B4%80%EA%B3%84-%EC%8B%9D%EB%B3%84%EC%9E%90-%EA%B4%80%EA%B3%84
[DB] ERD 관계 / 식별자 관계 / 1:1 & 1:N & N:M
ERD (Entity Relationship Diagram) > ERD란 Entity Relationship Diagram의 약자로, DB에서 존재하는 것들의 관계를 도표로 나타낸 것이다. 테이블이 어떤식으로 구성되어있고, 어떻게 어떤 테이블과 연결되어있는
velog.io
https://star7sss.tistory.com/815
[DB] 데이터베이스 스키마 개념과 종류 (외부, 개념, 내부)
데이터베이스 시스템을 이루는 3가지 스키마에 대해서 알아보고, 이를 구분하는 인터페이스를 살펴봅니다. [ Contents ] 1. 데이터베이스 시스템 데이터베이스 시스템은 위와 같이 작동합니다. 사
star7sss.tistory.com
[ 05/31 TIL ] 데이터베이스 이상 현상(Anomaly)
난 잘못이 없는데 DB오류가 뜬다!?
velog.io
혹시라도 틀린 내용이 있다면 댓글로 알려주시면 감사하겠습니다!!
'CS(Computer Science) > Database' 카테고리의 다른 글
[Database] DBMS 성능 테스트(JMeter + Prometheus + Grafana) (2) | 2025.06.11 |
---|---|
[Database] Transaction이란? (1) | 2025.06.10 |
[Database] SQL 문법 총 정리 (3) | 2025.06.10 |
[Database] 정규화(Normalization)란? (0) | 2025.06.08 |
[Database] 데이터 모델링(Data Modeling)이란? (1) | 2025.06.08 |