관계형 데이터베이스의 구성요소에 대해서 설명하세요.
-> Table, Attribute, row, column 등등?
모범답안 :
- 데이터가 테이블에 저장
- 구성요소 : 행(튜플), 열(속성)
- 행은 순서가 없지만, 열은 순서가 있다.
- 스키마 : 이름과 데이터 유형을 정의
- 키 : 테이블에서 특정 행을 유일하게 식별할 수 있게하는 특징, 열 혹은 복수의 열 모음
- 테이블의 각 행에는 primary key값이 반드시 있어야 한다.
- 외부키
- 이용하여 다른 테이블과 링크할 수 있다.
- 그 값이 다른 테이블의 키 열의 값과 같은 열
Key란? Key의 종류에 대해서 설명하세요.
-> 테이블에서 특정행을 유일하게 식별할 수 있는 속성, 열, 복수의 열 모음
종류 :
Primary Key :
- 릴레이션에서 튜플을 구별하기 위해 여러 개의 후보키를 사용할 필요는 없습니다. 데이터베이스 설계자는 여러 후보키 중에서 기본적으로 사용할 키를 선택하는데 이것이 기본키입니다.
Foriegn Key
- 어떤 릴레이션에 소속된 속성 또는 속성 집합이 다른 릴레이션의 기본키가 되는 키입니다.
Alternative Key
- 기본키로 선택되지 못한 후보키들입니다.
Candidate Key
- 유일성과 최소성을 만족하는 속성 또는 속성들의 집합입니다. 최소성은 키를 구성하는 여러 속성 중에 하나라도 없으면 튜플을 유일하게 구별할 수 없는 꼭 필요한 최소한의 속성들로만 키를 구성하는 특성입니다.
Super Key
- 유일성의 특성을 만족하는 속성 또는 속성들의 집합입니다.
ACID란?
-> 데이터베이스 트랜잭선이 안전하게 수행되는 것을 보장하기 위한 성질
Atomicity (원자성) - 한번에 다 되거나, 다 안되거나
Consistency (일관성) - 일관성 있는 데이터베이스 유지
Isolation (고립성) - 트랜잭션 작업중에는 다른 트랜잭션에 영향 X
Durability (지속성)- 데이터 조작 완료 후 조작이 영구적이 되어 결과를 잃지 않음
참조 : https://github.com/brave-people/brave-tech-interview/blob/main/contents/database.md
'개발합시다. > BackEnd 공부' 카테고리의 다른 글
네트워크 관련 면접 질문 정리 ① (0) | 2021.10.06 |
---|---|
데이터베이스 관련 면접 질문 정리 ② (0) | 2021.09.30 |
프로그래밍 언어 관련 면접 질문 정리 ② (0) | 2021.09.17 |
프로그래밍 언어 관련 면접 질문 정리 ① (0) | 2021.09.14 |
알고리즘 관련 면접 질문 정리 ① (0) | 2021.09.13 |