by 스카이오픈 [Oracle Admin] 테이블스페이스 UNDO TEMP tablespace [2012.06.11 14:43:24]
안녕하세요. 오라클 초보구요. 급하게 문의드립니다.
짧게라도 답변주시면 감사드리겠습니다.
1. 구축할 데이터베이스 요약
가. 테이블 수(a) : 50개
나. 전체 데이터 수(b) : 약 10억건(1개 테이블 최대 데이터 수 : 2억건)
다. 레코드당 용량(c) : 약 345 byte
라. 레코드당 용량(c) * 전체 데이터 수(b) : 약 321GB(인덱스 파일 등 제외)
마. 보유하고 있는 디스크 용량 5TB(500GB * 10개)
2. 데이터베이스 주요 작업
가. 전체 데이터(10억)건을 구축 후 90%이상 조회 목적으로 활용
나. 주1회 대용량 테이블(약 2억건)의 특정 필드 업데이트 작업
다. 대외 서비스용이 아닌 데이터분석자 1명만 접속하여 작업
3. 문의사항(환경에 따라 달라지겠습니다만, 경험 등에 의한 추정치 혹은 일반적인 공식이라도 부탁드립니다.)
가. UNDO, TEMP, DATA 테이블스페이스 크기는 각각 몇 GB이상으로 해야 적당할까요?
나. UNDO, DATA 테이블스페이스 생성시 Block Size 크기(8, 16, 32)는 어떤게 유리할까요?
다. UNDO, TEMP, DATA 테이블스페이스 생성시 만약 10GB로 생성한다면 데이터파일을 1GB씩 10개로 하는 것이 성능에 좋을까요?
라. UNDO, TEMP, DATA 테이블스페이스 생성시 데이터파일을 D:\UNDO01.dbf, E:\UNDO02.dbf 이런식으로 디스크 경로를 달리는게 성능에 좋을까요?
마. UNDO, TEMP, DATA 테이블스페이스 생성시 데이터파일의 Auto Extend 옵션시 몇(KB, MB, GB)로 하는 것이 성능에 좋을까요?
바. UNDO, TEMP, DATA 테이블스페이스 생성시 bigfile 옵션의 의미와 주는게 유리할까요?
사. UNDO, DATA 테이블스페이스 생성시 flashback 옵션을 줬을때 성능상 문제(서버 사양이 낮음)가 없을까요?
가. UNDO, TEMP, DATA 테이블스페이스 크기는 각각 몇 GB이상으로 해야 적당할까요?
주1회 대용량 테이블(약 2억건)의 특정 필드 업데이트 작업
==> 2억건에 대해서 한명의 사용자가 사용할 Undo Size 만큼 Undo 확보 하시면 될듯
나. UNDO, DATA 테이블스페이스 생성시 Block Size 크기(8, 16, 32)는 어떤게 유리할까요?
==> 보통은 그냥 8K 로 좋구요.
DW 용도라면 16 이나 32 K 도 많이 사용합니다.
다. UNDO, TEMP, DATA 테이블스페이스 생성시 만약 10GB로 생성한다면 데이터파일을 1GB씩 10개로 하는 것이 성능에 좋을까요?
==> I/O 분산인데. 요즘처럼 대용량 환경에서 1G 로 나누워 생성하는건 비추네요
가능한 크게 크게 많드세요, 관리가 더 편합니다.
I/O 분산은 스토리지 level 에서 보통 됩니다. OS Level 에서 또 다시 분리 할 필요 없을듯
라. UNDO, TEMP, DATA 테이블스페이스 생성시 데이터파일을 D:\UNDO01.dbf, E:\UNDO02.dbf 이런식으로 디스크 경로를 달리는게 성능에 좋을까요?
==> D와 E 가 물리적으로 나눠져 있다면 의미가 있습니다.
I/O 가 가장 높은 곳은 Control 과 Redo 입니다.
마. UNDO, TEMP, DATA 테이블스페이스 생성시 데이터파일의 Auto Extend 옵션시 몇(KB, MB, GB)로 하는 것이 성능에 좋을까요?
==> 정확히 데이타 증가를 알수 있다면 명시적으로 지정 하시는게 좋습니다.
100 M 정도가 적당 하지 않을까요 <-- Datafile Extend 에 따른 특별한 wait 발생 없음..
큰 사이즈로 오랜 시간 Extend 혹은 작은 사이즈로 작은 시간 자주 Extend 차이
바. UNDO, TEMP, DATA 테이블스페이스 생성시 bigfile 옵션의 의미와 주는게 유리할까요?
==> 무지 막지 하게 큰 경우만 bigfile 옵션을 검토하세요
사. UNDO, DATA 테이블스페이스 생성시 flashback 옵션을 줬을때 성능상 문제(서버 사양이 낮음)가 없을까요?
==> flashback option 이 여러 갠데 어떤건가요 ? DB Level ?
DW 업무면 재이행 하면 되니, 굳이 복구 할필요가 적을듯 싶어요