- 데이터 베이스의 정의
- 통합 데이터( Integrated Data) :검색의 효율성을 위해 중복이 최소화된 데이터의 모임
- 저장 데이터(Stored Data) : 컴퓨터가 접근 가능한 저장 매체에 저장된 데이터
- 운영 데이터(Operational Data) :조직의 목적을 위해 존재 가치가 확실하고 반드시 필요한 데이터
- 공유 데이터(Shared Data) : 여러 응용 프로그램들이 공동으로 사용하는 데이터
- 데이터 베이스의 특징
- 실시간 접근성(Real Time Accessibility) : 사용자의 질의에 대하여 즉시 처리하여 응답하는 특징
- 계속적인 진화(Continuous Evolution) : 삽입, 삭제 , 갱신을 통하여 항상 최근의 ㅈ정확한 데이터를 동적으로 유지
- 동시 공유(Concurrent Shraring) : 여러 사용자가 동시에 원하는 데이터를 공용할 수 있는 특징
- 내용에 의한 참조(content Reference) : 데이터베이스에 있는 데이터를 참조할 때 튜플(Tuple)의 주소나 위치에 의해서가 아니라 사용자가 요구하는 데이터 내용에 따라 참조하는 특징
- 데이터의 논리적 , 물리적 독립성(Independence)
- 논리적 독립성 : 응용 프로그램과 데이터베이스를 독립시킴으로써 데이터의 논리적 구조를 변경시키더라도 응용 프로그램은 변경되지 않는 특징
- 물리적 독립성 : 응용 프로그램과 보조기억장치와 같은 물리적 장치를 독립시킴으로써, 데이터 베이스 관리 시스템의 성능 향상을 위해 새로운 디스크를 도입하더라도 응용프로그램에는 영향을 주지 않고 데이터의 물리적 구조만 변경될 수 있는 특징
- 데이터베이스 시스템은 자료를 저장하고 관리하여 정보를 얻어내는 데 필요한 컴퓨터 중심의 시스템
- 데이터베이스 시스템의 구성 (1번부터)
- 일반사용자 >질의어 >질의어 처리기 , 응용 프로그래머 > DML > DML컴파일러 , 데이터베이스 관리자 > DDL > DDL컴파일러
- 트랜잭션 관리자 <--> 런타임 데이터베이스 처리기
- 저장 데이터 관리자
- 데이터 사전 , 데이터베이스
- 데이터 언어
- DDL(정의) : 논리적 물리적 구조를 정의 및 변경 데이터 사전에 저장,명령문 :CREATE(생성), ALTER(변경), DROP(제거)
- DML(조작) : 검색 ,삽입, 삭제 , 갱신 , 절차적 데이터 조작어(what o , how o) ,비절차적 데이터 조작어(what o , how x) ,명령문 : SELELCT , INSERT, DELETE, UPDATE
- DCL(제어) : 보안 ,무결성, 회복 ,병행제어 DBA(데이터베이스 관리자)가 데이터 관리를 목적으로 사용 명령문: COMMIT(영구적으로 반영 완료), ROLLBACK(이전상태로 돌리기),GRANT(권한 부여), REVOKE(권한 취소)
- 데이터베이스 관리자(DBA: DataBase Administrator):DDL과 DCL을 통해 데이터베이스를 정의하고 제어하는 사람 또는 그룹이다.
- 데이터 관리자(Data Adminstrator):하나의 기업 또는 조직 내에서 데이터에 대한 정의, 체계화, 감독 및 보안업무를 담당할 뿐 아니라 기업 또는 조직 전반에 걸쳐 존재하는 데이터에 대한 관리를 총괄하고 정보 활용에 대한 중앙 집중적인 계획 수립 및 통제를 수행한다.
- 데이터 베이스 관리 시스템의 필수 기능
- 정의 기능:데이터의 타입과 구조, 데이터가 데이터베이스에 저장될 때의 제약 조건 등을 명시하는 기능 제공
- 조작 기능 : 체계적 데이터 처리를 위해 데이터 접근 기능(검색, 삽입, 삭제, 갱시 등)을 명시하는 기능을 제공
- 제어 기능 : 데이터의 정확성과 안전성을 유지하기 위해 무결성, 봔 및 권한 검사 ,병행 제어 등을 명시 제공 기능
- 데이터베이스 관리 시스템(DBMS)의 장점
- 데이터의 논리적, 물리적 독립성이 보장된다.
- 데이터의 중복을 피할 수 있다.
- 데이터의 실시간 처리가 가능
- 데이터의 보안 일관성 무결성 유지
- 항상 최신의 데이터를 유지할 수 있다.
- 데이터 스트림 관리 시스템(DSMS):통신상 데이터 스트리밍을 통해 데이터를 처리하고 관리하는 시스템으로,DBMS와 비슷한 면이 있지만 정적이고 영구적인 데이터를 처리하고 관리하기 위한 DBMS와는 달리 데이터 스트림이라는 동적인 특성을 지닌 데이터를 처리하고 관리하는 시스템이다.
- 스키마 : DB 구조 , 제약 조건에 관한 전반적인 명세 ,개체(Entity) , 속성(Attribute), 관계(Retationship), 데이터 값들이 같는 제약 조건
- 스키마는 사용자 관점에 따라 외부 , 개념 , 내부 스키마로 나뉜다.
- 데이터 사전(Data Dictionary) = 데이터에 관한 데이터 가 저장, 데이터 사전을 메타 데이터라한다,시스템 카탈로그도된다. 데이터 베이스에 저장되어 있는 모든 데이터 개체들에 대한 정보를 유지 관리하는 시스템
- 외부 스키마(논리적) > 서브 스키마라고도 한다. 여러개의 응용프로그램이나 사용자에 의해 공유될 수 있다.
- 개념 스키마(전체적 논리) >제약조건, 접근 권한, 보안 정책 및 무결성 규정에 관한 명세,관점 데이터베이스관리자
- 내부 스키마(물리적) > 하나만 존재 , 관점은 시스템 프로그래머 ,시스템 설계자
- 스키마를 개발하는 과정
- 요구 조건 분석 :용도 를 파악하는 작업
- 개념적 설계 : 추상적 개념
- 논리적 설계 : 논리 스키마 설계 , 정규화 , 인터페이스 정의
- 물리적 설계 : 접근 경로를 결정 물리스키마, 트랜잭션 정의
- 데이터 베이스 구현 : DDL -> DML