데이터 베이스가 존재하기 이전에는 파일 시스템을 이용하여서 데이터 관리를 시작
파일 데이터를 이용해서 관리를 하다 보니 문제 점이 발생을 하였다.
데이터 종속성
,데이터 무결성
이 발생이 되었다.
데이터의 독립성
1.1 물지적 독립성
데이터 베이스 사이즈를 늘리거나 성능 향상을 위해서 데이터 파일을 늘리거나 새롭게 추가 하더라도 응용 프로그램을 수정 할 필요가 없다.
1.2 논리적 독립성
데이터 베이스는 논리적인 구조로 다양한 응용 프로그램의 논리적 욕구를 만족 시켜줄 수 있다.
데이터의 무결성은 여러 경로를 통해 잘못된 데이터가 발생하는 경우의 수를 방지하는 기능으로 데이터의 유효성 검사를 통해 구현
데이터의 보안성은 인증된 사용자들만 데이터 베이스나 데이터 베이스의 자원에 대한 접근 권한을 갖는다
데이터 베이스는 데이터를 통합해서 관리함으로써 파일 시스템의 단점 중 하나인 자료의 중복과 데이터 중복 문제를 해결
데이터 베이스의 성능 이슈는 디스크 I/O를 어떻게 줄이느냐에 따라 시작
디스크 I/O 란 디스크 드라이브의 원판을 돌려서 읽어야 할 데이터가 저장된 위치로
디스크 헤더를 이동 시킨 다음 데이터를 읽는 것을 의미한다.
즉, 디스크의 성능은 디스크 헤더의 위치를 이동 없이 얼마나 많은 데이터를 한번에 기록하느냐에 따라 결정
순차 I/O 가 랜덥 I/O 보다 빠를 수 밖에 없다 현실은 대부분의 I/O 작업이 랜덥 I/O 이다.
랟덤 I/O 를 바꿔서 설행할 수 없을까? 이러하는 생각에서 부터 시작되는 데이터 베이스 쿼리 튜닝은 랜덤I/O 자체를 줄여주는 것이 목적이다.
RDB는
Relational DataBase
의 약자로 관계형 데이터 모델에 기초를 둔 데이터 베이스를 의미
관계형 데이터 모델이란 데이터를 구성하는데 필요한 방법중 하나로 모든 데이터를 2차원의 테이블 형태로 표현
RDB의 특징으로 독립성이 높고, 고수준의DML(Data Manipulation Language)
를 사용하여 결합, 제약, 투영 등의 관계 조작에 비약적으로 표현
관계조작에 의해 자유롭게 구조를 변경이 가능 하다.
RDMS 는
Relational DataBase Management System
의 약자로 관계형 데이터 베이스를 생성하고 관리하는 소프트 웨어를 의미
Ex) Mysql, Oracle, Mssql etc...