본문 바로가기

sqld

(30)
1-6) 정규화 정규화 (DB Normalization)하나의 엔티티에 많은 속성을 넣게 되면 해당 엔티티를 조회할 때마다 많은 양의 데이터가 조회됨최소한의 데이터만을 하나의 엔티티에 넣는 식으로 데이터를 분해하는 과정데이터의 일관성, 최소한의 데이터 중복, 최대한의 데이터 유연성을 위한 과정데이터의 중복을 제거하고 데이터 모델의 독립성을 확보데이터 이상현상을 줄이기 위한 데이터베이스 설계 기법엔티티를 상세화하는 과정 ≫ 논리 데이터 모델링 수행 시점에서 고려됨제 1 정규화부터 제 5 정규화까지 존재 ≫ 실질적으로는 제 3 정규화까지만 수행 이상현상 (Abnormality)정규화를 하지 않아 발생하는 현상 (삽입이상, 갱신이상, 삭제이상)삽입이상 : 특정 인스턴스가 삽입될 때 정의되지 않아도 될 속성까지도 반드시 입력되..
1-5) 식별자 식별자하나의 엔티티에 구성된 여러 속성 중 엔티티를 대표할 수 있는 속성하나의 유일한 식별자가 존재해야 함식별자 ≫ 논리 모델링에서 사용 / 키(key) ≫ 물리 모델링에서 사용예) 학생 엔티티의 주식별자 : 학생번호 속성 (논리 모델링)  ≫ 학생 테이블의 기본키 : 학생번호 컬럼 (물리 모델링) 주식별자 특징유일성 : 주식별자에 의해 모든 인스턴스를 유일하게 구분함예) 학생 엔티티에서 이름 속성 사용 시 동명이인으로 완벽하게 구분할 수 없음 ≫ 학생 번호 속성을 주식별자로최소성 : 유일성을 만족하는 최소한의 속성으로 구성예) 학생 번호만으로 충분한데, 학생 번호 + 이름으로 구성할 필요 없음불변성 : 주식별자가 한번 특정 엔티티에 지정되면 그 식별자의 값은 변하지 않아야 함예) 학생 엔티티의 주식별자..
1-4) 관계(Relationship) 관계 (Relationship)엔티티 간의 연관성인스턴스 간의 논리적인 연관성을 파악하여 정의 관계의 종류존재적 관계한 엔티티의 존재가 다른 엔티티의 존재에 영향을 미치는 관계엔티티 간의 연관된 상태를 의미예) 부서 엔티티가 삭제되면 사원 엔티티의 존재에 영향을 미침 행위적 관계엔티티 간의 어떤 행위가 있는 것을 의미예) 고객 엔티티의 행동에 의해 주문 엔티티가 발생** ERD에서는 존재 관계와 행위 관계를 구분하지 않음! 관계의 구성관계명차수 (Cardinality)선택성 (Optionality) : 필요한 관계인지 선택적인 관계인 관계의 차수 (Cardinality)한 엔티티의 인스턴스가 다른 엔티티의 인스턴스와 어떻게 연결되는지 나타내는 표현1:1, 1:N, N:M1 대 1 관계완전 1 대 1 관계..
1-3) 속성(Attribute) 속성 (Attribute)업무에서 필요로 하는 고유한 성질, 특징 ≫ 컬럼으로 표현할 수 있는 단위!더 이상 분리되지 않는 최소의 데이터 단위예) 학생 엔티티의 이름, 학번, 학과번호 등 엔티티, 인스턴스, 속성, 속성값의 관계1개의 엔티티 ≫ 2개 이상의 인스턴스의 집합1개의 엔티티 ≫ 2개 이상의 속성을 가짐1개의 속성 ≫ 1개의 속성값 (각 컬럼의 값은 하나씩만 삽입 가능) 속성의 특징정해진 주식별자에 함수적 종속성을 가져야 함하나의 속성은 한 개의 값만을 가짐 ≫ 다중값인 경우 별도의 엔티티로 분리원자성: 데이터 모델에서 각 엔티티의 인스턴스가 해당 속성에 대해 단일하고 명확한 값을 가지는 것≫ 더 이상 나누어지지 않음 함수적 종속성어떤 속성 A의 값에 의해 다른 속성 B도 유일하게 결정된다면, ..
1-2) 엔티티(Entity) 엔티티(Entity)현실 세계에서 독립적으로 식별 가능한 객체나 사물업무상 분석해야 하는 대상(인스턴스)들로 이루어진 집합인스턴스 : 엔티티의 특정한 속성 값들로 구성, 엔티티의 개념을 현실에서 구체적으로 나타낸 것행 ≫ 인스턴스 (대상) / 열(컬럼) ≫ 속성 값 으로 구성예)학교 시스템- 엔티티 : 학생- 속성 : 학번, 이름, 학과 등- 식별자 : 학번 (고유)- 인스턴스 : 특정 학생의 데이터 (학번, 이름, 학과를 지님) 엔티티 특징유일한 식별자에 의해 식별식별자 : 그 엔티티의 인스턴스만의 고유 이름예) 사번, 학번 등 (이름 x)해당 업무에 필요하고 관리하고자 하는 정보인스턴스들의 집합영속적으로 존재하는 2개 이상의 인스턴스의 집합인스턴스가 1개 밖에 없는 엔티티는 집합이 아니므로 성립이 x..
1-1) 데이터 모델의 이해 엔티티(Entity), 속성(Attribute), 인스턴스(Instance)  모델링현실 세계의 비즈니스 프로세스와 데이터 요구 사항을 추상적이고 구조화된 형태로 표현하는 과정데이터베이스의 구조와 관계를 정의하며, 이를 통해 데이터의 저장, 조작, 관리 방법을 명확하게 정의예) 가계부 만들기 ≫ 날짜 등 어떤 컬럼을 만들지, 어떤 유형의 데이터를 넣을지 정의하기 모델링의 특징단순화(Simplification)현실을 단순화하여 핵심 요소에 집중하고 불필요한 세부 사항을 제거추상화(Abstraction)현실세계를 일정한 형식에 맞추어 간략하게 대략적으로 표현다양한 현상을 일정한 양식인 표기법에 따라 표현명확화(Clarity)대상에 대한 애매모호함을 최대한 제거하고 정확하게 현상을 기술이해가 쉽게 표현함 데이..