본문 바로가기
Cumputer Science/데이터 베이스📈

day02_DBMS + DBS + VIEW에 대해..🥪

by @ENFJ 2022. 9. 15.

[1교시: 2단원_DBMS]

1세대 : 네트워크 구조로 데이터를 관리하기 힘들었다.
그래서 계층 구조로 된 계층DBMS 를 사용해보았지만 여전히 

2세대 : 관계형 DBMS 가 나옴.. 데이터베이스를 테이블 형태로 구성.
- 현재 가장 널리 사용된 데이터베이스 관리시스템

관계형 데이터베이스 특징: SQL, 테이블
어떤 DBMS 를 사용하든 SQL, 테이블 구조는 동일하다.

3세대: 객체형 DBMS => 객체관계DBMS

4세대 : nosql: 비관계형 dbms

+정형데이터 : 틀이 잡혀 있는 데이터, 체계화된 데이터, 높은 안전성, 대부분기업의 업무용 데이터베이스 
+ 비정형데이터: 틀이 잡혀있지 않고 사전정의가 없는 데이터, 다양하고 방대한 양의 데이터, 
텍스트,이미지,음원데이터,빅데이터 

--------------------------------------------------------------------------------------------------------------------------------
[2교시: 3단원_데이터베이스 시스템(DataBaseSystem) ]  db<--- --->dbms <--SQL---> 사용자(데이터베이스 관리자(DBA),  응용프로그래머(개발자),  최종사용자/일반사용자(enduser))
+Enduser 는 일반 사용자(최종 사용자)

데이터베이스 구조
1. 스키마(schema) ==구조
+ 자주 변경되지는 않는다.

2. 인스턴스(instance) == 구조의 값 
+계속 변하는 특성

테이블에 데이터타입이 제약조건이 된다. ex) int, char(10)... 

3단계 데이터베이스 구조

1. 외부단계(==뷰) : 개별 사용자 관점 /view 를 만들어 select 문장 ( 도서관 , 학사) 
2. 개념단계(==테이블) : 조직 전체의 관점  ( 학번, 이름, 학과, 연락처, 주소, email, 보호자, 보호자 연락처)
3. 내부단계(==테이블) : 물리적인 저장 장치의 관점 (int , char(10) 이런것들)


독립 : 만약 자취를 한다면 가족이 이사를 가더라도 통학시간에 영향을 미치지 않는다.
의존 : 가족들과 같이 살고 있고 이사를 한다면  통학시간에 영향을 미친다.
추상화: 추상화 레벨이 올라가면 단순해진다.
실제사실에서 내가 필요로 하는것만 추출한것. (위성 지도 > 서울 지도 > 서울 지하철 노선) 독립성
지하철 노선을 수정하기 위해서 서울지도를 수정할 필요는 없다. - 독립성


뷰 (전체 테이블을 추상화 한것)

html 파일 안에 css , js .... 가 있는것을 분리 시키기는것이 뷰와 비슷..?

뷰 사용하는 이유?
->속도를 줄이기 위해서 쓰는것인가??
그것보다는 뷰를 사용하는 이유는 대체로 사용자의 편의와 데이터베이스의 보안 때문입니다.

예로 회원가입페이지 를 만들때 필요한 데이터를 추려내어 회원가입 뷰를  만들어주는가?
=> 그런거 같음.
--------------------------------------------------------------------------------------------------------------------------------
[3교시: 3단원_데이터베이스 관리시스템(DataBaseManageSystem)]

데이터베이스 하나에 내부 스키마가 하나만 존재함.

메타데이터 : 시스템을 설명하는 자료 > 데이터에 대한 데이터. ex) mysql 로그인 데이터 , select 지정 오류시 에러 코드 데이터 같은게 저장되어있다.

데이터베이스를 크게 세로로 2가지로 잘라보면
1. 데이터 사전(metadata) , 2. userdata 로 구분할 수 있다.

데이터베이스 세계에서는 '메타데이터' 를 '데이터 사전' 또는 '시스템 카탈로그' 라고 함