1

현재 시스템은 다음과 같이 아키텍처되었습니다.SqlServer 메모리 내 테이블을 ASP.NET 캐시로 대체 할 수 있습니까?

DB 테이블에는 약 5 백만 개의 레코드가 있습니다. 필요에 따라 1 백만 레코드의 결과 집합을 말하고 응용 프로그램을 통해 캐시에 보관합니다. 완료되면 해당 레코드를 제거합니다.

이제 .NET 응용 프로그램의 메모리를 사용하는 대신 "메모리 기반 테이블을 사용하여 메모리 기반 테이블에 1 백만 개의 레코드를 유지하면서 디스크 기반 테이블에 5 백만 개의 레코드를 보존 할 수 있습니까?"

답변

1

그럴 수도 있습니다. 성능은 여전히 ​​진행중인 데이터보다 적습니다. 저렴한 SQL 문을 실행할 때 수행해야 할 가장 비용이 많이 드는 작업 중 하나는 무엇이든 실행하는 오버 헤드 (네트워크, 직렬화 등)입니다.

성능이 아직 충분히 저하되었는지를 측정하거나 잘 이해해야합니다.

기존 시스템이 문제없이 작동하는 경우 아무 것도 변경할 필요가 없습니다.

+0

"Select into ..."와 같이 매 번 처리해야합니까? 이를 구현하기위한 모든 내장 메커니즘, 자동화 만 필요합니까? – Jude

+0

거기에는 자동화 된 것이 없습니다. 또한 Hekaton은 다른 테이블보다 구현에 더 많은 인력이 필요하다는 것을 알 수 있습니다. 작업을 저장하려면이 옵션이 매력적이지 않습니다. 실적 목표 및 실행 한 검색어에 대해 더 자세히 설명해 주면 뭔가 추천 할 수 있습니다. – usr

0

SQL Server에는 이미 고급 캐싱 알고리즘이 내장되어 있습니다. 당신 테이블은 얼마나 큽니까? 요즘에는 5 백만 행이 그리 크지 않기 때문에 전체 테이블이 이미 메모리에 캐시되어있을 수 있으며 기본 키로 SELECT 쿼리를 사용할 수 있습니다.