데이터베이스의 간단한 개념을 정리하는 글을 작성하였습니다. (참고문헌 : 오라클로 배우는 데이터베이스 개론과 실습 '한빛아카데미')
데이터베이스란 각 조직에서 사용하던 데이터를 모아서 통합하고 공유할 목적으로 구축된 데이터 대상들이다. 즉 우리에게 필요한 정보들을 구조적으로 모아둔 곳이라고 생각하면 된다.
<개념>
통합된 데이터 : 여러곳에서 사용하던 데이터를 통합하여 하나로 저장한 데이터를 의미한다.
저장된 데이터 : 문서로 보관된 데이터가 아니라 디스크, 테이프 같은 컴퓨터 저장장치에 저장된 데이터를 의미한다.
운영 데이터 : 조직의 목적을 위해 사용되는 데이터를 의미한다.
공용 데이터 : 한 사람 또는 한 업무를 위해 사용되는 데이터가 아닌 공동으로 사용되는 데이터를 의미한다. 데이터는 어느 순간이라도 둘 이상의 프로그램 또는 여러 사람이 동시에 사용할 수 있다.
<특징>
실시간 접근성 : 데이터베이스는 실시간으로 서비스된다. 사용자가 데이터를 요청하면 수 초 내에 결과를 서비스한다.
계속적인 변화 : 데이터베이스에 저장된 내용은 한 순간의 상태이지만, 데이터 값은 시간에 따라 항상 바뀐다.
동시 공유 : 데이터베이스는 서로 다른 업무 또는 여러 사용자에게 동시에 공유된다.(동시=병행 -> 데이터베이스에 접근하는 사용자 데이터 요청 프로그램이 동시에 여러 개 있다는 의미이다.)
내용에 따른 참조 : 데이터베이스에 저장된 데이터는 물리적인 위치가 아니라 값에 따라 참조된다.
데이터베이스의 테이블(엑셀과 같이 데이터가 저장되어있는 형태를 테이블이라 한다.)은 위 그림과 같은 용어를 사용한다.
테이블의 행 = 파일의 레코드 = 튜플
테이블의 열 = 파일의 필드 = 어트리뷰트(속성)
데이터베이스 시스템은 줄여서 DBMS라고 불리는데, 각 조직에서 사용하던 데이터를 모아서 통합하고 서로 공유하여 생기는 장점을 이용하는 시스템이다.
DBMS는 데이터베이스의 데이터를 접근하기 위해 데이터베이스와 연결을 시켜주는 소프트웨어라고 생각하면 된다.
<구성>
DBMS : 사용자와 데이터베이스를 연결시켜주는 소프트웨어
데이터베이스 : 데이터를 모아둔 토대
데이터 모델 : 데이터가 저장되는 기법으로, 눈에 보이지 않는 논리적인 개념
SQL이란 Structured Query Language라고 불리며, DBMS에 저장된 데이터를 조작하고 수신하기 위해 고안된 공용 언어이다.
<명령어 종류>
언어에 대해서는 추후에 자세히 알아보도록 하겠습니다. 여기 클릭
논리적, 물리적 데이터 독립성을 유지하기 위해 ANSI에서 표준을 만들었다.
외부/개념 매핑 : 사용자의 외부 스키마와 개념 스키마 간의 매핑(사상)으로 외부 스키마의 데이터가 개념 스키마의 어느 부분에 해당되는지 대응시킨다.
개념/내부 매핑 : 개념 스키마의 데이터가 내부 스키마의 물리적 장치 어디에 어떤 방법으로 저장되는지 대응시킨다.
외부 단계와 개념 단계 사이의 독립성으로, 개념 스키마가 변경되어도 외부 스키마에는 영향을 미치지 않도록 지원한다는 개념이다. -> 논리적 구조가 변경되어도 응용 프로그램에는 영향이 없도록 하는 개념이다.
(ex) 개념 스키마 테이블을 생성하거나 변경하여도 외부 스키마가 직접 다루는 테이블이 아니면 영향이 없다.
개념 단계와 내부 단계 사이의 독립성으로, 저장 장치 구조 변경과 같이 내부 스키마가 변경되어도 개념 스키마에 영향을 미치지 않도록 지원한다는 개념이다.
(ex) 성능 개선을 위하여 물리적 저장 장치를 재구성할 경우에 개념 스키마 or 응용 프로그램 같은 외부 스키마에 영향이 없다.
물리적 독립성은 논리적 독립성보다 구현하기 쉽다!!