2011-12-16 5 views
1

asp.net 응용 프로그램에서 datatables를 사용하는 것이 좋습니다.Asp.Net 응용 프로그램에서 Datatables 사용

사용자가 컨트롤을 클릭 할 때마다 여러 쿼리를해야합니다. SQL Server 테이블로 직접 이동하거나 데이터 테이블에 해당 데이터를로드하고 LINQ를 사용하여 데이터를 가져 오는 것이 좋습니다. 이 경우 테이블에는 10 개의 열과 3000 개 이상의 행이 있습니다.

답변

3

정말 상당히 복잡한 질문입니다 (자세한 내용은 여기에 모두 나와 있지 않습니다). 가장 높은 수준에서는 동시성 및 메모리 사용률과 같은 메모리 보유 데이터 최적화의 균형을 맞추려고합니다. caching strategies에 대해 조금 읽으 셨다면 이러한 상반 ​​관계를 어떻게 평가할 수 있는지 이해하기 시작할 것입니다.

+0

미안 세부의 부족. 나는 Win Apps를 Web Apps로 프로그래밍했다. 데이터를 처리하는 방법을 결정하는 것은 처음에는 조금 어렵습니다. 보아야 할 부분이 많습니다. – TroyS

+0

문제 없습니다. 그것은 당신이 익숙한 개념과는 다른 톤이 아니지만 단지 몇 가지 움직이는 부분이 있습니다. Win 앱은 규모 등에 따라 동일한 고려 사항이 많이 있습니다. –

0

DataTable은 괜찮습니다. SqlDataAdapter를 사용하면 SqlDataReader에 비해 속도가 느립니다. 쉬운 검색을 위해 사용자 지정 구조로 데이터를 읽는 것을 좋아합니다.

10 개의 열 * 3000 행은 매우 작기 때문에 중요한 데이터 인 경우 메모리에 저장하는 것이 좋습니다. 셀당 1k라고 가정하면, 이는 겨우 30k로, 페이지에 대한 트래픽이 많으면 데이터베이스에서 데이터를 검색하는 쿼리의 속도에 따라 훨씬 더 빠를 것입니다.

데이터를 수시로 새로 고치거나 데이터 변경 사항을 관리하는 것이 좋습니다. ASP에는이 목적으로 사용할 수있는 Cache 개체가 있으며 여러 가지 방법으로 만료 시간을 설정할 수 있습니다.

데이터가 매우 자주 변경 될 수 있고 여러 소스에서 변경되는 경우 변경 사항의 동시성을 관리하는 것이 복잡 할 수 있습니다. 캐싱 전략을 사용할 때 일정한 변경의 영향을받지 않는 중요하지 않은 데이터에 캐싱 전략을 사용하려고합니다. 이것은 많은 것을 변경하는 데이터를 캐시하는 것이 불가능하다는 것을 말하는 것이 아니라 더 복잡합니다.

+0

그래서 나는 (단지) select 문을 수행하기 때문에 datatable이 더 나은 선택일까요? 나는 또한 연결이 매달리는 것을 막을 것이라고 생각한다. 위에 언급 한대로 캐싱을 조사해야합니다. 나는 웹 애플 리케이션에 상당히 새로운 것이다. – TroyS

관련 문제