Brain
Science
root
/
학습 노트
/
Study Note
/
5: 데이터베이스 (Database)
/
2. 관계형 데이터 모델 및 정규화
2. 관계형 데이터 모델 및 정규화
61. 릴레이션 (Relation) - 데이터를 2차원 표로 표현한 구조
62. 속성 (Attribute / Column / Degree) - 릴레이션의 열 (차수)
63. 튜플 (Tuple / Row / Cardinality) - 릴레이션의 행 (카디널리티)
64. 도메인 (Domain) - 속성이 가질 수 있는 원자값(Atomic Value)들의 집합
65. 릴레이션의 특징 - 튜플의 무순서, 속성의 무순서, 튜플의 유일성, 속성의 원자성
66. NULL 값 - 아직 알려지지 않거나 해당 없는 값 (0이나 공백과 다름)
67. 키 (Key)의 개념 - 유일성(Uniqueness), 최소성(Minimality)
68. 슈퍼 키 (Super Key) - 유일성은 만족하나 최소성은 만족하지 않는 속성 집합
69. 후보 키 (Candidate Key) - 유일성과 최소성을 모두 만족하는 키
70. 기본 키 (Primary Key, PK) - 후보 키 중 설계자가 선택한 메인 식별자 (NULL 불가)
71. 대체 키 (Alternate Key) - 후보 키 중 기본 키로 선택되지 않은 나머지 키
72. 외래 키 (Foreign Key, FK) - 다른 릴레이션의 기본 키를 참조하는 속성
73. 무결성 제약조건 (Integrity Constraints)
74. 개체 무결성 (Entity Integrity) - 기본 키는 NULL이나 중복값을 가질 수 없음
75. 참조 무결성 (Referential Integrity) - 외래 키 값은 참조하는 릴레이션의 기본키 값이거나 NULL이어야 함
76. 도메인 무결성 (Domain Integrity) - 속성 값은 정의된 도메인에 속해야 함
77. 사용자 정의 무결성 (User-defined Integrity) - 업무 규칙에 따른 제약 (CHECK 제약조건 등)
78. 키 무결성 (Key Integrity)
79. NULL 무결성 (Null Integrity)
80. ER 모델 (Entity-Relationship Model) - 피터 첸(Peter Chen) 제안, 개념적 모델링
81. 개체 (Entity) - 사각형, 관리 대상
82. 속성 (Attribute) - 타원, 개체의 특성
83. 관계 (Relationship) - 마름모, 개체 간 연관성
84. 카디널리티 비율 (Cardinality Ratio) - 1:1, 1:N, M:N
85. 참여 제약조건 (Participation Constraint) - 필수 참여(전체), 선택 참여(부분)
86. 약한 개체 (Weak Entity) - 이중 사각형, 부모 개체에 종속 (식별 관계)
87. 식별 관계 (Identifying) vs 비식별 관계 (Non-identifying)
88. 식별자 (Identifier) - ER 모델에서의 키
89. 확장 ER 모델 (EER) - 서브클래스, 슈퍼클래스, 상속(일반화/특수화) 개념 추가
90. 이상 현상 (Anomaly) - 정규화를 거치지 않아 발생하는 데이터 중복에 따른 부작용
91. 삽입 이상 (Insertion Anomaly) - 불필요한 데이터까지 함께 삽입해야 하는 현상
92. 삭제 이상 (Deletion Anomaly) - 연쇄 삭제로 인해 필요한 데이터까지 소실되는 현상
93. 갱신 이상 (Update Anomaly) - 중복 데이터 중 일부만 갱신되어 데이터 불일치 발생
94. 함수적 종속성 (Functional Dependency, FD) - X의 값이 Y의 값을 유일하게 결정할 때 (X -> Y)
95. 결정자 (Determinant) X / 종속자 (Dependent) Y
96. 완전 함수적 종속 (Full Functional Dependency)
97. 부분 함수적 종속 (Partial Functional Dependency) - 복합키의 일부 속성에만 종속
98. 이행적 함수적 종속 (Transitive Functional Dependency) - X->Y, Y->Z 일 때 X->Z 종속 발생
99. 암스트롱의 공리 (Armstrong's Axioms) - 반사의 공리, 첨가의 공리, 이행의 공리
100. 정규화 (Normalization) - 이상 현상 방지를 위해 릴레이션을 분해(Decomposition)하는 과정
101. 무손실 분해 (Lossless-Join Decomposition) - 조인 시 원래 릴레이션이 복원됨 보장
102. 종속성 보존 (Dependency Preservation) - 분해 후에도 FD가 유지됨
103. 제1정규형 (1NF) - 도메인이 원자값만으로 구성
104. 제2정규형 (2NF) - 1NF 만족 및 부분 함수 종속 제거 (완전 함수 종속화)
105. 제3정규형 (3NF) - 2NF 만족 및 이행적 함수 종속 제거
106. BCNF (Boyce-Codd Normal Form) - 3NF 만족 및 모든 결정자가 후보키 (강한 3NF)
107. 다치 종속성 (MVD, Multi-Valued Dependency) - X->>Y
108. 제4정규형 (4NF) - BCNF 만족 및 다치 종속 제거
109. 조인 종속성 (Join Dependency)
110. 제5정규형 (5NF / PJNF) - 4NF 만족 및 조인 종속 제거
111. 정규화의 역설 / 성능 저하 - 과도한 분해 시 조인(Join) 오버헤드 증가
112. 반정규화 (De-normalization / 비정규화) - 성능 향상을 위해 정규화 원칙을 의도적으로 위배, 중복 허용
113. 반정규화 기법 - 테이블 병합(1:1, 1:M, 슈퍼/서브), 테이블 분할(수직, 수평 분할), 중복 칼럼 추가, 파생 컬럼/테이블 추가
114. 데이터베이스 설계 단계 - 요구사항 분석 -> 개념적 설계 -> 논리적 설계 -> 물리적 설계
115. 논리적 설계 (Logical Design) - ERD를 릴레이션 스키마로 변환, 정규화 수행
116. 매핑 룰 (Mapping Rule) - 개념적 모델(ERD)을 논리 모델(릴레이션)로 변환하는 규칙
117. 물리적 설계 (Physical Design) - 인덱스, 파티셔닝, 클러스터링, 저장 구조 설계
118. 차원 모델링 (Dimensional Modeling) - OLAP, 스타 스키마 (Star Schema), 스노우플레이크 스키마 (Snowflake Schema)
119. 팩트 테이블 (Fact Table) / 차원 테이블 (Dimension Table)
120. 데이터 역엔지니어링 (Data Reverse Engineering)
121. 데이터 아키텍처 (DA, Data Architecture) 프레임워크 (Zachman 등)
122. 마스터 데이터 관리 (MDM, Master Data Management)
123. 기준 정보 (Reference Data)
124. 데이터 거버넌스 (Data Governance)
125. 메타데이터 관리 시스템 (MMS)
126. 데이터 표준화 (Data Standardization) - 단어 사전, 도메인, 표준 용어 정의
127. 정보 공학 방법론 (Information Engineering) - 데이터 중심 개발 (James Martin)
128. 논리적 데이터 독립성과 뷰(View)의 관계
129. ORM (Object-Relational Mapping) 개념과 임피던스 불일치 (Impedance Mismatch)
130. ERD 표기법 - IE(Information Engineering, 까마귀발 표기법), Barker, IDEF1X