Lec #0 - Prologue

Blue·2023년 10월 14일
0

Why Databases?

첫 프롤로그에서는 왜 데이터베이스이여야하냐에 대해서 설명해 나갈것이다.

Data Management Example

Scenario 와 Needs 를 확인해보자

Solution : A "File-based" System

File-based system 을 만들어서 저장하면 된다.

사용하기 편하고, Record 의 insert,delete 가 쉽다.

그래서 이것들이 만병통치약일까?

Complication

그래서 9개의 Complication 을 확인하면서 어떤것들이 필요한지 확인하자

Queries(질의)

Data와 data Schem 사이의 정교한 query language 가 필요하다.

Integrity(무결성)

Input 으로 Valid 한 정보만을 수용하기 위해서 enforce constraints 가 필요하다.

Update(갱신)

data 구성방식을 조작할수 있는 능력

Multiple Users(다중 사용자)

만약 두 Clerk 가 같은 시간에 같은 file 을 수정하게 된다면 메모리 충돌로 원하는 결과가 나오지 않을것이다 결국 이것들을 통제할수 있어야한다.

그렇기에 Multiple users,writer 를 지원해야하며 일련의 순서로 발생되어야한다.

Crashes(크래시)

업데이트 중 Crash 가 불안정한 상태로 이끌수 있다.

all or none basis 에 기초하여 update 가 이뤄져야한다.
commit , rollback 구현.

Data Physically Separate(물리적으로 떨어져 있는 데이터)

만약 위와 같은 Merge 를 수행하지 못하는 문제
또한 홍길동이 중복 되거나 Customer 의 정보가 없을때 문제가 생기게 된다.

그렇기에 Unique 하게 각 Customer 를 식별할수있어야하고
영화를 rent 한 customer의 정보를 확실히 해야한다.

Security(보안)

영화가 몇번 Rent 됐는지 알고싶다.
그러면 rent.txt 에는 허용을 하고 customer field 는 건들면 안된다.

그렇기에 누가 information 에 대해 접근을 가지고 있는지 control 하는 능력이 필요하다.

Efficiency

List 는 시간이 지나면 지날수록 거대하게 자랄것이다.
그렇게 되면 당연하게 느려진다

그렇기에 새로운 자료구조가 필요하고
속도 향상을 위해서 자동으로 query 를 수정하는 system 이 필요하다.
또한 거대한 database 를 통제하는 system 의 능력 또한 필요하다.

New Needs

어떤 영화의 Pair 가 더 자주 rent 되는지 궁금하다.
영화 조합의 가능성에 대해 계산해야함.

그렇기에 요약 데이터에 대해서 수집 & 분석이 필요하고
정교한 program 을 통해서 data의 접근 지원을 해야하낟.

Limitations of File-based System

Program 은 보안,동시성제어,스키마 재구성,성능 향상을 위한 데이터구조 총 4가지를 반드시 구현해야한다.

profile
할수있다가 아닌 해야한다!!

0개의 댓글

관련 채용 정보