2013-01-15 4 views
2

.net 분산 맵/축소 프레임 워크를 찾고 있습니다. 실시간 데이터 질의와 여러 노드에서 질의를 병렬 처리하기 위해 이것을 사용하려고합니다. 저는 현재 WCF를 사용하여 웹 계층과 응용 계층 간의 통신을하고 있습니다.분산 맵/축소 프레임 워크

예를 들어, 메모리 데이터가있는 노드가 다섯 개인 경우 5 노드에 필터를 전달하면. 필터는 노드에있는 데이터의 청크에서 실행되고 결과는 최종 답변으로 다시 축소됩니다.

작업을 매핑하고 결과를 줄일 수있는 프레임 워크가 이미 있다면 궁금합니다. 나는 폭풍우의 Nimbus를 더보고 있었다 (Twitter 실시간지도/축소). 많은 합병증 때문에 비구름을 사용할 수 없습니다. 그리고 사육사는 너무 많은 오버 헤드가 있습니다.

프레임 워크를 사용하여 다음을 달성하려고합니다. 1) 작업 (대부분 사용 가능한 모든 노드로 전송 된 요청)을 사용 가능한 노드에 매핑하고 결과를 줄입니다. 2) 장애 조치에서 작업을 새 노드에 매핑합니다. 3) 클러스터를 관리하십시오. 노드가 작동 중지 된 경우 사용 가능한 서버 목록에서 제거하십시오.

데이터가 메모리에 저장되므로 분산 파일 시스템이 필요하지 않습니다. 아래의 통신으로 WCF를 사용하는 .NET이 이상적이지만 다른 프레임 워크 (언어)가 있으면 알려 주시기 바랍니다.

어떤 도움 (프레임 워크, 코드 프로젝트, 연구 논문, 실제 코드 :)) 감사하겠습니다.

답변

0

nimbus/zookeeper에 대한 귀하의 의견이 관리 구성 요소임을 의미하는지 확실하지 않습니다.

스톰은 사용 사례에 적합하지만 Hazelcast와 같은 사용자도 적합합니다. 어떤 솔루션이 적합한 지 알아보기 위해 필요한 정보가 더 필요합니다.

중요한 질문 중 하나는 실시간으로 무엇을 의미하는지 생각해보십시오. 짧은 응답 시간 만 필요하고 많은 양의 데이터로 작업해야하는 경우 Hazelcast를 사용하는 것이 좋습니다. 구조화되지 않은 데이터가 들어 와서 구문 분석/처리하고 사용자가 신속하게 사용할 수있게하려면 Storm이 더 적합 할 수 있습니다.

+0

감사합니다. Enno Shioji. Hazelcast는 내가 찾고있는 것에 가깝습니다. 예를 들어 사용자가 대시 보드에 도달하여 대시 보드에 4 개의 차트가 있고 클러스터에 4 개의 노드가있는 경우 작업이 4 개의 노드 (각 노드가 하나의 차트를 처리)와 결과 (4 차트)가 대시 보드로 다시 축소됩니다. 클러스터의 노드를 추적하고 작업을 매핑하는 프레임 워크를 찾고 있습니다. –