제5장 데이터베이스 관리
1.2 데이터의 단위(Data Hierarchy) 데이터의 계층구조: 필드(field), 레코드(record), 파일(file), 데이터베이스(DB)
2.1 파일처리시스템(FPS)의 특징 및 단점 FPS(FPS: File Processing Systems)는 각각의 시스템은 해당 시스템에 종속된 해당 파일만을 사용하기 때문에, 데이터의 공유(data sharing)가 되지 않음. 학적파일 (학번, 이름, 생년월일, 주소, 학과, 입학년도) 학적관리시스템 성적파일 (학번, 이름, 생년월일, 주소, 학과, 과목, 학점, 평균학점) 성적관리시스템 파일처리시스템의 문제점: 데이터의 중복: 학적관리시스템 및 성적관리시스템에서 5개의 필드 데이터가 중복 응용프로그램과 데이터의 의존성: 학적관리시스템은 학적파일 만을 사용 데이터 표준화 문제: 각 부서에서 별도로 시스템을 개발/관리하는 관계로 표준화 문제가 발생 유연성의 결여: 새로운 정보 요구 시, 데이터 통합의 결여로 인해 지원이 곤란.
2.2 데이터베이스관리시스템의 특징 및 장점 데이터베이스관리시스템(DBMS: Database management systems)이란? 다양한 응용프로그램을 위하여 데이터베이스의 구조를 정의하고, 정의한 대로 데이터베이스를 구축 하여 여러 사용자 또는 여러 응용프로그램이 이를 손쉽게 사용할 수 있도록 지원하는 소프트웨어 (Oracle, DB2, MS-SQL Server, MS-Access, MySQL) 데이터베이스시스템(DBMS)의 4가지 구성요소 (1) 데이터베이스(DB), (3) 데이터베이스관리시스템(DBMS), (3) 응용프로그램, (4) 사용자(최종사용자, 응용프로그램 개발자, 데이터베이스 관리자)를 포함 데이터베이스관리시스템(DBMS)의 장점: FPS의 문제점을 제거 (1) 데이터의 공유 (2) 데이터의 중복 통제 (3) 프로그램과 데이터의 독립 (4) 데이터 접근 통제, 데이터 복구 (5) 다양한 인터페이스 지원, 응용프로그램 개발기간의 단축
(1) Database (2) DBMS 소프트웨어 (3) 응용 프로그램 (4) 사용자 SQL 사용자 DBMS 소프트웨어: Oracle, DB2, MS-SQL Server, MS-Access, MySQL 등 Database: 여러 관련 파일들의 집합 (예: 학적, 성적, 교수, 장학금 파일 등) 학적관리 s/w 사용자 성적관리 s/w 사용자
2.3 DBMS의 기능 데이터베이스의 2종류 언어: DDL( Data Definition Language): 데이터베이스의 구조를 정의. DML(Data Manipulation Language): 데이터베이스에 있는 데이터의 검색, 삽입, 삭제, 갱신을 위해 다양한 연산을 지원하는 기능을 수행. DBA(Database Administrator): 데이터베이스를 개발/관리하는 전문가. DD(Data Dictionary): 데이터의 주소, 저장구조, 형식, 데이터들 사이의 관계 등 데이터베이스에 대한 데이터를 제공.
2.4 DBMS의 유형 계층형(Hierarchical) 및 망형(Network) 데이터베이스 데이터들간의 관계를 포인터(pointer)를 사용하여 물리적으로 연결하며, 계층형은 Tree, 망형은 Network 형태로 표현됨. 오늘날 거의 사용되지 않고 있음. 관계형(Relational) 데이터베이스 데이터베이스는 테이블(table)의 집합으로 정의되며, 여러 테이블간 관계 가 공통적으로 보유한 속성들을 통해 논리적으로 연결됨. 주 키와 외래 키를 이용하여 테이블간을 연결. 오늘날 가장 널리 사용되고 있음.
3.1 데이터베이스 설계단계 1. 데이터베이스 사용자 요구분석 ER 모델을 이용하여, 개체 관계성도(ERD)을 작성 2. 개념적 설계 (개념 스키마) 응용시스템의 기능 분석 관계형 DB를 이용하여, 개체 및 관계성을 테이블로 전환 3. DBMS 선정 및 논리적 설계 4. 물리적 설계 (내부 스키마) 응용시스템의 성능 및 제약조건 5. 데이터베이스 구현 및 활용
3.2 개체관계성 모델(ER Model): 개념적 설계 대학 데이터베이스의 예: 우리 대학의 데이터베이스는 학생들에 대한 일반적인 신상정보(학번, 이름, 생년월일, 주소, 전화번호)와 더불 어 어떤 과목을 수강하였고 수강한 과목에 대해서는 어떤 학점을 받았는지에 대한 정보를 제공하여야 한다. 또한 교과목(과목번호, 과목명, 과목설명)과 교수(교수번호, 이름, 전공분야, 교수연구실)에 대해 어느 과목을 어느 교수가 강의하는지 등 일반적 정보가 제공되어야 한다. 학생은 학부학생과 대학원생으로 구성되어 있다. 개체 및 속성 학생(학부학생, 대학원생): 학번, 이름, 생년월일, 주소, 전화번호 교과목: 과목번호, 과목명, 과목설명 교수: 교수번호, 이름, 전공분야, 교수연구실 관계 및 속성 학생은 교과목을 수강: 학점 교수는 교과목을 강의 학부학생은 학생이다. 대학원생은 학생이다.
개념적 설계: 개체관계성도(ERD) 이름 주소 과목번호 과목명 학번 n 수강하다 n 학생 교과목 과목설명 전화번호 ※ 상위 타입 n 생년월일 학점 강의하다 대학원생 학부학생 1 교수 전공분야 ※ 하위 타입 교수번호 연구실 교수이름
3.3 논리적 설계 수강: M:N 관계도(강의하다) 로부터 전환 학생: 학생 개체로부터 전환 교수: 교수 개체로부터 전환 개체관계성도(ERD)의 개체 및 관계성을 테이블(table)로의 전환 관계형 데이터베이스의 정규화(Normalization) 수강: M:N 관계도(강의하다) 로부터 전환 학생: 학생 개체로부터 전환 교수: 교수 개체로부터 전환 학번 과목번호 학점 01001 C001 A C101 C 00123 B C102 C005 01025 학번 이름 주소 01001 김원일 서울 종로구 00123 홍병근 경기 고양시 01025 이희경 경기 성남시 교수번호 이름 연구실 P001 홍길동 O101 P141 이순재 O201 P103 김영길 O322 교과목: 교과목 개체로부터 전환 과목번호 과목명 과목설명 교수번호 C001 전산학개론 전산학 기본 내용 P001 C101 경영원론 경영학 원론 내용 P141 C102 MIS 경영정보시스템 P103 C005 Database 데이터베이스 원론 ← 교수번호는 외래 키
3.4 관계형 데이터베이스의 정규화 데이터베이스 설계의 기준: 데이터베이스에서 데이터의 중복이 존재할 때, 삭제이상(delete anomaly), 삽입이상(insert anomaly), 갱신이상(update anomaly)이 존재하므로, 정규화를 통해 이러한 “이상”을 제거하여야 한다. 정규화: 복잡한 테이블 구조를 여러 개의 단순한 테이블 구조로 분할하는 작업 ([그림 5-11]의 1개의 테이블을, [그림 5-12]의 4개의 테이블로 분할) 정규화의 단계: 제1차 정규형 (first normalized form: 1NF) : 모든 필드는 원자값 제2차 정규형 (second normalized form: 2NF) : 부분 종속성 제거 제3차 정규형 (third normalized form: 3NF) : 이행 종속성 제거 No. 11
4. 데이터웨어하우스와 비즈니스 인텔리전스 전통적 경영정보 DB 구축의 문제점 데이터 신뢰성의 상실 데이터 활용 생산성의 하락 데이터로부터 정보로의 전환의 어려움 데이터 웨어하우스의 특성 여러 데이터원천으로부터의 데이터 통합 과거부터 현재까지 시계열 데이터 저장 주제별로 정리된 데이터베이스 기존 데이터 값에 대한 갱신이 없는 데이터베이스 필요에 따라 미리 계산해 놓은 요약 데이터베이스
4.1 비즈니스 인텔리전스의 개념 비즈니스 인텔리전스(BI: Business Intelligence): 기업이 비즈니스 및 전략적 의사 결정을 잘 할 수 있도록 데이터의 수집, 저장, 추출, 분석, 가공하기 위한 각종 응용 소프트웨어 및 기술을 의미 내부와 외부의 데이터 데이터베이스와 데이터웨어하우스 데이터마트 데이터마이닝 OLAP (온라인 분석처리와 다차원 분석) 웹 마이닝 No. 13
4.2 데이터 웨어하우스 데이터 웨어하우스(DW: Data Warehouse)는 기업의 의사결정 프로세스 를 지원하기 위하여 여러 데이터 원천으로부터 과거에서 현재에 이르기까지 데이터를 주제별로 통합하고 요약하여 수집해 놓은 대용량의 데이터베이스로 정의 데이터 마트(Data Mart): 어떤 특정 목적 하에 혹은 부서 내에 분산되어 있는 데이터를 모아 놓은 것이라고 할 수 있는 소규모의 데이터 웨어하우스 라고 할 수 있음
4.3 비즈니스 인텔리전스 도구 및 기술 데이터마이닝(Data Mining): 대용량 데이터베이스나 데이터 웨어하우스에서 가치 있는 정보를 찾아내는 것을 말함 대표적인 데이터마이닝(DM) 기술: 트랜드에 대한 자동화된 예측 새로운 패턴에 대한 자동인식 OLAP(Online Analytical Processing): 온라인 분석처리 또는 다차원 분석이라고도 하는데, 다양한 관점/각도에서 데이터를 분석하도록 지원.