문제

내가 있는 응용 프로그램은 다른 쿼리와 다른 결과를 캐싱 내 경우에 유해하다.

이것이 의미 없는 일반적인 데이터를 sql 수 있습에서 이득을 가져오고 그 결과에서 메모리를 직접 만드는 대신 하드 디스크에 액세스합니다.

도움이 되었습니까?

해결책

귀하의 의견이 당신을 원하지 않는 SQL 사용하기에 많은 메모리를 당신이 그것의 의미로는 쿼리를 실행하는 효과적으로 랜덤입니다.

첫째,이 메모리는 아마을 저장하는 데 사용되는 인덱스 및 쿼리 계획보다 실제할 데이터가 반환되고,따라서 찾을 것입니다 아마 이 캐시는 훨씬 더 유용하다고 생각하는 것보다.

둘째로,그것은 매우 sql 사용하여 이 메모리의 양을 일으킬 것이 어떤 성능이 감소에 대한 진정한 임의의 보이지 않는 쿼리가 있습니다.는 경우에는 SQL Server 필요로 이동 디스크 어떤 정보를 다음의 금액을 메모리의 사용은 거의 관련이 있습니다.

그러나,그것은 가능한 양을 줄이는 메모리의 SQL 서버를 사용합니다.(나는 알 수 없는 옵션은 SQL 에서 2008 년,하지만 나는 가정은 그 상당히 비슷)에서 관리,스튜디오에서 오른쪽 클릭하여 서버의 속성.거기에서 당신은 페이지가 있는 메모리.에 여기를 선택할 수 있는 최소값과 최대값을 SQL 을 사용하는 것입니다.이 것이 효과적으로 제한 모든 캐싱 sql 가에 따라 당신의 값보다는 실제 서버에 제한이 있습니다.

나는 진짜로 생각하지 않는 당신이 볼 것이 어떤 성과 이익이지만.내 경험에 의 SQL 항상 최고의 왼쪽 하고 그것을 자신의 것입니다.

다른 팁

귀하의 질문이 잘못되었습니다. 캐싱은 데이터가 메모리에 있고 디스크 액세스를 피할 수 있음을 의미합니다.

어쨌든 SQL Server 캐싱은 유해하지 않습니다. Pedants의 경우 항상 예외가 있지만 코드와 구성을 심각하게 망쳐 놓아야합니다.

SQL Server Caching을 끄거나 끄려고 시도하는 것은 문제에 대해 완전히 잘못된 방식으로 생각하고 있습니다. 데이터 계층에 데이터가 캐시되면 새로 고침해야합니다. SQL Server는 결코 오래된 데이터를 제공하지 않습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top