빈 테이블에서 쿼리 실행 속도가 느립니다.(많은 양의 삽입물을 삭제한 후
저는 오라클 데이터베이스에 15개의 필드가 있는 테이블을 가지고 있습니다.이 테이블에는 3500000개의 삽입물이 있었습니다.다 지웠어요.
delete
from table
그 후 선택문을 실행할 때마다
테이블이 비어있어도 매우 느린 응답(7초)을 받습니다.색인화된 필드에 따라 검색하는 경우에만 정상 응답을 받습니다.
왜요?
Gritem 말대로, 당신은 높은 워터마크 등을 이해해야 합니다.
원치 않으시면truncate
테이블(새 데이터가 삽입되었기 때문에), 사용alter table xyz shrink space
10g에 대하여 여기에 문서화되어 있습니다.
Tom Kyte는 이 문제에 대해 좋은 설명을 하고 있습니다.
http://asktom.oracle.com/pls/asktom/f?p=100:11:0 ::::P11_QUESTION_ID:492636200346818072
삭제, 잘라내기, 높은 워터마크 등을 이해하는 데 도움이 될 것입니다.
sql에서 테이블을 완전히 지우려면 삭제 대신 잘라내기를 사용해야 합니다.350만 행의 테이블이 있고 각 행마다 증가하는 빅인트 열에 인덱스(고유 식별자)가 있다고 가정해 보겠습니다.테이블을 잘라내면 테이블이 완전히 지워지고 인덱스가 0으로 재설정됩니다.Delete는 인덱스를 지우지 않고 다음 레코드를 삽입할 때 3,500,001로 계속됩니다.잘라내기는 삭제보다 훨씬 빠릅니다.아래 기사를 읽고 차이점을 이해해 보십시오.
이 기사 읽기 잘라내기와 삭제의 차이점을 설명하는 이 기사 읽기.각각의 것을 사용할 때가 있습니다.오라클 관점의 또 다른 기사입니다.
언급URL : https://stackoverflow.com/questions/4408212/slow-query-execution-in-an-empty-table-after-deleting-a-large-amount-of-insert
'sourcecode' 카테고리의 다른 글
MySQL - varchar 열에서 숫자 값만 선택 (0) | 2023.09.26 |
---|---|
현재 암호를 모르는 경우 asp.net 멤버십 제공자를 사용하여 해시 암호를 변경하는 방법은 무엇입니까? (0) | 2023.09.26 |
Wocommerce 백엔드 제품 편집 페이지의 제품 유형 옵션에 확인란 추가 (0) | 2023.09.26 |
워드프레스 SQL은 X 제품에 대한 사용자의 이름과 성을 쿼리합니까? (0) | 2023.09.26 |
각2 사용자 정의 양식 입력 (0) | 2023.09.26 |