강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của sulum1140
sulum1140

câu hỏi đã được viết

Oracle hiệu suất phân tích và điều chỉnh phiên bản chính yếu hướng dẫn

Hiểu biết về Clustering Factor

클러스터링 팩터의 사용 상황

Viết

·

454

1

현업에서 클러스터링 팩터를 사용하는 때는 일반적이지 않고 특정한 상황에서만 적용하나요..? 만약 그렇다면 어떤때 사용하는지 예시를 들어주시면 고맙겠습니당

DBMS/RDBMSoracle

Câu trả lời 2

1

sulum1140님의 프로필 이미지
sulum1140
Người đặt câu hỏi

상세한 설명 감사합니다 ~~

1

dooleyz3525님의 프로필 이미지
dooleyz3525
Người chia sẻ kiến thức

안녕하십니까,

일반적으로 클러스터링 팩터는 테이블 access시에 기본적으로 적용되는 방식입니다. 클러스터링 팩터는 개념입니다. 1개 block을 액세스 할때 얼마나 내가 원하는 row를 가져 올 수 있느냐, 당연히 1block access를 할때 많은 block을 액세스 하면 좋습니다.

이 클러스터링 팩터 개념이 잘 적용된게 보통은 인덱스 클러스터링 팩터 입니다. 인덱스를 통해 테이블을 1 block을 access할 때 얼마나 내가 원하는 row를 가져 올 수 있느냐 입니다.

두번째로 클러스터링 팩터 개념을 테이블 레벨에서 극대화 한게 클러스터(Cluster) 테이블이 있습니다. 이 클러스터 테이블을 인덱스 클러스터/해쉬 클러스터 테이블이 있습니다만, 인덱스 클러스터 테이블을 기준으로 말씀드리면, 동일한 Key값을 가진 레코드를 동일한 블럭에 위치할 수 있게 만들어주는 오브젝트 입니다.

하지만 이 클러스터 테이블을 잘 사용되지 않습니다. 해당 clustering key가 아닌 다른 key값으로 조회 시에는 clustering factor가 오히려 나뻐서 수행 속도가 더 느려지며, DML 수행 시에도 해당 Cluster key영역에 데이터를 찾아서 넣어줘야 하는등 여러가지 제약 조건이 많기 때문입니다.

과거(한 20년전쯤)에는 특정 key값으로 조회하는 범위가 넓은 경우(예를 들어 between 조건으로 조회)하는 경우에 I/O 성능이 나오지 않을 경우 대안으로 사용하곤 했는데, 근래는 거의 사용되지 않습니다.

감사합니다.

Hình ảnh hồ sơ của sulum1140
sulum1140

câu hỏi đã được viết

Đặt câu hỏi