본문 바로가기

전체 글

데이터베이스 강의 10 🎯 학습 목표 ‣ 관계 데이터 연산의 개념과 종류를 알아본다. ‣ 일반 집합 연산자와 순수 관계 연산자의 차이를 이해한다. ‣ 일반 집합 연산자와 순수 관계 연산자를 이용해 질의를 표현하는 방법을 익힌다. 1. 관계 데이터 연산의 개념 • 데이터 모델 = 데이터 구조 + 연산 + 제약 조건 • 관계 데이터 연산 • 관계 데이터 모델의 연산 • 원하는 데이터를 얻기 위해 릴레이션에 필요한 처리 요구를 수행하는 것 • 관계 대수와 관계 해석이 있음 • 관계 대수의 개념 • 원하는 결과를 얻기 위해 릴레이션의 처리 과정을 순서대로 기술하는 언어 • 절차 언어 • 릴레이션을 처리하는 연산자들의 모임 • 대표 연산자 8개 • 일반 집합 연산자와 순수 관계 연산자로 분류됨 • 폐쇄 특성이 존재함 • 피연산자도 릴레.. 더보기
데이터베이스 강의 9 3. 기본 정규형과 정규형 과정 • 정규화 • 함수 종속성을 이용해 릴레이션을 연관성이 있는 속성들로만 구성되도록 분해해서 이상 현상이 발생하지 않는 바람직한 릴레이션으로 만들어 가는 과정 • 정규화를 통해 릴레이션은 무손실 분해되어야함 - 릴레이션은 의미적으로 동등한 릴레이션들로 분해되어야 하고 분해로 인한 정보의 손실이 발생하지 않아야 함 - 분해된 릴레이션들을 자연 조인하면 분해 전의 릴레이션으로 복원 가능해야 함 • 정규형 • 릴레이션이 정규화된 정도 • 각 정규형마다 제약조건이 존재 - 정규형의 차수가 높아질수록 요구되는 제약조건이 많아지고 엄격해짐 - 정규형의 차수가 높아질수록 데이터 중복이 줄어 이상 현상이 발생하지 않는 바람직한 릴레이션이 됨 • 릴레이션의 특성을 고려하여 적합한 정규형을 .. 더보기
데이터베이스 강의 8 🎯 학습 목표 ‣ 정규화의 필요성과 이상 현상의 의미를 이해한다. ‣ 정규화를 수행하기 위해 함수 종속성의 개념을 이해한다. ‣ 정규형의 유형과 관계를 이해하고, 실제 예를 통해 정규화 과정을 연습해본다. 1. 정규화의 개념과 이상 현상 • 이상 현상 : 불필요한 데이터 중복으로 인해 릴레이션에 대한 데이터 삽입, 수정, 삭제 연산을 수행할 때 발생할 수 있는 부작용 • 종류 - 삽입 이상 : 새 데이터를 삽입하기 위해 불필요한 데이터도 함께 삽입해야 하는 문제 - 갱신 이상 : 중복 투플 중 일부만 변경하여 데이터가 불일치하게 되는 모순의 문제 - 삭제 이상 : 투플을 삭제하면 꼭 필요한 데이터까지 함께 삭제되는 데이터 손실의 문제 • 정규화 : 이상 현상을 제거하면서 데이터베이스를 올바르게 설계해 나.. 더보기
데이터베이스 강의 7 📌 관계 데이터 모델 : 실습 • 설계 3단계 : 논리적 설계 • 목적 • DBMS에 적합한 논리적 스키마 설계 • 개념적 스키마를 논리적 데이터 모델을 이용해 논리적 구조로 표현 → 논리적 모델링(데이터 모델링) - 일반적으로 관계 데이터 모델을 많이 이용 • 결과물 • 논리적 스키마 : 릴레이션 스키마 • 주요 작업 • 개념적 설계 단계의 결과물인 E-R 다이어그램을 릴레이션 스키마로 변환 • 릴레이션 스키마 변환 후 속성의 데이터 타입, 길이, 널 값 허용 여부, 기본 값, 제약조건 등을 세부적으로 결정하고 결과를 문서화시킴 • E-R 다이어그램을 릴레이션 스키마로 변환하는 규칙 • 규칙 1 : 모든 개체는 릴레이션으로 변환한다. • 규칙 2 : 다대다 관계는 릴레이션으로 변환한다. • 규칙 3 :.. 더보기
데이터베이스 강의 6 🎯 학습 목표 ‣ 관계 데이터 모델의 기본 용어를 익힌다. ‣ 릴레이션을 구성하는 요소와 특성을 이해한다. ‣ 릴레이션에서 키의 역할과 종류를 알아본다. ‣ 무결성 제약의 의미와 필요성을 이해한다. 1. 관계 데이터 모델의 개념 • 관계 데이터 모델의 기본 개념 • 개념적 구조를 논리적 구조로 표현하는 논리적 데이터 모델 • 하나의 개체에 대한 데이터를 하나의 릴레이션에 저장 • 관계 데이터 모델의 기본 용어 • 릴레이션 • 하나의 개체에 관한 데이터를 2차원 테이블의 구조로 저장한 것 • 파일 관리 시스템 관점에서 파일에 대응 • 속성 • 릴레이션의 열, 애트리뷰트 • 파일 관리 시스템 관점에서 필드에 대응 • 투플 • 릴레이션의 행 • 파일 관리 시스템 관점에서 레코드에 대응 • 도메인 • 하나의 속.. 더보기
데이터베이스 강의 5 🎯 데이터 모델링 : 실습 • 데이터베이스 설계 단계 • 요구사항 분석 • 개념적 설계 📌 요구사항 분석 • 설계 1단계 : 요구사항 분석 • 목적 • 사용자의 요구사항을 수집하고 분석하여 개발할 데이터베이스의 용도를 파악 - 업무에 필요한 데이터가 무엇인지, 그 데이터에 어떤 처리가 필요한지 등을 고려 • 결과물 • 요구사항 명세서 • 주요 작업 • 데이터베이스를 실제로 사용할 주요 사용자의 범위를 결정 • 사용자가 조직에서 수행하는 업무를 분석 • 면담, 설문 조사, 업무 관련 문서 분석 등의 방법을 이용해 요구사항 수집 • 수집된 요구사항에 대한 분석 결과를 요구사항 명세서로 작성 • 설계 2단계 : 개념적 설계 • 목적 • DBMS에 독립적인 개념적 스키마 설계 • 요구사항 분석 결과물을 개념적 .. 더보기
데이터베이스 강의 4 1. 데이터베이스 설계 • 사용자의 다양한 요구 사항을 고려하여 데이터베이스를 생성하는 과정 • E-R 모델과 릴레이션 변환 규칙을 이용한 설계의 과정 • E-R 모델과 릴레이션 변환 규칙을 이용한 설계의 과정 2. 데이터 모델링과 데이터 모델의 개념 • 데이터 모델링 • 현실 세계에 존재하는 데이터를 컴퓨터 세계의 데이터베이스로 옮기는 변환 과정 • 데이터베이스 설계의 핵심 과정 • 2단계 데이터 모델링 • 개념적 데이터 모델링 • 현실 세계의 중요 데이터를 추출하여 개념 세계로 옮기는 작업 • 논리적 데이터 모델링 • 개념 세계의 데이터를 데이터베이스에 저장하는 구조로 표현하는 작업 • 데이터 모델 • 데이터 모델링의 결과물을 표현하는 도구 • 개념적 데이터 모델 • 사람의 머리로 이해할 수 있도록 .. 더보기
데이터베이스 강의 3 🎯 학습 목표 ‣ 데이터베이스, 데이터베이스 관리 시스템, 데이터베이스 시스템의 차이를 이해한다. ‣ 데이터베이스 시스템의 구성 요소를 살펴본다. ‣ 데이터베이스 3단계 구조에서 데이터 독립성의 개념을 실현하는 방법을 이해한다. ‣ 데이터 언어별 특징을 알아본다. ‣ 데이터 베이스 사용자별 특징을 알아본다. ‣ 데이터베이스 관리 시스템의 구성을 알아본다. 1. 데이터베이스 시스템의 정의 • 데이터베이스 시스템 (DBS; DataBase System) • 데이터베이스에 데이터를 저장하고, 이를 관리하여 조직에 필요한 정보를 생성해주는 시스템 2. 데이터베이스의 구조 • 스키마와 인스턴스 • 스키마 (schema) • 데이터베이스에 저장되는 데이터 구조와 제약조건을 정의한 것 • 인스턴스 (instance).. 더보기