database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
ㆍDB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
DB2 Q&A 3570 게시물 읽기
No. 3570
reorg 및 인덱스 invalid 관련 문의드립니다.
작성자
새내기
작성일
2024-04-20 01:41
조회수
34

안녕하세요~ 신규 데이터 이관 건인데요


1. 만약 신규 테이블에 3개의 인덱스를 생성한 상태로 1억 건 이상의 데이터를 INSERT할 경우, 테이블 reorg나 인덱스 reorg 작업이 필요한가요? ( only insert )


2. 그리고 인덱스 invalid 조회의 경우, 구글링 시 아래 쿼리로 확인할 수 있는 거 같은데요

select tabname, indname, lastused

from syscat.indexes

where lastused='0001-01-01'


lastused값이 '0001-01-01' 인 경우. 인덱스 생성 후 한번도 사용되지 않은 것이라고 하는데 


어떻게 해야 lastused컬럼 값이 '0001-01-01' 로 나오지 않게 할 수 있을까요?


참고적으로 신규 데이터 이관 시, 타겟DB에 테이블을 만들고 소스DB에서 타겟DB로 일부 데이터만 먼저 이관 후 PK/인덱스/FK 생성 후 나머지 데이터를 이관한 상태입니다.

 

이 글에 대한 댓글이 총 1건 있습니다.

안녕하세요. 

1. 필요하지 않습니다. runstats(통계정보 갱신)는 실행 해주시는 것이 좋습니다.

2. invalid 된 index를 찾으시려면 아래 쿼리를 사용합니다.

select tabschema, tabname, indname, datapartitionid, index_partitioning from table(sysproc.admin_get_index_info('','','')) as t where index_requires_rebuild='Y'


lastused 컬럼은 말씀하신 대로 인덱스 사용여부를 참고하기 위한 정보이지만, invalid 상태임을 확인하는 것은 아닙니다. 실시간으로 변경되지 않고 최소 15분이상 지나야 반영된다고 합니다.

https://www.ibm.com/docs/ko/db2/11.1?topic=views-syscatindexes



참고로 대량으로 데이터를 입력하실때는 커서 로드를 사용하시면 성능에 도움이 됩니다.

다만 기존 테이블 데이터가 있는 경우에는 로드중 오류 발생시 복구할 수 없으므로 주의해서 사용하셔야 합니다.


$ db2 "declare mycurs cursor for select * from employee"

DB20000I  The SQL command completed successfully.

$ db2 "load from mycurs of cursor insert into mytab nonrecoverable"

...


Number of rows read         = 42

Number of rows skipped      = 0

Number of rows loaded       = 42

Number of rows rejected     = 0

Number of rows deleted      = 0

Number of rows committed    = 42


https://www.ibm.com/docs/ko/db2/11.5?topic=data-moving-using-cursor-file-type

정상규(pajama)님이 2024-04-20 07:55에 작성한 댓글입니다.
이 댓글은 2024-04-20 07:56에 마지막으로 수정되었습니다.
[Top]
No.
제목
작성자
작성일
조회
3570reorg 및 인덱스 invalid 관련 문의드립니다. [1]
새내기
2024-04-20
34
3569secadm 권한있는 유저로 자신을 소유자로 권한변경하는 방법이 있을까요? [1]
하수
2024-04-09
66
3568시퀀스 개수 관련 문의드립니다. [1]
하수
2024-04-05
44
3567clob타입의 테이블의 경우 어떻게 load, unload 할 수 있을까요? [1]
전석
2024-03-27
89
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.019초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다