2
모든 맵퍼와 리듀서에서 액세스 할 수있는 공유 (전역) 변수가 필요합니다. Mappers는 값을 읽지 만 감속기는 다음 반복에서 사용할 값을 일부 변경합니다. DistributedCache는이를 수행하는 기술이지만, 공유 된 값을 읽는 것만 지원합니다.Hadoop에서 공유 (전역) 변수를 정의하는 방법은 무엇입니까?
모든 맵퍼와 리듀서에서 액세스 할 수있는 공유 (전역) 변수가 필요합니다. Mappers는 값을 읽지 만 감속기는 다음 반복에서 사용할 값을 일부 변경합니다. DistributedCache는이를 수행하는 기술이지만, 공유 된 값을 읽는 것만 지원합니다.Hadoop에서 공유 (전역) 변수를 정의하는 방법은 무엇입니까?
이는 ZooKeeper을 위해 만들어진 정확히 것입니다. ZooKeeper는 매퍼/리듀서로부터 많은 독서를 따라갈 수 있으며, 지금도 무언가를 쓸 수 있습니다.
다른 옵션은 set values in the configuration object입니다. 그러나이 작업은 전 세계적으로 단일 작업으로 만 지속됩니다. 당신은 일을 가로 질러이 가치의 통과를 스스로 관리해야 할 것입니다. 또한 작업이 실행되는 동안이 작업을 종료 할 수 없습니다.
감사합니다. 하지만 distributedCache만으로도 가능합니까? distributedCache에서 읽는 것은 간단합니다. 그러나 값을 업데이트하기 위해 주 프로그램에서 새 파일을 만들고 다음 반복에서 distributedCache를 채울 수 있습니까? –
작업 초기에 분산 캐시에 쓸 수 있습니다. 그렇게 할 능력이 있다면 그렇게 할 수 있습니다. –
tnx 많이 있습니다. 정말 고마워. –