2017년/Database

데이터 베이스 개요

위지원 2017. 6. 26. 18:22

데이터 베이스 배움터 -홍의경을 보고 공부한 내용


데이터 베이스란

-어떤 조직체에 관련된 사실들을 수집한 데이터

-조직체의 응용시스템들이 공유해서 사용하는 운영 데이터들이 구조적으로 통합된 모임이며 구조는 사용되는 데이터 모델에 의해 결정

-데이터 베이스 스키마(자주변하지않음)는 내포 데이터베이스 상태(자주 변함)는 외연이라고 부름


시스템 카탈로그(데이터 사전)

-저장된 데이터 베이스의 스키마 정보를 유지


DBMS

-사용자가 데이터를 효율적으로 질의,수정할 수 있도록 함

-권한이 없는 사용자,시스템고장으로부터 데이터 보호

-데이터베이스 동시 접속 제어

-소프트웨어 패키지

-데이터베이스 언어라고 부르는 특별한 프로그래밍 언어를 한 개 이상 제공

-한 DBMS에서 여러 데이터 베이스를 관리


DBMS장점

-중복성과 불일치 감소

-보다 나은 서비스 제공

-프로그램-데이터 독립성 향상

-개발,유지 비용 감소

-표준화 시행 용이

-보안 향상

-무결정 향상

-조직체의 요구사항을 식별

-다양한 유형의 고장으로부터 데이터 베이스를 회복할 수 있음

-다양한 도구 활용

-데이터 베이스의 공유와 동시 접근이 가능


DBMS단점

-DBMS의 자체 구입 비용이 상당히 비쌈

-DBMS가 자동적으로 DB의 일관성을 유지하기 위해 컴퓨터 자원을 많이 필요로 하여 응답시간이 오래걸림

-백업과 회복의 복잡도도 높고 역설적으로 중앙 집중과 관련된 문제가 발생

-다수 사용자의 접근으로 인해 프라이버시 노출

-데이터 갱신 사용자들을 제어해야 함


그러므로! 


  1. 초기의 투자비용이 너무 큼
  2. 오버헤드가 너무 큼
  3. 응용이 단순하고 잘 정의 되었으며 변경되지 않음
  4. 엄격한 실시간 처리 요구사항 존재
  5. 데이터에 대한 다수 사용자 접근 불필요


할땐 DBMS를 사용하지 않는 것이 바람직할 수 도 있음!



데이터 모델

-고수준(개념적) 데이터 모델 : 사람이 인식하는 것과 유사하게 데이터베이스의 전체적인 논리적인 구조를 명시 (Ex. entity-Relationship)

-표현(구현) 데이터 모델 : 최종 사용자가 이해하는 개념이면서 컴퓨터 내에서 데이터가 조직되는 방식과 멀리 떨어지지 않음


1)계층 데이터 모델 : 

ㄱ.데이터 접근을 미리 응용프로그램에 정의해야함

ㄴ.생성시 관계정의도 미리해야함

ㄷ.레코드 구조 변경도 어렵고 응용프로그램 수정도 어려워 데이터 독립성이 매우 제한적 

ㄹ.질의어가 절차적이라서 한개의 레코드를 검색 할 수 있음


2)네트워크 데이터 모델

ㄱ.레코드 구조 변경도 어렵고 응용프로그램 수정도 어려워 데이터 독립성이 매우 제한적 

ㄴ.질의어가 절차적이라서 한개의 레코드를 검색 할 수 있음



3)관계형 데이터 모델

ㄱ.모델이 간단하여 이해하기 쉬움

ㄴ.데이터의 위치와 접근방법을 dbms가 결정


-저수준(물리적) 데이터 모델 : 시스템이 인식하는것과 같은데,db에 data가 어떻게 저장되는가를 기술 (Ex. ISAM,VSAM)



DBMS 언어

-DDL(데이터 정의어) : CREATE,ALTER,DROP,CREATE INDEX

-DML(데이터 조작어) : SELECT,UPDATE,DELETE,INSERT

-DCL(데이터 제어어) : 트랜잭션 명시, 권한 부여 또는 취소


ANSI/SPARC 3단계 아키텍처

-외부 단계 : 각 사용자의 뷰

-개념 단계: 사용자 공동체의 뷰 - 조직체의 정보 모델 조직체 전체에 관한 스키마

-내부 단계: 물리적 또는 저장 뷰

**각 하위단계는 상위단계에 영향을 미쳐서는 안됨 

-외부/개념 사상 : 외부 단계의 뷰를 사용해 질의를 개념단계의 스키마를 사용한 질의로 변환 

-개념/내부 사상 : 변환된 질의를 내부 단계의 스키마로 변환하여 디스크의 DB에 접근


-논리적 데이터 독립성 : 개념스키마의 변화로 외부스키마가 영향을 받지 않음

-물리적 데이터 독립성 : 내부 스키마의 변화가 개념적 스키마,외부스키마에 영향을 미치지 않음


출처 url 

https://zetawiki.com/wiki/%EA%B4%80%EA%B3%84%EB%AA%A8%EB%8D%B8,_%EA%B4%80%EA%B3%84%ED%98%95DB