Chapter1. 데이터베이스 시스템
1. 데이터베이스와 데이터베이스 시스템
데이터, 정보, 지식
- 데이터: 현실 세계에서 단순이 관찰하거나 측정하여 수집한 정량적/정성적인 값
- 정보: 데이터에 맥락과 의미를 부여한 것
- 지식: 정보를 바탕으로 사물이나 현상에 대한 이해를 형성한 것
데이터 과학 시대의 데이터
- 구조에 따른 데이터 분류
| 정형 데이터 | 구조화된 데이터(행, 열 명확히 저장) (엑셀 스프레드시트) |
| 반정형 데이터 | 일정한 구조는 있으나 고정되지 않고, 키값으로 유연하게 저장 (JSON, XML 등) |
| 비정형 데이터 | 구조가 없고 자유로운 형태 (이미지, 영상, 텍스트문서) |
- 특성에 따른 데이터 분류
| 범주형 데이터 | 범주로 구분할 수 있는 값, 즉 종류를 나타내는 값을 가진 데이터(정적 데이터) |
| 수치형 데이터 | 크기 비교와 산술적인 연산이 가능한 숫자값을 가진 데이터(양적 데이터) |
데이터베이스의 활용
- 일상 생활 거의 모든 곳에서 생성되고 활용됨
- 데이터의 검색과 변경 작업을 주로 수행
데이터베이스의 개념 및 특징
- 데이터베이스의 개념: 여러 사용자가 공유하여 사용할 수 있도록 통합하여 저장한 운영 데이터의 집합

| 공유데이터 | 특정 조직의 여러 사용자가 함께 소유하고 이용할 수 있는 공용 데이터 |
| 통합 데이터 | 최소의 중복과 통제 가능한 중복만 허용하는 데이터 |
| 저장 데이터 | 컴퓨터가 접근할 수 있는 매체에 저장된 데이터 |
| 운영 데이터 | 조직의 주요 기능을 수행하기 위해 지속적으로 꼭 필요한 데이터 |
데이터베이스 시스템의 기본 구성요소
- 데이터베이스 시스템: 각 조직에서 사용하던 데이터를 통합하고 공유할 때 생기는 장점을 이용
- 구성: 데이터베이스 관리 시스템(DBMS), 데이터베이스, 데이터 모델
2. 데이터베이스 시스템의 발전
정보기술과 데이터베이스 시스템의 발전
- 동네 서점
- 초기 전산화(로컬 컴퓨터)
- 데이터베이스 시스템 도입(원격 통신)
- 홈페이지 구축(인터넷)
- 인터넷 쇼핑몰로 확장
정보 시스템의 발전
- 파일 시스템
- 데이터베이스 시스템
- 웹 데이터베이스 시스템
- 분산 데이터베이스 시스템

3. 파일시스템과 DBMS
파일시스템과 DBMS 비교
- DBMS 사용시 프로그램이 훨씬 간단하고 개발생산성이 높음
- 파일 시스템에만 저장하면 도서정보 구조변경 시 구조체 정보 수정후 재작성해야 함.
DBMS의 장단점
- 장점: 데이터 중복 통제, 독립성 확보, 동시 공유, 보안 향상, 무결성 유지, 표준화 가능, 장애 발생시 회복 가능, 개발비용 줄어듦
- 단점: 도입비용 높음, 백업과 장애 회복 방법 복잡함, 대규모 사용자의 동시 접속 혹은 복잡한 쿼리 처리시 성능 저하 발생
DBMS의 발전 과정
- 네트워크 DBMS(그래프 형태), 계층 DBMS(트리 형태)
- 관계 DBMS
- 객체지향 DBMS, 객체관계 DBMS
- NoSQL, NewSQL DBMS

4. 데이터베이스 시스템의 구성
데이터베이스 시스템의 구성
- 데이터베이스/DBMS/데이터 모델
- 데이터베이스 사용자
- 인터페이스
- 데이터베이스 언어(SQL)
- 응용프로그램

데이터베이스 언어(SQL)
- 사용자와 데이터베이스 관리 시스템 간의 통신 수단
- SQL(Structured Query Language)의 구성
- 데이터 정의어(DDL): DBMS에 저장된 테이블 구조를 정의하는 데 사용
- 데이터 조작어(DML): 데이터를 검색, 삽입, 삭제, 수정하는 데 사용
- 데이터 제어어(DCL): 내부적으로 필요한 규칙이나 데이터의 사용 권한을 관리하는 데 사용
- SQL의 핵심
- 데이터 조작어 중 데이터를 검색하는 질의문
- 질의문은 SELECT-FROM-WHERE 구조로 되어 있음
데이터베이스 사용자
- 데이터베이스 사용자
- 데이터베이스를 이용하기 위해 접근하는 모든 사람
- 최종 사용자, 데이터베이스 관리자, 응용 프로그래머, SQL 사용자로 구분
- 일반사용자
- 데이터베이스에 접근하여 데이터를 조작하는 사람
- 캐주얼 사용자와 초보 사용자로 구분
- SQL 사용자
- SQL을 사용하여 업무를 처리하는 사용자
- 응용 프로그램으로 구현되지 않은 업무를 SQL을 사용해 처리
- 응용 프로그래머
- 일반 사용자가 사용할 수 있도록 프로그램을 작성하는 사람
- 데이터베이스 관리자(DBA)
- 데이터베이스 시스템을 운영하고 관리하는 사람, 주로 DDL, DCL를 이용
데이터베이스와 DBMS
- 데이터베이스
- 실제 데이터가 저장되는 물리적 저장소
- DBMS
- 데이터베이스를 관리하고 운영하는 제어센터
데이터 모델

- 데이터 모델의 개념
- 현실 세계의 데이터를 DB 구조로 변환하는 논리적 가이드라인
- 관계를 표현하는 방법에 따라 계층/네트워크/관계/객체모델 등이 존재
- 관계 표현 방법: 포인터 사용, 속성값 사용, 객체 식별자 사용
데이터베이스의 개념적 구조

- 스키마: 데이터베이스에 저장되는 데이터 구조와 제약조건을 정의한 것
- 인스턴스: 스키마에 따라 데이터베이스에 실제로 저장된 값
- 외부 단계: 개별 사용자 관점
- 일반 사용자나 응용프로그래머가 접근하는 계층
- 개념 단계: 조직 전체의 관점
- 통합 조직별로 하나만 존재하며 DBA과 관리함
- 내부 단계: 저장 장치의 관점
- 물리적 저장 장치에 데이터베이스가 실제로 저장되는 방법을 표현한 것
- 하나의 데이터베이스에는 내부 스키마 하나만 존재
- 데이터 독립성: 하위 단계의 내용을 추상화하여 상위 단계에 숨김으로써 다른 단계와 상호 간섭이 없도록 하는 것
- 논리적 데이터 독립성(외부-개념 사이) - 새로운 속성을 테이블에 추가해도 기존 사용자 질의는 그대로 동작함!(하위 스키마 변경해도 상위 스키마 영향 X)
- 물리적 데이터 독립성(개념-내부 사이) - 인덱스 구조를 바꾸어도 논리 구조는 동일
후속활동
1. DBMS 종류에 대한 선호도 조사하고 국내 점유율 알아보기
Oracle>MySQL>Microsoft SQL Server 순서라고 한다.
2. DB 자격증
전문가용: SQLP, DAP, OCP
일반용: SQLD< DAsP, ADsP, OCA
- DBMS별 자격증
- Oracle: OCP/OCM
- Google Cloud: Professional Database Engineer
- MongoDB: Associate DBA/Developer
'공부중 > 데이터베이스' 카테고리의 다른 글
| [데이터베이스] 5주차 실습 (0) | 2026.04.04 |
|---|---|
| [데이터베이스] 5주차 강의 요약 (0) | 2026.04.01 |
| [데이터베이스] 4주차 강의 요약 (0) | 2026.03.27 |
| [데이터베이스] 3주차 강의 요약 (0) | 2026.03.20 |
| [데이터베이스] 2주차 강의 요약 (0) | 2026.03.12 |