2010-12-06 2 views
0

대다수의 데이터에 많은 양의 데이터 (11,000,000)가 포함 된 10 개의 비정규 화 테이블이 있습니다. 클라이언트는 사용자가 한 번에 최대 100,000 개의 레코드를 다운로드 할 수 있기를 원합니다. 내가 궁금해하는 것은 이것을 처리 할 백그라운드 프로세스의 디자인이다. 아마도 각 테이블에 대한 대기열을 설정하고 요청을 처리하는 여러 스레드를 가질 것을 고려하고있었습니다. 필자는 멀티 스레드 구성 요소를 설계하는 데있어 전문가가 아닙니다. 너희들 내가 내가 바른 길에 있다고 생각하니? 구현에 대한 제안?다중 스레드 구성 요소 설계 질문

감사합니다. 이 이후

+0

당신이 '한 번에 기록 100K까지 다운로드'말입니다 수출 (또는 모든 데이터가 필요 비슷한)에? 또는 화면에서 (페이지 매김을하고 거기에있는 모든 데이터를 볼 수 있음)? – w69rdy

+0

대기열은 무엇을하고 있습니까? –

+0

정확함, excel (또는 csv)로 내보내기. 사용자는 웹 인터페이스를 갖기 때문에 어떤 종류의 큐에 요청을 드롭해야합니다. 대기열은 단순히 보고서 유형 및 검색 매개 변수를 저장합니다. – Marco

답변

1

디자인 시나리오

1은, 얼마나 많은 동시 사용자 데이터를 Asp.Net의 applicaion 다운로드합니다입니까?

2- 다운로드 데이터 기능을 응용 프로그램에 제공 할 생각입니까? 프로세스 재순환에 대해 생각해 보셨습니까?

3 사용자 세션이 만료되었지만 다운로드가 아직 진행중인 경우 어떻게해야합니까?

4- 스트리밍 서버로 이동할 가능성이 큽니다.

제가 생각하기에 실제로 어떤 유형의 응용 프로그램이 실제로 필요한지를 결정하는 것보다 먼저 이러한 시나리오에 대해 생각해야합니다. 내 생각에

내가, 당신은 서버에 연결하는 클라이언트 컴퓨터에 다운로드 및 클라이언트 자원 (스레드 등)의 사용을 될 것이다 윈도우 기반 솔루션을 만들 생각해야한다고 생각

와 서버가해야 스트리밍을 지원합니다.

+0

그 수천에있을 것입니다, 이것이 배경 과정이 필요한 이유입니다. – Marco

0

사용자가 사용자 지정 쿼리를 만들거나 테이블의 "청크"를 다운로드 할 예정입니까?

그렇다면 왜 각 청크에 대해 미리 CSV를 생성하지 않는 것이 좋습니까? 각 청크에 100,000 개의 레코드가 있고 테이블에 총 11,000,000 개의 레코드 만있는 경우 110 개의 청크가 필요합니다.

+0

각 보고서에는 최대 15 개의 검색 필드가 있습니다. – Marco