티스토리 뷰
ANSI/SPARC 아키텍처
현재의 대부분의 상용 DBMS 구현에서 사용되는 일반적인 아키텍처는 1978년에 제안된 ANSI/SPARC 아키텍처
ANSI/SPARC 아키텍처의 3단계는 물리적, 개념적, 외부 단계로 이루어짐
외부 단계(external level): 각 사용자의 뷰
개념 단계(conceptual level): 사용자 공동체의 뷰
내부 단계(internal level): 물리적 또는 저장 뷰
![](https://blog.kakaocdn.net/dn/c7Wcqz/btshBiXiV26/x0PQzmGgDZr2B0wMcIOJRK/img.png)
대표
사진 설명을 입력하세요.
;
;
외부 단계
데이터베이스의 각 사용자가 갖는 뷰
여러 부류의 사용자를 위해 동일한 개념 단계로부터 다수의 서로 다른 뷰가 제공될 수 있음
일반적으로, 최종 사용자와 응용 프로그래머들은 데이터베이스의 일부분에만 관심을 가짐
;
![](https://blog.kakaocdn.net/dn/cF3zN5/btshy5kDXJo/UzHgFYI9TmhLaX9B36gNuk/img.png)
대표
사진 설명을 입력하세요.
;
개념 단계
조직체의 정보 모델로서, 물리적인 구현은 고려하지 않으면서 조직체 전체에 관한 스키마를 포함
데이터베이스에 어떤 데이터가 저장되어 있으며, 데이터 간에는 어떤 관계가 존재하고, 어떤 무결성 제약조건들이 명시되어 있는가를 기술함
데이터베이스에 대한 사용자 공동체의 뷰를 나타냄
데이터베이스마다 오직 한 개의 개념 스키마가 존재
![](https://blog.kakaocdn.net/dn/dc5qcd/btshy7irXtB/sIlksIgjTwnkJxayeCkkP1/img.png)
대표
사진 설명을 입력하세요.
;
;
내부 단계
실제의 물리적인 데이터 구조에 관한 스키마
데이터베이스에 어떤 데이터가 어떻게 저장되어 있는가를 기술함
인덱스, 해싱 등과 같은 접근 경로, 데이터 압축 등을 기술함
데이터베이스의 개념 스키마에는 영향을 미치지 않으면서 성능을 향상시키기 위해 내부 스키마를 변경하는 것이 바람직
내부 단계 아래는 물리적 단계
물리적 단계는 DBMS의 지시에 따라 운영 체제가 관리함
![](https://blog.kakaocdn.net/dn/uRde5/btshAzekkIJ/yt9UCXi7kFFAsVNkFL0Yn0/img.png)
대표
사진 설명을 입력하세요.
;
;
전체 지하철 노선도에 대해 사당동에 사는 학생이 청량리에 있는 학교에 통학하기 위해서 사당역, 동대문역, 청량리역에만 관심을 갖는다.
;
전체 지하철 노선도에 대해 양재동에 사는 직장인이 광화문에 있는 사무실에 출퇴근하기 위해서 양재역, 종로3가역, 광화문역에만 관심을 갖는다.
![](https://blog.kakaocdn.net/dn/etJpWh/btshA0WUqce/CVlnGPKwOwNpZNGfsJZS60/img.png)
대표
사진 설명을 입력하세요.
스키마 간의 사상
DBMS는 세 가지 유형의 스키마 간의 사상을 책임짐
외부/개념 사상(external/conceptual mapping)
외부 단계의 뷰를 사용해서 입력된 사용자의 질의를 개념 단계의 스키마를 사용한 질의로 변환
개념/내부 사상(conceptual/internal mapping)
이를 다시 내부 단계의 스키마로 변환하여 디스크의 데이터베이스를 접근
;
;
데이터 독립성
상위 단계의 스키마 정의에 영향을 주지 않으면서 어떤 단계의 스키마 정의를 변경할 수 있음을 의미
논리적인 데이터 독립성(logical data independence)
물리적인 데이터 독립성(physical data independence)
;
;
;
논리적 데이터 독립성
개념 스키마의 변화로부터 외부 스키마가 영향을 받지 않음을 의미
기존의 외부 스키마에 영향을 미치지 않고, 응용 프로그램을 다시 작성할 필요 없이 개념 스키마에 대한 변화가 가능해야 함
물리적 데이터 독립성
내부 스키마의 변화가 개념적 스키마에 영향을 미치지 않으며, 따라서 외부 스키마(또는 응용 프로그램)에도 영향을 미치지 않음을 의미
내부 스키마의 변화의 예:
화일의 저장 구조를 바꾸거나 인덱스를 생성 및 삭제
;
![](https://blog.kakaocdn.net/dn/beBgb4/btshy5EWFWk/cOPbV0LXZGn9njZ0BiHTSk/img.png)
대표
사진 설명을 입력하세요.
;
;
;
;
데이터 정의어 컴파일러(DDL compiler) 모듈
데이터 정의어를 사용하여 테이블 생성을 요청하면 테이블을 파일 형태로 데이터베이스에 만들고, 이 테이블에 대한 명세를 시스템 카탈로그에 저장
;
질의 처리기(query processor) 모듈
데이터 조작어를 수행하는 최적의 방법을 찾는 모듈을 통해서 기계어 코드로 번역
;
런타임 데이터베이스 관리기(run-time database manager) 모듈
디스크에 저장된 데이터베이스를 접근
;
트랜잭션 관리(transaction management) 모듈
동시성 제어(concurrency control) 모듈
회복(recovery) 모듈
;
;
;
데이터베이스 API(Application Program Interface)
ODBC(Open Database Connectivity)는 마이크로소프트 사가 주도적으로 개발한 데이터베이스 API
ODBC를 지원하는 DBMS 간에는 서로 상대방의 데이터베이스를 접근할 수 있음
;
![](https://blog.kakaocdn.net/dn/HnYmL/btshy6qjk8I/dWVGVvX21LYuik1dnFSbkK/img.png)
대표
사진 설명을 입력하세요.
;
;
중앙 집중식 데이터베이스 시스템(centralized database system)
데이터베이스 시스템이 하나의 컴퓨터 시스템에서 운영됨
![](https://blog.kakaocdn.net/dn/bRThV6/btshFaxHEZH/sehRueLnVmRJ4jKHPyrgAk/img.png)
대표
사진 설명을 입력하세요.
;
;
;
분산 데이터베이스 시스템(distributed database system)
출처 입력
네트워크로 연결된 여러 사이트에 데이터베이스 자체가 분산되어 있으며, 데이터베이스 시스템도 여러 컴퓨터 시스템에서 운영됨
사용자는 다른 사이트에 저장된 데이터베이스도 접근할 수 있음
![](https://blog.kakaocdn.net/dn/qTvzX/btshz1B3Rc6/nhLY5dB8xa9wqpKFv1IOz1/img.png)
대표
사진 설명을 입력하세요.
;
;
클라이언트-서버 데이터베이스 시스템(client-server database system)
PC 또는 워크스테이션처럼 자체 컴퓨팅 능력을 가진 클라이언트를 통해 데이터베이스 서버를 접근
데이터베이스가 하나의 데이터베이스 서버에 저장되어 있음
데이터베이스 시스템의 기능이 서버와 클라이언트에 분산됨
서버는 데이터베이스를 저장하고 DBMS를 운영하면서 여러 클라이언트에서 온 질의를 최적화하고, 권한 검사를 수행하고, 동시성 제어와 회복 기능을 수행하고, 데이터베이스의 무결성을 유지하고, 데이터베이스 접근을 관리
클라이언트는 사용자 인터페이스를 관리하고 응용들을 수행
![](https://blog.kakaocdn.net/dn/bpDzeZ/btshHNCdv3T/eY6yLn3AsLfIU8iugkQDgk/img.png)
대표
사진 설명을 입력하세요.
;
;
;
2층 모델(2-tier model)
클라이언트와 데이터베이스
서버가 직접 연결됨
3층 모델(3-tier model)
클라이언트와 데이터베이스
서버 사이에 응용 서버가 추가됨
![](https://blog.kakaocdn.net/dn/dqIutb/btshA1hc2g8/w7iKIstydHQgcvIjssXhE1/img.png)
대표
사진 설명을 입력하세요.
클라이언트-서버 데이터베이스 시스템의 장점
데이터베이스를 보다 넓은 지역에서 접근할 수 있음
다양한 컴퓨터 시스템을 사용할 수 있음
;
클라이언트-서버 데이터베이스 시스템의 단점
보안이 다소 취약할 수 있음
'it' 카테고리의 다른 글
자바(Java) 데이터 저장을 위한 컬렉션(Collection)과 제네릭(Generics)의 활용 - (자바 List, set, Map) (0) | 2023.06.25 |
---|---|
오라클 인덱스 (0) | 2023.06.16 |
파이썬 if-else 문 (0) | 2023.06.14 |
파이썬 윤년 구하기 (0) | 2023.06.14 |
알고리즘 WiringPi (0) | 2023.06.13 |
- Total
- Today
- Yesterday
- 신데렐라게임실시간시청방법
- 오블완
- 노트북인터넷
- 엄마친구아들무료보기
- 손해보기싫어서무료시청
- 리눅스서버용량
- 검색히스토리
- 네이버검색기록삭제
- 리눅스용량
- 검색히스토리삭제
- 엄마친구아들무료시청
- qr코드만드는방법
- linux용량
- 신데렐라게임
- 티스토리챌린지
- 엄마친구아들
- qr코드만드는법
- 서버용량확인
- 큐알코드만드는법
- 검색기록지우는방법
- 무료사진다운로드
- linux서버용량확인
- 엄마친구아들실시간무료보기
- 무료사진다운
- 신데렐라게임생방
- linux용량확인
- 엄마친구아들무료로보기
- 신데렐라게임실시간
- tvn무료로보기
- 노트북인터넷연결
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |