일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 |
Tags
- String
- DP
- MYSQL
- 스토어드 프로시저
- SQL
- Brute Force
- Hash
- 이진탐색
- Stored Procedure
- binary search
- Dijkstra
- Trie
- Two Points
- union find
- 다익스트라
- 그래프
- two pointer
Archives
- Today
- Total
codingfarm
[DB] DB, DBMS, 스키마 본문
1. DB
- 여러 사람에 의해 공유되어 사용될 목적으로 통합하여 관리되는 데이터의 집합
- 파일시스템의 단점을 극복하기 위해 고안
1-1. DB의 정의
- 통합 데이터(Integrated Data)
- 한곳에 통합
- 최소한의 중복
- 저장 데이터(Stored Data)
- 컴퓨터가 접근 가능한 매체에 저장되어야 함
- 운영 데이터(Operational Data)
- 시스템의 운영에 반드시 필요한 데이터를 포함
- 공용 데이터(Shared data)
- 여러 사용자에 의해 공유됨
1-2. DB의 특성
- 실시간 접근성(Real-time Accessibility)
- query에 대해 실시간 처리 가능
- 계속적인 변화(Continuous Evolution)
- 새로운 데이터의 삽입, 삭제, 갱신을 통해정확한 자료를 유지
- 동시 공용(Concurrent Sharing)
- 다수의 user가 동시 접근 가능
- 내용에 의한 참조(Contents Reference)
- 위치나 주소가 아닌 값에 의한 참조가 가능
2. 데이터베이스 관리 시스템(Database Management System)
- 응용 프로그램과 DB사이의 중재자
- DB를 관리하는 프로그램
- 역할 : 중복 최소화, 동시 접근 제어, 일관성/무결성/보안 유지
3. DB 사용자
- 일반 사용자(End User)
- 터미널에서 query를 통해 데이터의 검색, 삭제, 갱신등의 작업을 수행
- 응용 프로그래머(Application Programmer)
- 응용 프로그램을 통해 DB에 접근
- 일반사용자의 인터페이스를 제공
- DB 관리자(DBA; Database Administrator)
- DB의 설계와 운영, 시스템 감시, 성능분석, 접근 제어, 행정 및 불편 해결
4. 스키마(Schema)
4-1. 정의 및 특징
- DB의 구조와 제약조건에 관한 전반적인 명세를 기술한 것
- DBMS가 주어진 설정에 따라 스키마를 생성
- DBMS로 query가 주어지면, 스키마를 참조하여 명령을 수행한다.
- 메타데이터(Meta-data)라고도 한다.
- 시불변성
4-2. 스키마의 3계층
- 사용자의 관점에 따라 3개로 구분됨
종류 | 관점 | 특징 |
외부 스키마 (External Schema) |
일반 사용자, 응용프로그래머 |
개인의 입장에서 필요로 하는 DB의 논리적 구조 개인이나 특정 목적에 한정됨 여럿이 공유 가능 하나의 DB에 여러개 존재 가능 서브 스키마(sub schema), 사용자 뷰(view)라고도 칭함 |
개념 스키마 (Conceptual Schema) |
모든 사용자, 모든 응용 프로그램 |
모든 사용자와 프로그램이 필요로하는 DB의 논리적 구조 개체간의 관계와 제약조건을 나타냄 |
내부 스키마 (Internal Schema) |
물리적 저장장치, 시스템 프로그래머, 설계자 |
데이터베이스의 물리적 구조를 가리킴(= 실제 저장방법을 기술하는 물리적인 저장장치와 관련됨) 저장 스키마(Storage Schema) 라고도 함 |
관계 : 사용자 - 외부 스키마(여러개) - 개념 스키마 - 내부스키마 - 저장 DB
별첨. 용어
- 유일성(unique) : 중복이 없음
- 접근성 : 검색의 용이함
- 경제성 : 효율적인 저장공간, 갑싼 갱신 비용
- 무결성(integrity) : 데이터의 정확성과 일관성이 보증
- 원자성(atomic) : 데이터는 완전히 수정되거나, 아예 수정이 되지 않았을때만 저장되어야한다. 즉 수정되다말고 저장되어선 안된다.
- 동시 액세스 : 동시 접근 및 수정
- 정합성(consistency) : 모든 데이터들이 모순 없는 상태
'면접준비 > 직무면접' 카테고리의 다른 글
[DB] 데이터 모델, E-R 다이어그램 (0) | 2021.03.31 |
---|---|
C++ (0) | 2019.11.09 |
C (0) | 2019.10.27 |
정렬 (0) | 2019.10.25 |
개발 상식(OOP) (0) | 2019.10.24 |
Comments