스키마란 무엇인가 ??

BackEnd_Ash.log·2020년 5월 18일
1

database

목록 보기
5/31

https://ykcb.tistory.com/entry/%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4-%EC%8A%A4%ED%82%A4%EB%A7%88%EC%9D%98-%EA%B0%9C%EB%85%90-%ED%8A%B9%EC%A7%95

  • 컴퓨터 과학에서 데이터베이스 스키마(database schema)는 데이터베이스에서 자료의 구조, 자료의 표현 방법, 자료 간의 관계를 형식 언어로 정의한 구조이다.
    데이터베이스 관리 시스템(DBMS)이 주어진 설정에 따라 데이터베이스 스키마를 생성하며, 데이터베이스 사용자가 자료를 저장, 조회, 삭제, 변경할 때 DBMS는 자신이 생성한 데이터베이스 스키마를 참조하여 명령을 수행한다.

스키마는 3층 구조로 되어있다.

  • 외부 스키마(External Schema) : 프로그래머나 사용자의 입장에서 데이터베이스의 모습으로 조직의 일부분을 정의한 것
  • 개념 스키마(Conceptual Schema) : 모든 응용 시스템과 사용자들이 필요로하는 데이터를 통합한 조직 전체의 데이터베이스 구조를 논리적으로 정의한 것
  • 내부 스키마(Internal Schema) : 전체 데이터베이스의 물리적 저장 형태를 기술하는 것

여기서 우리가 자주 보는것은 아마도 개념스키마 이다.
그리고 사용자의 입장에서 보는 모습이 외부스키마 입니다.

외부 스키마

개인의 입장 , '서브스키마' 라고도 한다.
사용자 뷰를 가리킨다.
하나의 외부스키마는 여럿이 공유 가능하며 ,
하나의 DB시스템에 여러 개의 외부스키마가 존재 가능

내부 스키마

시스템 프로그래머나 설계자의 관점에서 바라보는 스키마 ,
데이터베이스의 물리적 구조를 가리킴 (= 실제 저장방법을 기술하는 물리적인 저장장치와 관련됨)

데이터베이스의 물리적 구조

개념스키마

조직 전체의 입장 , 전체적인 뷰를 가리킨다 .
개체간의 관계와 제약조건을 나타내고 ,
데이터베이스의 접근권한 / 보안 / 무결성 규칙에 대한 명세를 정의함.

데이터베이스의 전체적인 뷰

일반적으로 '스키마' 라는 내부스키마를 가리킴 ,
내부 스키마는 DBA 가 만듦 , 데이터베이스의 전체적인 구조로써 하나만 존재해야 함

profile
꾸준함이란 ... ?

0개의 댓글