8

최근에 스칼라를 배우기 시작했고 스칼라를 개선하기위한 프로젝트의 일환으로 그래프를 사용하여 잘 진행되고 있습니다. 이후 그래프 알고리즘을 쉽게 병렬 처리하여 데이터의 이점을 얻었습니다 병렬 처리) Scala 2.9의 병렬 수집에 대한 놀라운 지원.클러스터에 스칼라 배포?

그러나 한 걸음 더 나아가서 한 대의 컴퓨터가 아니라 여러 대의 컴퓨터에서 병렬 처리되도록하고 싶습니다. 스칼라는 평행 컬렉션과 마찬가지로 깨끗한 방법을 제공합니까? 아니면 액터에 관한 저서에서/Akka에 대해 더 많이 배우기까지 기다려야합니까?

감사합니다. -kstruct

답변

11

distributed collections (현재 프로젝트가 고정되어 있음)을 생성하려고했습니다.

대안은 (최근에 정말 멋진 또한 가지고 : Akka Cluster를) Akka 것 이미 언급 했으므로, 또는 본격적인 클러스터 엔진, 그 이상의 클러스터를 배포하는 등의 하지병렬 어떤 의미에서 컬렉션을하고있다 Hadoop의 경우 Scoobi, Storm 또는 Spark (특히 그래프 처리의 경우)과 같이 어떤 식 으로든 작업에 사용할 수 있습니다. 구분 된 연속 위에 빌드 된 Swarm도 있습니다. 마지막으로 가장 중요한 것은 Menthor입니다. 특히 그래프 처리에 적합하며 액터를 사용한다고 주장하는 저자.

그래프로 작업하는 것을 목표로하기 때문에 최근에 트위터로 오픈 소스 인 Cassovary을 살펴볼 수도 있습니다.

Signal-collect은 Akka로 백업 된 병렬 데이터 처리를위한 프레임 워크입니다.

+0

Hadoop – dhg

+0

에 대해서도 [Scrunch] (https://github.com/cloudera/crunch/tree/master/scrunch)를 확인하십시오. [Scalding] (https://github.com/twitter/scalding)도 있습니다.) for Hadoop –

+0

옙 내가 cassovary를 체크 아웃했습니다. 정말 멋졌습니다. – adelbertc

2

당신은 Akka (http://akka.io)를 사용할 수 있습니다 - 그것은 항상 스칼라을위한 가장 강력하고 앞선 배우와 동시성 프레임 워크를하고있다, 그리고 신선한 구운 버전 2.0은 투명 actor remoting, hierarchiessupervision 좋은 수 있습니다. 병렬 계산을 수행하는 표준 방법은 알고리즘에 병렬 부품이있는만큼의 액터를 생성하고 선택적으로 여러 컴퓨터에 분산시켜 처리 할 데이터를 보내고 결과를 수집하는 것입니다 (here 참조).