카테고리 없음
001 데이터베이스의 개념
◆ 데이터베이스(DataBase)의 정의
DataBase란 특정 조직의 업무를 수행하는 데 필요한 데이터들의 모임이다.
간단하게 하자면, 데이터(Data)들의 모임이 데이터베이스(DataBase) 라는 뜻이다.
2) 저장 데이터 (Stored Data)
: 컴퓨터가 접근 가능한 저장매체에 저장됨.
4) 공유 데이터 (Shared Data)
: 여러 응용 프로그램들이 공동으로 사용하는 데이터
3) 운영 데이터 (Operational Data)
: 조직의 목적을 위해 존재 가치가 확실한, 반드시 필요함.
1) 통합 데이터 (Integrated Data)
: 검색의 효율성을 위해 중복이 최소화된 것.
◆ 데이터베이스의 특징
1) 실시간 접근성 (Real Time Accessibility)
: 사용자의 요구에 즉시 처리하여 응답함.
2) 계속적인 진화 (Continuous Evolution)
: 삽입, 삭제, 갱신을 통해 항상 최신의 정확한 데이터를 유지.
3) 동시 공유 (Concurrent Sharing)
: 여러 사용자가 동시에 데이터를 공용 가능.
4) 내용에 의한 참조 (Content Reference)
: DB에 있는 Data를 참조할 때 사용자가 원하는 내용에 따라 참조함.
- Data의 논리적, 물리적 독립성 (Independence)
1) 논리적 독립성
: 프로그램과 DB를 독립시킴으로써 Data의 구조를 변경시켜도 프로그램은 변경되지 않는다는 특징. 간단히 말해 프로그램과 나뉘어져 따로 운영할 수 있는게 DB이다. DB가 응용 프로그램과 나뉘어 있지 않다면 독립적이지 않고 프로그램과 합춰진 형태여야 하는데, 그렇게 된다면 프로그램의 구조가 변경될 때 DB의 데이터도 변경될 위험성이 있다는 얘기다.
2) 물리적 독립성
: 응용 프로그램과 물리적 장치(예로 보조기억장치같은)를 독립시킴으로써 DB 시스템의 성능향상을 위해 새로운 디스크를 도입하더라도 프로그램에는 영향을 주지 않음.
◆ 데이터 언어 (Data Language)
: DB를 구축하기위한 시스템과의 통신 수단
: 사용목적에 따라 DDL, DML, DCL로 나뉜다.
우리가 아는 SQL이 바로 이 Data Language이다.
1) DDL (데이터 정의어, Data Definition Language)
: DB 구축, 변경 목적으로 사용하는 언어
2) DML (데이터 조작어, Data Manipulation Language)
: 데이터 처리에 필요한, 프로그램간의 인터페이스를 위한 언어
3) DCL (데이터 제어어, Data Control Language)
: 보안 및 권한등을 제어하기 위한 언어
- 데이터베이스 사용자
: 각 직업의 차이점을 구별할 줄 알아야 한다.
1) 데이터베이스 관리자 (DBA : DataBase Administrator)
: DDL, DCL을 통해 DB를 정의한다.
2) 데이터 관리자 (Data Administrator)
: Data를 정의한다. 즉, 기업의 전반적인 상황을 보고 DB를 어떻게 구성할 것인지 결정한다. Data에 대한 관리를 총괄하며 데이터 표준 준수등을 위한 역할이 요구된다.
3) 데이터 설계자 (Data Architect)
: 기업의 업무에 필요한 Data의 구조를 체계적으로 정의한다. 왜 있는지 이해는 안가지만
데이터 관리자가 DB를 구축하기 이전에 구조를 구성한다면
데이터 설계자는 DB를 구축한 이후에 체계적인 계획을 세운다.
4) 응용 프로그래머 (Application Programmer)
: C나 Java로 프로그램을 제작하며,
프로그램 안에 DML을 삽입하여 DB에 접근한다. 그러니 어느정도는 DB관리 시스템에 대해 알고 있어야 한다.
5) 일반 사용자 (End User)
: 말그대로 User이다. DB관리 시스템을 제작이 아닌 이용하는 사람들
질의어 (Qyery Language)를 통해 시스템에 접근한다.