본문 바로가기

SAP BC인프라

SAP Oracle DB 인덱스 직접 생성

Oracle DB 를 사용하는 SAP 시스템 환경

테이블에 인덱스를 새로 추가하여 운영에 반영할 경우, 테이블의 크기/엔트리 수에 따라서 반영되는 시간의 차이가 있다.

CTS 로 매우 큰 테이블의 인덱스를 새로 추가할 경우,
해당 CTS 가 반영되는 동안에는 TP 프로세스가 해당 CTS 에게 묶이기 때문에,
반영이 완료될 때까지 다른 CTS 반영을 할 수가 없게 된다.
(긴급 운영 반영 요청이 왔을때, 인덱스 추가 CTS 가 반영되기 전까지 반영불가)

따라서 매우 큰 테이블의 인덱스 추가 같은 경우,
운영/품질에 CTS 로 반영하기 전에 DB단에서 직접 인덱스를 생성해주고, CTS 를 반영한다면 매우 빠르게 반영이 완료된다.

이럴 경우 순서가 DB Dictionary 선반영 후, ABAP Dictionary 순서가 된다.

 


Oracle DB Index 직접 생성 예시

SAP Notes 334224 - Important notes for creating indexes

✅ sqlplus sapsr3 계정 접속
sqlplus sapsr3

 

  • PSAPSR3USR 테이블스페이스에 있는 테이블 ZTEST1 의 신규 인덱스 Z01(MANDT,BUKRS,ZFLAG,ZPOS) 추가
CREATE INDEX "ZTEST1~Z01" ON ZTEST1 (MANDT,BUKRS,ZFLAG,ZPOS) NOLOGGING TABLESPACE PSAPSR3USR PARALLEL 10 PCTFREE 1 ONLINE;

 

  • 인덱스 생성 후 설정
  • ALTER INDEX "ZTEST1~Z01" NOPARALLEL LOGGING;
  • 인덱스 생성 확인
  • SELECT segment_name, tablespace_name, bytes FROM dba_segments WHERE segment_name = 'ZTEST1'

'SAP BC인프라' 카테고리의 다른 글

SAP HANA DB 복구  (0) 2024.03.09
SAP 커널 업그레이드 가이드  (0) 2024.03.09
SAP BRTOOLS 을 사용한 테이블 Reorg  (0) 2024.03.09
SAP DB/AP 서비스 시작/중지 방법  (0) 2024.03.09
ASCS / PAS / AAS / CI / DI  (0) 2024.02.05