본문 바로가기

SQLD5

[SQLD 요약] 2과목. SQL 기본 및 활용 - SQL 최적화의 원리(3) [SQLD] SQL 최적화의 원리 ① 옵티마이저(Optimizer)의 실행 계획 옵티마이저(Optimizer) SQL의 실행 계획을 수립하고 SQL을 실행하는 데이터베이스 관리 시스템의 소프트웨어 동일한 결과가 나오는 SQL도 어떻게 실행하느냐에 따라서 성능이 달라진다. 옵티마이저의 실행 계획은 SQL 성능에 아주 중요한 역할을 한다. 옵티마이저 특징 옵티마이저는 데이터 딕셔너리(Data Dictionary)에 있는 오브젝트 통계, 시스템 통계 등의 정보를 사용해서 예상되는 비용을 산정한다. 옵티마이저는 여러 개의 실행 계획 중에서 최저비용을 가지고 있는 계획을 선택해서 SQL을 실행한다. 옵티마이저의 필요성 SQL 개발자가 작성한 SQL문을 어떻게 실행하느냐에 따라 성능이 달라진다. 예 먼저 테이블을 .. 2023. 7. 27.
[SQLD 요약] 2과목. SQL 기본 및 활용 - SQL 활용(2) [SQLD] SQL 활용 ① 조인(Join) EQUI(등가) 조인 (교집합) (1) EQUI(등가) 조인 조인 : 여러 개의 릴레이션을 사용해서 새로운 릴레이션을 만드는 과정 조인의 가장 기본은 교집합을 만드는 것이다. 2개의 테이블 간에 일치하는 것을 조인한다. EQUI 조인은 테이블과 테이블에서 DEPTNO 칼럼을 사용하여 같은 것을 조인한다. 사용 예 SELECT * FROM EMP, DEPT WHERE EMP.DEPTNO = DEPT.DEPTNO; EQUI 조인은 '='을 사용해서 2개의 테이블을 연결한다. SELECT * FROM EMP, DEPT WHERE EMP.DEPTNO = DEPT.DEPTNO AND EMP.ENAME LIKE '임%' /* 조인문에 추가 조건 및 정렬을 할 수 있음. .. 2023. 7. 27.
[SQLD 요약] 2과목. SQL 기본 및 활용 - SQL 기본(1) [SQLD] SQL 기본 ① 관계형 데이터베이스(Relation Database) 관계형 데이터베이스(Relation Database) (1) 관계형 데이터베이스의 등장 관계형 데이터베이스는 1970년대 E. F. Codd 박사의 논문에서 처음으로 소개된 데이터베이스이다. 관계형 데이터베이스는 릴레이션(Relation)과 릴레이션의 조인 연산을 통해서 합집합, 교집합, 차집합 등을 만들 수 있다. 현재 기업에서 가장 많이 사용하는 데이터베이스 관리 시스템 Oracle, MS-SQL, MySQL, Sybase 등 (2) 데이터베이스와 데이터베이스 관리 시스템의 차이점 데이터베이스는 데이터를 어떠한 형태의 자료 구조(Data Structure)로 사용하느냐에 따라 나누어진다. 데이터베이스의 종류 계층형 트리.. 2023. 7. 27.
[SQLD 요약] 1과목. 데이터 모델링의 이해 - 데이터 모델과 성능(2) [SQLD] 데이터 모델과 성능 ① 정규화 정규화(Normalization) 데이터의 일관성, 최소한의 데이터 중복, 최대한의 데이터 유연성을 위한 방법이며, 데이터를 분해하는 과정 데이터 중복을 제거하고 데이터 모델의 독립성을 확보하기 위한 방법 정규화를 수행하면 비즈니스에 변화가 발생하여도 데이터 모델의 변경을 최소화할 수 있다. 정규화는 제1정규화부터 제5정규화까지 있지만, 실질적으로는 제3정규화까지만 수행한다. 예) 정규화를 하지 않아 이상현상이 존재하는 모델 정규화를 하지 않아 이상현상이 존재하는 모델 위의 테이블은 정규화를 수행하지 않은 것으로, 테이블과 테이블을 하나로 합쳐둔 것이다. 새로운 직원이 추가 되는 경우 정보가 없으면 부서코드를 임의의 값으로 넣어야 한다. 불필요한 정보가 함께 추.. 2023. 7. 27.