시작이 반

DB 기본 기술 면접 준비 본문

기타/면접준비

DB 기본 기술 면접 준비

G_Gi 2021. 12. 7. 00:05
SMALL

데이터 베이스란?

- 한 조직에서 업무를 처리하기위해 공유하여 사용할 목적으로 저장된 데이터의 집합입니다.

 

트랜젝션이란?

- 트랜잭션(Transaction 이하 트랜잭션)이란, 데이터베이스의 상태를 변화시키기 해서 수행하는 작업의 단위를 뜻한다.

 

원자성 – 트랜잭션이 모두 반영이 되거나 반영이 안되거나 둘 중 하나여야 하며

일관성 – 트랜잭션이 수행이 된 후 데이터베이스가 일관성있게 유지하는 것을 뜻합니다.

독립성 – 트랜잭션 중간에 다른 트랜잭션이 끼어들지 못한다는 특징으로

지속성 – 성공한 트랜잭션은 영구적으로 반영이 되어야 한다는 특징입니다.

 

데이터베이스 언어란?

- 정의어(DDL) : 데이터베이스를 정의하는 언어를 말합니다. , 테이블을 생성, 수정, 삭제를 할 수 있으며 create, alter, drop이 있습니다.

- 조작어(DML) : 말그대로 데이터베이스를 조작하는 언어입니다. 데이터베이스 내의 자료를 검색, 삽입, 수정, 삭제를 할 수 있으며 select, insert, update, delete 가 있습니다.

- 제어어(DCL) : 데이터에 대해 무결성, 병행 수행 제어, 보호와 관리를 위한 언어입니다. Commit, rollback, grant(권한부여), revoke(권한회수)가 있습니다.

 

스키마란?

- 데이터 베이스의 전체적인 구조와 제약조건에 대한 명세를 정의한 것입니다.

 

무결성이란?

- 데이터에 여러가지 제한을 두어 데이터를 정확하고 유효하게 보증하는 것을 말합니다. 무결성은 개체 무결성, 참조 무결성, 도메인 무결성, 키 무결성, null 무결성, 고유 무결성이 있습니다.

 

뷰란?

- 하나 이상의 테이블로부터 유도되어 만들어진 가상 테이블입니다. 실제로 기억공간을 차지하지 않으며 논리적 독립성을 제공하고 데이터 접근 제어로부터 보안성이 제공됩니다.

 

인덱스란?

- 책의 목차 같은 역할을 하며 테이블의 전체 데이터 중 적은 양을 조회할 때 사용됩니다. 데이터의 유일성이 높고 범위가 넓을수록 인덱스의 효율이 올라갑니다.

- 비트리

- 비트맵

 

Group by절이란?

- 집계함수와 같이 사용되며 데이터들을 작은 그룹으로 분류하여 소그룹에 대한 항목별로 통계정보를 얻을 때 사용됩니다. 같이 having 절이 사용되며 그룹에 대해 조건을 걸 때 사용됩니다.

 

고유키와 기본키 차이?

- 고유키는 고유키의 속성이 있는 컬럼의 로우들은 서로 다른 값을 가져야 하며 이때 null 값도 포함됩니다. 하지만 기본키는 테이블에서 한 컬럼만 가질 수 있으며 null일수 없습니다.

 

함수적 종속이란?

- x의 값에 따라 y의 값이 결정될 때 y x에 대해 함수적 종속이라고 합니다. 만약 x의 값이 여러 개 즉, x1, x2가 있을 경우 x1 x2 y의 값을 결정한다면 이를 완전 함수적 종속이라고 하고 x1, x2중 하나만 y의 값을 결정할 때 부분 함수적 종속이라고 합니다.

 

정규화란?

- 관계형 데이터베이스 설계에서 중복을 최소화 하여 데이터를 구조화 하는 것을 정규화라고 합니다. 정규화는 6정규화 까지 있지만 보통 3정규화 까지 합니다. 1정규화는 모든 속성의 도메인이 원자 값으로만 구성되었는 것입니다. 2정규화는 모든 컬럼이 완전 함수적 종속을 만족하는 것입니다. 3정규화는 이행함수 종속을 제거하는것입니다.

 

반정규화란 무엇인가요?

- 정규화로 분리된 테이블의 중복을 허용하여 테이블을 통합하는 것을 말합니다. -> 조회 빠름

 

이너 조인과 아우터 조인에 대해 설명해주세요

- 이너 조인은 교집합을 구하는 것이고 아우터 조인은 합집합을 구하는 동작입니다.

 

파티셔닝이란?

- 서비스의 크기가 커지면서 DB에 저장하는 테이블 또한 용량이 커지면서 용량의 한계와 성능저하를 발생시킵니다. 이를 극복하고자 파티션이라는 작은 단위로 물리적으로 분할하는 것을 의미합니다. 파티셔닝의 종류로는 수평파티셔닝과 수직 파티셔닝이 있으며 분할 기준으로는 범위, 목록, 해쉬, 합성 분할이 있습니다.

 

Sql

Select

From

Where

 

Group by

Having

 

Order by

Limit

 

 

+ 생각 나는 것 계속 추가

LIST

'기타 > 면접준비' 카테고리의 다른 글

네트워크 기본 기술 면접 준비  (0) 2021.12.07
JPA 기본 기술 면접 준비  (0) 2021.12.07
Spring 기본 기술 면접 준비  (0) 2021.12.07
Java 기본 기술 면접 준비  (0) 2021.05.04