데이터베이스 시스템의 구성요소
데이터베이스
-스키마 + 실제 데이터
데이터베이스 관리시스템 DBMS
데이터베이스 언어
데이터베이스 사용자
데이터베이스 관리자
데이터베이스 컴퓨터
데이터베이스 도구
스키마
데이터베이스
스키마 + 데이터
스키마
DB내의 데이터의 구조, 관계, 제약 조건에 대한 명세(Specification)
관점에 따라 스키마는 달리 보여질 수 있음
- 응용프로그램 관점
- 조직 전체의 관점
- 물리적 저장 장치 수준의 관점
3단계 스키마 구조
외부 스키마
-개개의 사용자 또는 으용프로그램 수준의 스키마
-서브 스키마라고도 함
개념 스키마
-조직 전체 수준의 스키마
-외부 스키마들이 통합된 것
-일반적으로 스키마는 개념 스키마를 의미
내부 스키마
-개념 스키마의 저장 구조를 정의
외부 단계
외부스키마1, 외부스키마2, 외부스키마N
개념 단계
개념 스키마
내부 단계
내부 스키마, 물리적 저장 구조
시스템 카탈로그
스키마 정보, 사상 정보 등을 저장한 시스템 데이터베이스
- 데이터베이스 시스템이 사용하는 데이터를 유지하는 시스템용 데이터베이스
- 메타 데이터를 유지
- 데이터 사전이라고도 함
- 일반 사용자도 접근 가능
데이터 디렉토리
- 시스템 카탈로그를 접근하기 위한 정보
- 사용자 접근 불가능
- 시스템만 접근 가능
질의 컴파일러와
똑같은 명령이라도 빨리 처리할 수 있는 방법을 찾아내는 것이 질의 최적화기로 Query Optimizer라고 부릅니다. SQL로 된 것을 변환하고 실제 수행햇야 할텐데 실제 수행하는 부분을 런타임 질의평가 엔진이라고 합니다.
그럼 데이터베이스를 사용하려면 어떤 식으로 써야할까요?
데이터 언어
지금 가장 많이 사용되는 것은 SQL입니다. SQL이 나오기 전에는 종류별로 분류해서 불렀습니다.
- 데이터 정의어 : 데이터베이스를 정의하는 용도
- 데이터 조작어 : 데이터의 추가/조회/갱신/삭제 용도
- 데이터 제어어 : 데이터의 보안, 무결성, 병행제어, 회복을 위한 언어
널리 사용되는 관계형 데이터베이스에서는 SQL이 모든 기능 담당
데이터베이스 사용자
일반 사용자
-응용 프로그램을 통해 데이터베이스를 사용하는 사람
-데이터베이스에 대한 지식이 거의 없음
응용 프로그래머
-범용 프로그램 언어 또는 개발 툴을 사용하여 데이터베이스 응용프로그램을 개발하는 사람
데이터베이스 관리자
-데이터베이스 시스템을 관리하고 운영
-데이터베이스와 컴퓨터 시스템에 대한 상당한 지식 필요
데이터베이스 관리자의 업무
데이터베이스 설계와 운영
- 스키마 정의
- 저장구조의 접근 방법 결정
- 보안 및 권한 정책 결정
- 백업, 회복 절차 수립
- 데이터 무결성 유지 방법
- 성능 향상 및 새로운 요구에 대응하기 위한 데이터 베이스 재구성
- 시스템 카탈로그의 유지 관리
행정 관리 및 불평 해결
시스템 감시 및 성능 분석
컴퓨터 시스템
- 데이터베이스 시스템을 구동하는 컴퓨터
- 오늘날에는 주로 서버 컴퓨터에 해당
컴퓨터 시스템의 구성
2-층 클라이언트 - 서버 구조
데이터베이스 도구
- 대량 적재 도구
- Import / Export Tool
- 백업 도구 (Backup Tool)
- 파일 재조직 도구 (File Reorganization Tool)
- 성능 모니터링 도구 (Performance Monitoring Tool)
기존에 있는 데이터를 한번에 넣어줄 일이 있다 보니 그럴 때 쓰는 것이 대량 적재 도구 즉 Bulk Loading Tool입니다. 그다음에 Import/Export Tool은 데이터베이스 안에 외부에서 데이터를 넣어주는 것입니다. 반대로 데이터베이스 안에 있는 데이터를 바깥쪽으로 Oracle -> File 같이 보내는 걸 Export Tool입니다.
데이터를 백업 받을 때 하는 것을 백업 툴이라고 하고 데이터베이스의 내부 구조를 연장할 때 사용해주는 것을 파일 재조직 도구입니다. 대부분의 경우 데이터베이스를 오래 쓰다 보면 느려지는 경우에 합니다.
데이터베이스 관리자 입장에서 데이터베이스가 제대로 동작하고 있는지 그리고 성능이 얼만큼 나오는지 감시할 때 사용하는 프로그램을 성능 모니터링 도구라고 합니다.
'IT 프로그래밍 > 데이터베이스' 카테고리의 다른 글
[데이터베이스] 정보환경 (0) | 2025.04.09 |
---|---|
[데이터베이스] 트랜잭션과 개념 (0) | 2025.03.30 |
[FT][데이터베이스] 관계 대수 (0) | 2025.03.28 |
[데이터베이스] 유형 및 특징 (0) | 2025.03.11 |
[데이터베이스] 데이터와 정보의 상관관계 (0) | 2025.03.11 |