IT

빈 테이블에 인덱스를 만든 후 데이터를 삽입하거나 오라클에 데이터를 삽입한 후 고유 인덱스를 생성하시겠습니까?

itgroup 2023. 8. 16. 22:09
반응형

빈 테이블에 인덱스를 만든 후 데이터를 삽입하거나 오라클에 데이터를 삽입한 후 고유 인덱스를 생성하시겠습니까?

어떤 옵션이 더 좋고 더 빠릅니까?빈 테이블에 인덱스를 작성한 후 데이터를 삽입하거나 데이터를 삽입한 후 고유 인덱스를 작성한 후 데이터를 삽입합니다.삽입해야 할 행이 약 10M 있습니다.다운타임을 최소화하려면 어떤 옵션이 더 나을 것입니다.

데이터를 먼저 삽입한 다음 인덱스를 만듭니다.

UPDATE, INSERT 또는 DELETE 작업을 수행할 때마다 테이블의 인덱스도 업데이트해야 합니다.따라서 먼저 인덱스를 만든 다음 10M개의 행을 삽입하면 대량 작업을 수행하지 않는 한 인덱스도 10M번 업데이트해야 합니다.

레코드를 삽입한 다음 행을 가져온 후 인덱스를 만드는 것이 더 빠르고 좋습니다.행을 삽입할 때 인덱스 유지 관리의 오버헤드가 없기 때문에 더 빠르고 인덱스의 조각화 관점에서 더 좋습니다.

고유 인덱스의 경우 인덱스를 만들 때 오류가 발생하지 않도록 가져오는 데이터가 고유한지 확인해야 합니다.

다른 사람들이 말했듯이, 먼저 삽입하고 나중에 인덱스를 추가합니다.테이블이 이미 존재하고 이와 같은 데이터 더미를 삽입해야 하는 경우 모든 인덱스 및 제약 조건을 삭제하고 데이터를 삽입한 다음 인덱스를 다시 적용합니다.롤백 세그먼트 공간이 부족할 가능성을 방지하기 위해 중간 커밋을 수행해야 합니다.이렇게 많은 데이터를 삽입하는 경우 SQL*Loader를 사용하여 시간과 문제를 줄이는 것이 유용할 수 있습니다.

이것이 도움이 되길 바랍니다.

언급URL : https://stackoverflow.com/questions/1983979/insertion-of-data-after-creating-index-on-empty-table-or-creating-unique-index-a

반응형