데이터버퍼캐시에 올라가는 블록 0 3 671

by 열심열심 [Oracle Admin] [2018.06.29 13:46:13]


만약 100만건의 테이블(t1)이  10G이고

 

데이터 버퍼 캐시가 10기가 잡혀 있다면 

 

select * from t1 했을 때 

 

데이터 버퍼캐시에 해당 블록이 모두 올라 가나요? 

 

by 마농 [2018.06.29 14:54:17]

버퍼가 부족하면 우선순위에서 밀리는 것들을 몰아내고 그자리를 차지하게 됩니다.
풀스캔은 우선순위가 낮으므로 전체가 모두 올라가 있는 일은 없을 듯 하네요.
쭈욱 읽어나가면서 자기가 사용했던 공간을 밀어내고 다시 쓸 듯 하네요.
풀스캔 몇번 한다고 해서 자주 사용되는 중요 정보가 버퍼에서 밀려나면 안되겠지요.


by 열심열심 [2018.07.02 09:28:59]

그럼 만약 100만건 중에 서로 다른 값 100건 뽑고 다시 또 다른 값 100건 뽑고 하면 

효율이 안 나오겠네요 디스크를 계속 사용하게 되니까 

 


by 열심열심 [2018.07.02 10:05:32]

추가로 버퍼 캐시가 10G인데 사용량 체크할 때 5G라면 

풀테이블 스캔하더라도 버퍼캐시에 올라가는거죠?

 

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입