2013-04-20 3 views
0

Hadoop을 사용하는 프로그램을 구현 중입니다. 제 질문은 공간 문제에서 Java를 다루는 방법입니다. 일부 속성 구성을 XML 파일에 추가했지만 작동하지 않았습니다. 점점 많은 수의 감속기가 나를 위해 작동하지 않습니다. 내 프로그램에서 모든 감속기는 커다란 전체 행렬이 필요하기 때문에이 논리를 변경할 수 없습니다. 그러나 모든 감속기는 열 ID가 키이고 열 벡터가 값입니다.이 딜레마에서 벗어날 수있는 방법이 있습니까?Java 힙 공간에서 감속기가 줄어들 것입니다.

추신 : 저는 감속기가 하나씩 열을 가져갈 것이고 메모리 문제가 발생하지 않을 것이라고 생각했습니다. 그러나 그것은 이런 식으로 보이지 않습니다. 사실, 저는 종이에 설명 된 알고리즘을 구현하려고합니다. 감속기의 알고리즘은 다음과 같습니다. 11 행은 앞서 언급 한 열이며 각 감속기는 행렬의 모든 열을 가지고 있습니다. enter image description here

+0

컴퓨터에 메모리를 추가 할 수 있습니까? 그게 유일한 옵션 인 것 같아서요. 코드를 최적화하고 최적화하기를 원하면 코드를 보여줘야합니다. –

답변

1

왜냐하면 hadoop과 같은 것을 사용하는 이유는 전체 데이터 세트를 메모리에 맞출 수 없기 때문입니다. 논리를 변경하지 않고 충분히 큰 컴퓨터를 찾거나 알고리즘을 병렬화하고 hadoop을 악용하십시오.

+0

안녕하세요, 응답 해 주셔서 감사합니다. 하지만 난 그냥 하나씩 열을 사용할 수 있고, 그것을 사용하면 한 열을 버릴 수 있습니다. 스트림처럼? – shirley