# 데이터 모델링 단계

개념적 모델링 

- 비즈니스 프로세스를 분석

- 기업전체에 대하여 데이터 모델링 수행

- 엔터티와 속성을 도출

- 개념적 ERD를 작성

 

논리적 모델링 

- 식별자 도출 및 모든 릴레이션 정의

- 정규화 수행, 데이터 모델의 독립성 확보

 

물리적 모델링

-실제 데이터 베이스 구축

-테이블, 인덱스, 함수 생성

- 성능, 보안, 가용성을 고려하여 구축 

 

# 데이터 독립성 확보시

1. 데이터 복잡도가 증가

2. 데이터 중복 제거

3. 사용자 요구사항 변경에 따른 대응력 향상

4. 관리 및 유지보수 비용 절감

 

# 엔터티 

유형,무형에 따른 엔터티 

유형엔터티 : 업부에서 도출되어 지속적으로 사용되는 엔터티

개념엔터티 : 개념적으로 사용되는 엔터티

사건엔터티 :  비즈니스 프로세스를 실행하면서 생성되는 엔터티

 

발생시점에 따른 엔터티

기본엔터티 : 다른엔터티로부터 영향을 받지 않고 독립적으로 생성되는 엔터티

중심엔터티 : 기본엔터티로부터 발생되고 행위엔터티를 생성하는 엔터티

행위엔터티 : 2개이상의 엔터티로부터 발생되는 엔터티

 

#릴레이션

행과 열로 구성된 테이블

 

#테이블

릴레이션에 기본키 및 제약조건에 설정된 상태

 

# 인스턴스 

정의된 스키마에 따라 실제 테이블에 저장되는 데이터 집합

 

# 속성

분해여부에 따른 분류 

단일속성 : 여러개의 의미로 구성된것

복합속성 : 여러개의 값을 가지고 있는것

다중값속성 : 속성 안에 여러개의 값을 가지고 있는것

 

특성에 따른 분류

기본속성 : 비즈니스 프로세스에서 도출되는 본래 속성

설계속성 : 데이터모델링 과정에서 발생되는 속성

파생속성 : 다른 속성에 의해서 만들어 지는 속성

 

# 반정규화

반정규화가 필요한 상황

- 정규화로 인한 수행속도가 늦어진 경우

- 다량의 범위를 자주 처리해야하는 경우

-특정 범위의 데이터를 빈번하게 처리해야하는 경우

- 요약/집계 정보가 자주 요구되는 경우

 

# 분산 데이터베이스

분할투명성 :

논리적 릴레이션이 여러 단편으로 분할되어 각 단편의 사본이 여러 시스템에 저장되어 있음을 인식할 필요가 없음

 

위치투명성 :

고객이 사용하려는 데이터의 저장장소를 명시할 필요가 없음

고객은 데이터가 어느위치에 있더라도 동일한 명령을 사용하여 데이터에 접근할 수 있어야함

 

지역사상 투명성 :

로컬 DBMS와 물리적 데이터베이스 사이의 매핑이 보장되어 각 지역 시스템 이름과 무관한 이름을 사용 가능

 

중복 투명성 :

데이터베이스 객체가 여러 시스템에 중복되어 존재함에도 고객과는 무관하게 데이터의 무결성이 보장 

 

장애투명성 :

데이터베이스가 분산되어있는 각지역의 시스템이나 통신망에 이상이 발생해도, 데이터의 무결성이 보장

 

병행투명성 :

여러 고객의 응용 프로그램이 동시에 분산 데이터베이스에 대한 트랜잭션을 수행하는 경우에도 이상이 없음

 

분산데이터베이스 장점

- 데이터베이스 신뢰성과 가용성이 높음

- 분산 데이터베이스가 병렬처리를 수행함으로 빠른 응답

- 분산 데이터베이스를 추가하여 시스템용량 확장이 쉬움

 

분산데이터베이스 단점

데이터베이스가 여러 네트워크를 통해서 분리되어 있기 때무넹 관리와 통제가 어려움

보안관리가 어려움

데이터 무결성 관리가 어려움

데이터베이스 설계가 복잡함

 

#숫자형 함수

ABS(숫자) : 절대값을 돌려준다.

SIGN(숫자) : 양수,음수,0을 구별

MOD(숫자1,숫자2) : 숫자1을 숫자2로 나누어  나머지를 계산 또는 % 사용

CEIL / CEILIG(숫자) : 숫자보다 크거나 같은 최소의 정수를 돌려줌

FLOOR : 숫자보다 작거나 같은 최대의 정수를 돌려줌

ROUND(숫자, M) :  소수점 m자리에서 반올림

TRUNC(숫자,M) : 소수점 M자리에서 절삭

'SQLD 시험 준비' 카테고리의 다른 글

[SQLD 문제] 오답노트 4  (0) 2020.08.07
[SQLD 문제] 오답노트 3  (0) 2020.08.04
[SQLD 문제] 오답노트 2  (0) 2020.08.03
[SQLD 문제] 오답노트 1  (0) 2020.08.03
LPAD 함수  (0) 2020.07.31

LPAD 함수는 지정한 길이 만큼 왼쪽으로부터 특정 문자를 채워준다.

 

LPAD("값","총 문자길이","채움문자")

'SQLD 시험 준비' 카테고리의 다른 글

[SQLD 문제] 오답노트 3  (0) 2020.08.04
[SQLD 문제] 오답노트 2  (0) 2020.08.03
[SQLD 문제] 오답노트 1  (0) 2020.08.03
View Merging  (0) 2019.11.12
HAVING 문제  (0) 2019.11.11

View Merging 은 옵티마이저가 SQL 실행을 최적화 하기 위해서 SQL문을 가공하는 작업을 의미

View Merging은 옵티마이저가 자동으로 실행

 

================View Merging이 불가능한 경우=======================

* 집합연산자(union , union all , minus, intersect)를 사용하는 경우

* Connect by 절을 사용하는 경우

* ROWNUM을 사용하는 경우

* select구에 avg,count,max,min,sum과 같은 집계함수를 사용하는 경우

* 분석함수를 사용하는 경우 

 

'SQLD 시험 준비' 카테고리의 다른 글

[SQLD 문제] 오답노트 3  (0) 2020.08.04
[SQLD 문제] 오답노트 2  (0) 2020.08.03
[SQLD 문제] 오답노트 1  (0) 2020.08.03
LPAD 함수  (0) 2020.07.31
HAVING 문제  (0) 2019.11.11

 

======================================================================

답 : 

======================================================================

오답 :

 

'SQLD 시험 준비' 카테고리의 다른 글

[SQLD 문제] 오답노트 3  (0) 2020.08.04
[SQLD 문제] 오답노트 2  (0) 2020.08.03
[SQLD 문제] 오답노트 1  (0) 2020.08.03
LPAD 함수  (0) 2020.07.31
View Merging  (0) 2019.11.12

+ Recent posts