데이터베이스 면접질문
-
[ Database ] Optimizer 옵티마이저공부 !/Computer Science 2022. 4. 26. 00:05
Optimizer 이름부터 멋있는 옵티마이저 .. 무엇일까 ! 옵티마이저란 가장 효율적인 방법으로 SQL을 수행할 최적의 처리 경로를 생성해주는 DBMS의 핵심 엔진 이다 옵티마이저는 오브젝트의 통계, 시스템 통계 등의 정보를 사용하여 예상되는 비용을 산정하게 된다 여러 개의 실행 계획 중에서 최저 비용을 가지고 있는 계획을 선택하여 SQL 를 실행한다 실행계획을 확인하는 방법은 explain 을 쿼리문 앞에 붙여주면 된다 아래 예시는 학생 테이블의 실행 계획을 확인하는 쿼리문이다 explain select * from student 옵티마이저 종류 규칙기반 옵티마이저 미리 정해놓은 규칙 ( 엑세스 경로별 우선순위 )에 따라 엑세스 경로를 평가하고 실행계획을 선택한다 비용기반 옵티마이저 예상되는 비용 (..
-
[ Database ] Key 키공부 !/Computer Science 2022. 4. 25. 23:04
Key 세상엔 여러가지 키의 의미가 있다 .. 샤이니 키부터 .. 열쇠까지 .. 쿄쿄 데이터베이스에서 키란 무엇일까 ? 검색과 정렬시에 튜플을 구분할 수 있는 기준이 되는 속성 ( Attribute ) 이다 ! 이때 튜플이란 릴레이션을 구성하는 각각의 행, 속성의 모임으로 구성된다 키 종류 Candidate Key ( 후보키 ) 튜플을 유일하게 식별하기 위해 사용하는 속성들의 부분집합을 의미한다 모든 릴레이션은 반드시 하나 이상의 후보키를 가져야한다 후보키가 되기 위해서는 아래 두 조건을 만족해야한다 유일성 : key 로 하나의 튜플을 유일하게 식별할 수 있음 최소성 : 꼭 필요한 속성으로만 구성 Primary key ( 기본키 ) 후보키 중 선택한 Main Key를 의미한다 한 릴레이션에서 특정 튜플을..