1. 데이터베이스 시스템
1) 데이터베이스 시스템의 구성요소
· 데이터베이스(DB) : 스키마 + 실제 데이터
· 데이터베이스 관리 시스템(DBMS) - 소프트웨어
· 데이터베이스 언어(DB language)
· 데이터베이스 사용자(User)
· 데이터베이스 관리자(DB Administrator)
· 데이터베이스 컴퓨터(H/W)
· 데이터베이스 도구(Tool/Utility)
2. 스키마(Schema)
1) 스키마
· 데이터베이스 = 스키마 + 실제 데이터
· DB 내 데이터 구조, 관계, 제약조건에 대한 명세
· 관점에 따라 스키마는 달라질 수 있음
⇝ 응용 프로그램 관점
⇝ 조직 및 기관 관점
⇝ 물리적 저장 장치 수준의 관점
2) 3단계 스키마 구조
· 외부 스키마(External Schema)
: 사용자, 응용 프로그램 수준
: 서브 스키마라고도 함(DB 중 일부만 봄)
· 개념 스키마(Conceptual Schema)
: 조직 수준, 외부 스키마들이 통합된 것
: 일반적인 스키마를 말함
· 내부 스키마(Internal Schema)
: 개념 스키마의 저장 구조(데이터 구조, 필드 등)를 정의
3) 각 단계 간 사상(Mapping)
2. 시스템 카탈로그
1) 시스템 카탈로그
· 스키마 정보, 사상 정보 등을 저장한 시스템 데이터베이스
· 데이터베이스 시스템이 사용하는 데이터를 유지하는 시스템용 데이터베이스(System Database)
· 메타 데이터 유지(데이터 내에 어떤 정보가 있는지 등)
· 데이터 사전, 일반 사용자도 접근 가능
2) 데이터 디렉토리
· 시스템 카탈로그를 접근하기 위한 정보
· 사용자 접근 불가, 시스템만 접근 가능
3) DBMS 구조(클라이언트-서버)
→ client가 SQL로 네트워크를 통해 서버에 데이터 요청
→ 서버가 데이터베이스에 접근해 데이터 전달
3. 데이터 언어
1) 데이터 정의어(DDL)
: 데이터베이스를 정의하는 용도
2) 데이터 조작어(DML)
: 데이터의 추가/조회/갱신/삭제 용도
3) 데이터 제어어(DCL)
: 데이터의 보안, 무결성, 병행제어, 회복을 위한 언어
⇛ 최근에는 SQL이 정의, 조작, 제어 모든 기능을 함.
4. 데이터베이스 사용자
1) 일반 사용자
· 응용 프로그램을 통해 데이터베이스를 사용하는 사람
· DB에 대한 지식이 거의 없음
2) 응용 프로그래머(개발자)
· 범용 프로그램 언어/개발 툴을 사용해
응응 프로그램을 개발하는 사람
3) 데이터베이스 관리자(DBA)
· 데이터베이스 시스템 관리, 운영 -> 가장 중요한 사람
· 데이터베이스와 컴퓨터 시스템에 대한 상당한 지식 요구
5. 데이터베이스 관리자의 업무
1) 데이터베이스 설계와 운영
· 스키마 정의
· 저장구조 및 접근 방법 결정
· 보안/권한 정책 결정
· 백업 회복 절차 수립
· 데이터 무결성 유지 방법
· 성능 향상, 새로운 요구에 대응할 데이터 베이스 재구성
· 시스템 카탈로그의 유지 관리
2) 행정 관리 및 불평 해결
3) 시스템 감시 및 성능 분석
6. 컴퓨터 시스템
-> 데이터베이스 시스템을 구동하는 컴퓨터, 서버 컴퓨터
1) 2계층 구조 - 과거
: 네트워크를 중심으로 서버와 클라이언트 구분
2) 3계층 구조 – 현재
: 네트워크 2개로 연결, DBMS 서버 관점에서 client 2개
7. 데이터베이스 도구
· 대량 적재 도구
· import/export tool
· 백업 도구
· 파일 재조직 도구
· 성능 모니터링 도구
'CS > 데이터베이스' 카테고리의 다른 글
[DB] 6. SQL Basic (0) | 2022.07.15 |
---|---|
[DB] 5. 관계 대수와 관계 해석 (0) | 2022.06.28 |
[DB] 4. 관계 데이터베이스 (0) | 2022.06.19 |
[DB] 2. 데이터베이스 관리 시스템 (0) | 2022.06.03 |
[DB] 1. 정보 환경 (0) | 2022.06.02 |