반응형

# 4. 자격증/SQLD 28

SQLD 자격증 # 데이터 모델과 성능(과목1)_반정규화와 성능

1. 반정규화를 통한 성능 향상 전략 ​ 가. 반정규화의 정의 데이터를 중복하여 성능을 향상하기 위한 기법이라고 정의할 수 있고 더 넓은 의미의 반정규화는 성능을 향상하기 위해 정규화된 데이터 모델에서 중복, 통합, 분리 등을 수행하는 모든 과정을 의미한다. 데이터 무결성이 깨질 수 있어도 반정규화를 적용하는 이유 데이터를 조회할 때 디스크 I/O량이 많아서 성능이 저하될 때 경로가 너무 멀어 조인으로 인한 성능저하가 예상될 때 칼럼을 계산하여 읽을 때 성능이 저하될 것이 예상되는 경우 반정규화를 수행 정규화만을 수행하면 엔터티의 갯수가 증가하고 관계가 많아져 일부 여러 개의 조인이 걸려야만 데이터를 가져오는 경우가 있다. 이러한 경우 조회에 대한 처리성능이 중요하다고 판단될 때 부분적으로 반정규화를 고..

# 4. 자격증/SQLD 2021.11.11

SQLD 자격증 # 데이터 모델과 성능(과목1)_정규화와 성능

정규화, 비정규화 1. 정규화를 통한 성능 향상 전략 정규화란? 기본적으로 데이터에 대한 중복성을 제거하여 주고 성능이 향상되는 특징을 가지고 있다. 데이터베이스에서 데이터를 처리할 때 성능이라고 하면 조회 성능과 입력/수정/삭제 성능의 두 부류로 구분된다. 이 두 가지 성능이 모두 우수하면 좋겠지만 데이터 모델을 구성하는 방식에 따라 두 성능이 Trade-Off 되어 나타나는 경우가 많이 있다. 정규화를 수행한다는 것은 데이터를 결정하는 결정자에 의해 함수적 종속을 가지고 있는 일반 속성을 의존자로 하여 입력/수정/삭제 이상을 제거하는 것이다. 데이터의 중복속성을 제거하고 결정자에 의해 동일한 의미의 일반 속성이 하나의 테이블로 집약되므로 한 테이블의 데이터 용량이 최소화되는 효과가 있다. 따라서 정규..

# 4. 자격증/SQLD 2021.11.11

SQLD 자격증 # 데이터 모델과 성능(과목1)_성능 데이터 모델링의 개요

1. 성능 데이터 모델링의 정의 성능이 저하되는 데이터 모델의 경우 데이터 모델 구조에 의해 성능 저하 데이터가 대용량이 됨으로 인해 불가피하게 성능 저하 인덱스 특성을 충분히 고려하지 않고 인덱스를 생성함으로 인해 성능 저하 ​ 2. 성능 데이터 모델링 수행시점 성능 향상을 위한 비용은 프로젝트 사전에 할수록 비용이 들지 않는다. 특히 분석/설계 단계에서 데이터 모델에 성능을 고려한 데이터 모델링을 수행할 경우 성능저하에 따른 재업무(Rework) 비용을 최소화 할 수 있는 기회를 가지게 된다. 따라서 분석/설계 단계에서 데이터베이스 처리 성능을 향상시킬 수 있는 방법을 주도면밀하게 고려해야 한다. 3. 성능 데이터 모델링 고려사항 순서 데이터 모델링을 할 때 정규화를 정확하게 수행한다. 데이터베이스 ..

# 4. 자격증/SQLD 2021.11.11

SQLD 자격증 # 데이터 모델링의 이해(과목1)_식별자

1. 식별자(Identifiers) 개념 엔터티를 구분짓는 논리적인 이름이자, 엔터티를 대표할 수 있는 속성 엔터티에는 반드시 하나의 유일한 식별자가 존재한다. 2. 식별자의 특징 주식별자에 의해 엔터티내에 모든 인스턴스들이 유일하게 구분되어야 한다. 주식별자를 구성하는 속성의 수는 유일성을 만족하는 최소의 수가 되어야 한다. 지정된 주식별자의 값은 자주 변하지 않는 것이어야 한다. 주식별자가 지정이 되면 반드시 값이 들어와야 한다. 키 종류 설명 기본키 (PK) 엔터티 대표 키 후보키 (CK) 유일성과 최소성 만족하지만 대표성 부족 슈퍼키 (SK) 유일성은 만족하지만 최소성 부족 대체키 (AK) 후보키 중 기본키를 선정하고 남은 키 외래키 (FK) 다른테이블 기본 키 필드를 참조 한 키 3. 식별자 분..

# 4. 자격증/SQLD 2021.11.04

SQLD 자격증 # 데이터 모델링의 이해(과목1)_관계

1. 관계의 개념 ​가. 관계의 정의 ​ ​ 나. 관계의 패어링 페어링이란? 인스턴스가 개별적으로 관계를 가지는 것 따라서 개별 인스턴스가 각각 다른 종류의 관계를 가지고 있다면 두 엔터티 사이에 두 개 이상의 관계가 형성될 수 있다. 엔터티(복수)는 인스턴스(단수)의 집합을 논리적으로 표현하였다면 관계는(복수) 관계 패어링(단수)의 집합을 논리적으로 표현한 것이다. ​ ​2. 관계의 분류 3. 관계의 표기법 관계명(Membership) : 관계의 이름 관계차수(Cardinality) : 1:1, 1:M, M:N 관계선택사양(Optionality) : 필수관계, 선택관계 가. 관계명(Membership) 엔터티가 관계에 참여하는 형태를 지칭한다. 각각의 관계는 두 개의 관계명을 가지고 있다. 또한 각각의..

# 4. 자격증/SQLD 2021.11.04

SQLD 자격증 # 데이터 모델링의 이해(과목1)_속성

1. 속성 (Attribute)의 개념 속성의 정의 • 업무에서 필요로 한다. • 의미상 더 이상 분리되지 않는다. • 엔터티를 설명하고 인스턴스의 구성요소가 된다. 2. 엔터티, 인스턴스와 속성, 속성값에 대한 내용과 표기법 가. 엔터티, 인스턴스, 속성, 속성값의 관계 • 한 개의 엔터티는 두 개 이상의 인스턴스의 집합이어야 한다. • 한 개의 엔터티는 두 개 이상의 속성을 갖는다. • 한 개의 속성은 한 개의 속성값을 갖는다. 속성은 엔터티에 대한 자세하고 구체적인 정보를 나타내며 각각의 속성은 구체적인 값을 갖게 된다. 예를 들어 사원이라는 엔터티에는 홍길동이라는 사람(엔터티)이 있을 수 있다. 홍길동이라는 사람의 이름은 홍길동이고 주소는 서울시 강서구이며 생년월일 1967년 12월 31일이다. ..

# 4. 자격증/SQLD 2021.11.04

SQLD 자격증 # 데이터 모델링의 이해(과목1)_엔터티

1. 엔터티의 개념 • 엔터티는 사람, 장소, 물건, 사건, 개념 등의 명사에 해당한다. • 엔터티는 업무상 관리가 필요한 관심사에 해당한다. • 엔터티는 저장이 되기 위한 어떤 것(Thing)이다. • 속성(Attribute)을 갖는다. 예를 들어 ‘학생’이라는 엔터티는 학번, 이름, 생일, 전공 등의 속성으로 특징지어질 수 있다. 이러한 속성 가운데에는 엔터티 인스턴스 전체가 공유할 수 있는 공통 속성도 있고, 엔터티 인스턴스 중 일부에만 해당하는 개별 속성도 있을 수 있다. 또한 엔터티는 인스턴스의 집합이라고 말할 수 있고, 반대로 인스턴스라는 것은 엔티티의 하나의 값에 해당한다고 정의할 수 있다. 예를 들어 과목은 수학, 영어, 국어가 존재할 수 있는데 수학, 영어, 국어는 각각이 과목이라는 엔터..

# 4. 자격증/SQLD 2021.11.04

SQLD 자격증 # 데이터 모델링의 이해(과목1)_데이터 모델의 이해

1. 모델링의 이해 가. 모델링의 정의 모델 : 모형, 축소형의 의미. 다양한 현상에 대해 일정한 표기법에 의해 표현해 놓은 모형 ☞ 커뮤니케이션의 효율성을 극대화한 고급화된 표현방법 ​모델링 : 현실세계를 추상화, 단순화, 명확화하기 위해 일정한 표기법에 의해 표기하는 기법. 나. 모델링의 특징 추상화(모형화, 가설적) : 현실세계를 일정한 형식에 맞추어 표현을 한다는 의미. 즉, 다양한 현상을 일정한 양식인 표기법에 의해 표현 단순화 : 복잡한 현실세계를 약속된 규약에 의해 제한된 표기법이나 언어로 표현하여 쉽게 이해할 수 있도록 하는 개념 명확화 : 누구나 이해하기 쉽게 하기 위해 대상에 대한 애매모호함을 제거하고 정확(正確)하게 현상을 기술하는 것 ※ 정보시스템 구축에서 모델링 활용 - 계획/분석..

# 4. 자격증/SQLD 2021.11.04
반응형