면접을 보고왔는데...
DB쪽 이론은 "그냥 말하면 되지 뭐"하는 상당히 멍청한 생각을 하고 준비를 안해서 당황했네요 ㅋㅋㅋ
복습을 안하니 전부 다 아는 내용인데 입안에서 단어만 맴돌다 헛소리만 하다 오는것 같아 멘탈이 가루가 되더군요
(=> 핑계임ㅎ 급 질문에 대답 못하면 '모른다'는 것이지요)
지난날의 과오를 반성하며 꼼꼼하게 공부하겠습니다 ㅋㅋㅋ
일단 오늘은 면접 가다가 지하철에서 읽어 볼 수 있도록 DB 용어만 간단히 정리하겠습니다.
Q. DB 정규화를 하는 이유는 ?
A. 데이터의 중복 및 이상 현상을 방지하기 위해서 정규화를 진행 합니다.
Q. DB 이상의 종류는 ?
A. 삽입이상, 삭제이상, 수정이상 이렇게 총 3가지 이상이 있습니다.
'삽입 이상'이란 원하지 않는 자료가 삽입되거나, 삽입을 하는데 자료가 부족해 정상적으로 삽입이 되지 않는 현상입니다.
'삭제 이상'이란 하나의 자료를 삭제하려고 하는데 그와 관련된 튜플 전체가 삭제되는 현상 입니다.
'수정(갱신) 이상'이란 자료를 수정하는데 관련된 다른 테이블의 내용이 수정되지 않아 정보가 모호해지는 현상 입니다.
Q. PK란 무엇입니까?
A. 테이블 내에서 튜플을 완벽하게 구분할 수 있는 유일한 속성(Attribute) 입니다.
Q. 다른 Key 종류 설명
A. Key는 총 5가지 종류가 있습니다.
후보키(Candinate Key)란 테이블 내에서 튜플을 완벽하게 구분할 수 있는 유일한 속성(Attribute)들의 부분 집합입니다. 유일성과 최소성을 만족해야 합니다.
기본키(Prime Key)란 후보키 중 선택된 주 키 이며 Null 값을 가질 수 없습니다.
대체키(Alternate Key)란 후보키들 중에서 주 키가 아닌 나머지를 지칭 합니다.
슈퍼키(Super key) 테이블 내에서 하나의 튜플을 완벽하게 구분하기 위해 두개 이상으로 조합된 키 입니다. 유일성은 만족하지만 최소성은 만족시키지 못합니다.
외래키 관계가 있는 R1,R2 테이블이 있고 R1에서 R2를 참조하려 할때 R1의 기본키와 대응되어 R2의 튜플을 구분할 수 있는 속성을 외래키라고 합니다.
/*이것은 개념 이해가 필요할 것 같아 따로 정리하기*/
Q. index Cluster가 무엇이고 이것의 중요성 좀 설명해주세요
A. Cluster index란 물리적으로 테이블의 데이터를 정렬한 것입니다.
Join과 같이 자주 사용되는 내용들을 클러스터 인덱스로 지정해 두면 데이 탐색 시간을 단축할 수 있습니다.
머릿속으로 말고 말로하는 연습하기!
DB 개념들 꼼꼼하게 정리하고, 할 수 있다면 간단한 예제도 같이 외워두기!
/*생각나는대로 내용들 지속적으로 추가하기*/
'DataBase > DataBase 이론 공부' 카테고리의 다른 글
정규화 (제1 정규화 ~ 제3 정규화) (11) | 2019.01.15 |
---|