캐스 케이 딩/스케이딩 최적화 방법에 대한 공지가 있습니다. map-side evaluation 소위 부분 집계를 사용합니다. 실제로 Combiners에 더 나은 접근 방법이 있습니까? 일반적인 hadoop 작업 (예 : 단어 수)에 대한 성능 비교가 있습니까? 만약 그렇다면 미래에 이것을 지원할 수 있을까요?일부 집계 대 Combiners 중 어느 쪽이 더 빠릅니까?
답변
실제로 결합 자의 사용보다 부분 집계의 이점이 더 많습니다.
결합자가 유용한 경우는 제한적입니다. 또한 결합 자들은 감소 횟수가 아닌 작업에서 요구하는 처리량을 최적화합니다. 이는 중요한 성능 차이를 더하는 미묘한 차이입니다.
대규모 분산 워크 플로에서 부분 집계에 사용되는 범위가 훨씬 넓습니다. 또한 부분 집합을 사용하여 워크 플로에 필요한 작업 단계 수를 최적화 할 수 있습니다.
예시는 CountBy
및 SumBy
부분 집합체를 사용하는 https://github.com/Cascading/Impatient/wiki/Part-5에 나와있다. 해당 프로젝트에 대한 GitHub의 코드 커밋 내역을 살펴보면 이전에 GroupBy
및 Count
이 사용되어 더 많은 감소가있었습니다.
특정 유형의 집계에 적합합니다. 계단식 집계는 집계 할 수있는 것에 대해 좀 더 유연합니다. from the cascading site (emphasis mine):
캐스 케이 딩은 소위 맵리 듀스 결합 장치를 지원하지 않습니다. 컴 바이 너는 맵퍼와 리 듀서 사이의 IO를 줄임으로써 매우 강력합니다. 지도 측의 일부 값을 계산할 수 있고 감속기로 결합 할 수있는 경우 왜 매퍼를 데이터로 변환하여 으로 보내야합니다. 그러나 결합 자는 'sum'및 'max'와 같이 연관 및 교환 기능으로 만 제한됩니다.. 그리고 작업을 위해 Map 태스크에서 나온 값을 직렬화하고 정렬 (비 직렬화 및 비교)하고 다시 직렬화하여 작업해야합니다. 다시 결과 이 직렬화되고 정렬됩니다. Combiners는 CPU가 IO의 이익을 위해 거래합니다.
캐스 케이 딩은 부분 집계를 수행하는 메커니즘을 제공함으로써 다른 접근 방식을 취하고지도 측도 결합하여 축소합니다. 면 축소. 그러나 캐스 케이 딩은 값 (최대)을 캐싱하여 IO 증가를 위해 거래 메모리를 선택합니다. 이 방법은 불필요한 직렬화, 역 직렬화 및 정렬 단계를 건너 뜁니다. 또한 Associative 및 Commutative 함수뿐만 아니라 집계 함수를 구현할 수 있습니다.
- 1. jQuery .getJSON 대. 어느 쪽이 더 빠릅니까?
- 2. facebook 그래프 api 대 fql? 어느 쪽이 더 빠릅니까?
- 3. 어느 쪽이 더 정확합니까?
- 4. MySQL VIEW 대 임베디드 쿼리 중 어느 것이 더 빠릅니까?
- 5. 어느 쪽이 Java에서 더 낫습니까?
- 6. 어느 것이 더 빠릅니까?
- 7. 어느 것이 더 빠릅니까?
- 8. Android - 어느 쪽이 더 효율적입니까?
- 9. 어느 쪽이 더 Pythonic 방법입니까?
- 10. 어느 쪽이 더 낫습니까? 이 코드 샘플
- 11. 사례 대 다른 경우 If : 어느 쪽이 더 효율적입니까?
- 12. 개체의 배열 대 개체의 속성의 배열 - 어느 쪽이 더 효율적입니까?
- 13. 어느 것이 더 빠릅니까? 연합인가?
- 14. 어느 쪽이 더 낫다 : mysql_connect 또는 mysql_pconnect
- 15. DrawDib StretchDIBits 어느 것이 더 빠릅니까?
- 16. array_push() 대 $ array [] = .... 어느 것이 가장 빠릅니까?
- 17. 파일에 쓸 때 어느 것이 더 빠릅니까?
- 18. 어느 쪽이 더 낫습니다, ETL 또는 ELT입니까?
- 19. WPF 또는 GTK? 어느 쪽이 더 낫습니까?
- 20. 어느 쪽이 더 낫습니까? URLReWriter.net 또는 URLReWriting.NET
- 21. 어느 쪽이 더 낫습니까? 그건 상관 없니?
- 22. 어느 쪽이 더 낫다 : Parcelable 또는 Context?
- 23. 어느 쪽이 더 나은 연습 자바입니다
- 24. S3 파일을 참조하는 방법 중 어느 것이 더 빠르거나 빠릅니까?
- 25. 세마포 및 뮤텍스 중 어느 것이 더 빠릅니까?
- 26. 어느 쪽이 좋을까요, 일부 그리드가 접히거나 일부 사용자 컨트롤이 있습니까?
- 27. 어느 쪽이 메모리, 정수 또는 문자가 더 빠릅니까? 그리고 파일 매핑이나 청크 읽기?
- 28. 쿼리 최적화 : 어느 SELECT 구문이 더 빠릅니까?
- 29. QFile VS ifstream. 어느 것이 더 빠릅니까?
- 30. XMLWriter와 SimpleXML. 어느 것이 더 빠릅니까?
나는 내 질문에 같은 링크를 주었다. 그러나 그것은 이론과 나는 연습에 대해 묻고 있습니다. – yura