[DB] DB, DBMS, Database System
목차
▶ 데이터베이스 (DB, Database)
- 사용자의 실세계를 사용자의 요구에 맞게 컴퓨터에 형상화한 서로 연관이 있는 데이터의 모음
- 전자적으로 저장되고 사용되는 관련있는(related) 데이터들의 조직화된 집합(organized collection)
- 저장된 데이터의 집합
(관련있는 데이터: 같은 서비스, 같은 목적, 같은 출처 아래에서 생성되는 데이터들)
- 여러 사용자가 함께 소유하고 사용할 수 있는 공유 데이터
- 중복을 최소화한 통합 데이터
- 컴퓨터가 접근할 수 있는 매체에 들어 있는 저장 데이터
- 조직의 주요 기능을 수행하기 위해 반드시 필요한 운영 데이터
● 데이터베이스의 목적
- 데이터 공유
- 데이터 중복 제어
- 데이터의 독립(Independence)
- 객체와 관계의 표현
- 데이터 무결성(Integrity) 유지 - Consistency
- 효율적인 물리 데이터베이스 설계
- 보안
- 정보처리 용이
- 자료를 가공하여 정보를 생산하는 작업을 정보 처리라 하며, 데이터베이스는 정보 처리 작업을 효과적으로 수행할 수 있도록 지원하는 필수적인 도구
- 의사 결정 용이
- 주어진 수치 또는 문자 자료를 가공하여 정보로 생성하여(정보처리), 추론을 통해 문제에 대한 최선의 답안을 내는 인간 본연의 행위인 의사 결정을 용이하게 하기위해
(가공된 데이터 → 의사결정 용이)
● 데이터베이스의 특징
- 실시간 접근 가능
- 계속 변화
- 동시 공유 가능
- 내용으로 참조 가능
● 파일 시스템
- 데이터를 파일로 관리하기 위해 파일의 생성·삭제·수정·검색 기능을 제공하는 소프트웨어
- 응용 프로그램마다 필요한 데이터를 별도 파일로 관리
- 데이터 중복성과 데이터 종속성 문제가 발생
▶ 데이터베이스 관리 시스템(DBMS, Database Manangement Systems)
- 파일 시스템의 문제를 해결하기 위해 제시된 소프트웨어
- 데이터베이스에 저장된 데이터가 일관되고 무결한 상태로 유지되도록 관리하는 역할
- 사용자에게 DB를 정의하고 만들고 관리하는 기능을 제공하는 소프트웨어 시스템
- DB를 정의하다 보면 부가적인 데이터(메타 데이터)가 발생함
- 조직에 필요한 데이터를 데이터베이스에 통합하여 저장해두고 이를 관리함
ex) MySQL, MariaDB, Oracle, Microsoft SQL 등
▷메타데이터(metadata)
- 데이터를 정의하는 데이터 (data about data)
ex) 사진의 대한 해상도, 사진이 찍힌 날짜 등
▷데이터베이스의 메타데이터(metadata)
- 데이터베이스를 정의하거나 기술하는 데이터
- 카탈로그(catalog), 데이터 사전이라고도 부름(데이터베이스의 메타데이터가 저장되는 곳을 카탈로그라고도 부름)
- 메타데이터 또한 DBMS를 통해 저장/관리된다
ex) 스키마, 사상 정보, 데이터 유형, 구조, 제약 조건, 보안, 저장, 인덱스, 사용자 그룹 등
▶ 데이터베이스 시스템(DBS, Database System)
- 데이터베이스에 데이터를 저장하고, 저장된 데이터를 관리하여 조직에 필요한 정보를 생성해주는 시스템
- 데이터베이스와 데이터베이스 관리 시스템을 이용해 조직에 필요한 정보를 제공해주는 전체 시스템
- 사용자 + 연관된 application/Queries/데이터 언어 + Database + DBMS
- 문맥에 따라 Database라고도 부름

▷ 데이터 언어(Data language)
- 사용자가 데이터베이스 접근할 때 사용하는 데이터 언어
- 사용자를 대신해 데이터베이스를 구축하고 활용 및 관리하는 데이터베이스 관리 시스템에 부탁할 때 사용하는 언어
- 데이터베이스를 구축하고 이에 접근하기 위해 데이터베이스 관리 시스템과 통신하는 수단
▷ 데이터 언어 분류
● DDL (데이터 정의어) - 스키마를 정의하거나, 수정 또는 삭제하기 위해서 사용
● DML (데이터 조작어) - 데이터의 삽입·삭제·수정·검색 등의 처리를 요구하기 위해서 사용
● DCL (데이터 제어어) - 내부적으로 필요한 규칙이나 기법을 정의하기 위해서 사용

▶ DB, DBMS, DBS 구분
구분 |
설명 |
데이터베이스 (DB) | 저장된 데이터의 집합 |
데이터베이스 관리 시스템 (DBMS) | 데이터베이스에 저장된 데이터가 일관되고 무결한 상태로 유지되도록 관리하는 역할 |
데이터베이스 시스템 (DBS) | 데이터베이스와 데이터베이스 관리 시스템을 이용해 조직에 필요한 정보를 제공해주는 전체 시스템 |
참고문헌
- 코딩팩토리 (tistory.com)
- 백엔드에서 사용되는 데이터베이스(database) 기본 개념을 설명합니다~ 중요한 DB 용어들을 잘 알고 있어야 기본기를 탄탄하게 다지는데 도움이 되겠죠? :) - YouTube
- 김성규·고진광(2019), 데이터베이스 처리, 도서출판 한산 - 책