인덱스와 테이블을 pk 기준으로 물리적으로 정렬하는 건 알겠음
그런데 삭제가 일어나면 빈 공간이 생기잖아.
이 빈 공간을 재활용 하기도 한다는데 그러면 디스크 랜덤 액세스 비율이 올라가서 조회 속도 손해가 생길텐데.
찾아 보니까 OPTIMIZE라는 키워드가 있던데 현업에서는 어떻게 처리함? 배치나 크론으로 돌림?
그런데 삭제가 일어나면 빈 공간이 생기잖아.
이 빈 공간을 재활용 하기도 한다는데 그러면 디스크 랜덤 액세스 비율이 올라가서 조회 속도 손해가 생길텐데.
찾아 보니까 OPTIMIZE라는 키워드가 있던데 현업에서는 어떻게 처리함? 배치나 크론으로 돌림?
그래서 dbms가 주기적으로 최적화한다는데 아님말고 - dc App
그렇게 만들어 놨을 것 같긴 함
재정렬 - dc App
벤더마다 별도의 알고리즘을 사용하는 고스트 정리 프로세스가 내부적으로 동작하고 있음본지 오래되서 정확하게 기억나지 않는데아마 그전까지는 할당은 되어있고 사용안함 처리하는걸로 암 (빈공간이 생기지 않는걸로 알고있음)빈공간을 재활용하는건 아마 인덱스에삭제된 위치에 해당하던 값이 다시 들어와도삭제처리한 페이지가 아니라 새로운페이지에데이터가 들어오는걸로 알고재활용 자체는 고스트정리 프로세스에 의해회수되고 나서 새로이 페이지 할당시 사용되는걸로 알아 - dc App
그리고 인덱스 재정렬, 재생성으로 임의로 진행해줄 수 있고 OPTIMIZE 힌트는 벤더마다 다를텐데 MSSQL기준 옵티마이저한테 임의의 파라미터 값을 기준으로 쿼리플랜을 생성하도록 지시하는 힌트로 알고있음 - dc App
이야 개굿. 고마워 ㅋㅋ
#MSSQL의 고스트정리
https://learn.microsoft.com/ko-kr/sql/relational-databases/ghost-record-cleanup-process-guide?view=sql-server-ver16
#MSSQL에서의
페이지 조각화
https://www.sqlshack.com/how-to-identify-and-resolve-sql-server-index-fragmentation/
- dc App
요거 보던 너가쓰는 DB관련 문서를 보던 교차 검증하셈 정확한 기억은아님 - dc App
와 고맙다농