티스토리 뷰
*인덱스
-> (기출) 고유 인덱스는 가장 좋은 선택성(Selectivity)을 가진다
-인덱스에 대해 한가지 알고 있어야 하는 사실은 대부분의 DBMS에서 테이블의 기본키로 지정된 컬럼에 대해서는 지동적으로 인덱스를 만들어준다는 사실이다.
Clustered Index를 만들게 되면 물리적으로 데이터를 정렬(기본 오름차순, 내림차순)시킨다. 기본적으로 Non-Clustered Index 보다 검색속도가 빠르다.
-> 한 테이블에 하나의 클러스터드 인덱스만 만들 수 있다.
* 물리적 설계
:논리 데이터베이스 구조로부터 효율적 구조의 데이터베이스 구조를 설계하는 과정
- 효율적인 물리적 구조 ? 성능 up, 저장공간 down, 보안, 백업. 회복이 용이한 구조
1.물리적 설계 단계
1)개발 DBMS 선정
2)칼럼의 데이터 타입과 사이즈 정의
3)데이터 사용량 분석
4)역정규화 (DeNormalization)
5)Index, View, Stored Procedure, Trigger 등 정의
6)데이터베이스 생성
*데이터 사용량 분석
:데이터 사용량을 분석해서 사용이 빈번한 테이블을 찾는다 -> 이런 테이블은 전체 시스템 성능 저하
-왜? 데이터 조작시 조인 연산, 참조 무결성의 원칙 위배되는지를 항상 검증(정규화의 문제점)
*역정규화
: 시스템의 성능 향상을 위해서 정규화에 위배되는 행위를 하는 것.
->정규화 : 테이블 분리, 중복 제거
->역정규화 : 테이블 통합, 중복허용
*튜닝(Tuning)
1. DB설계 및 구축 과정: 요구사항 분석 -> DB 설계 -> DB 구축 -> 테스트(DB 튜닝) -> 유지보수
2. 데이터베이스 튜닝 : 데이터베이스가 일정한 성능을 유지할 수 있도록 비효율적인 요소를 제거하고 성능 개선을 위하여
SQL 문장을 포함, 데이터베이스의 여러 요소를 조정(조율, 최적화) 하는 작업을 말한다.
* 로킹(Locking)
-하나의 트랜잭션이 데이터를 액세스하는 동안 다른 트랜잭션이 그 데이터 항목을 액세스할 수 없도록 하는 방법
* 로킹 단위
-병행제어에서 한꺼번에 로킹 할 수 있는 단위
-로킹 단위가 大→로크수가 小→관리수월, 병행성 수준 ↓
-로킹 단위가 小→로크수가 大→관리복잡, 병행성 수준 ↑
*데이터웨어하우스
[1] 출현배경 :
1)현 전산 시스템의 공로.
2)현 전산 시스템의 한계.
3)의사 결정 지원 시스템.
-기간 업무 시스템에서 추출되어 새로이 생성된 데이터베이스 로서 의사결정자원 시스템을 지원하는 주체적, 통합적, 시간 적 데이터의 집합체
[2] 주제 중심적(subject-oriented) 구성
[3] 통합된(integrated) 내용
[4] 시간에 따라 변화되는(time-variant)값의 유지
[5] 비갱신성(non-volatile)
*데이터마이닝 (Data Mining)
- 엄청난 양 데이터에 생명을 불어넣어 가치 있는 정보를 찾고자하는 연구가 지속적으로 이루어지고 있으며, 그중 대표하는 것이 데이터 마이닝(DM :Data Mining) 이다
* OLAP(Online Analytical Processing)
- 다차원으로 이루어진 데이터로부터, 통계적인 요약 정보를 분석하여 의사결정에 활용하는 방식
- 데이터 웨어하우스, 데이터 마트 같은 시스템과 상홍 연관되는 시스템
- 데이터 웨어하우스의 데이터를 전략적인 정보로 변환시키는 역할
- 중간 매개체 없이 이용자들이 직접 컴퓨터를 이용해 데이터에 접근하는데 있어서 필수적인 시스템
*Trim : 불필요한 부분은 잘라낸다.