0
그룹이 중첩 된 FOREACH 문에서 지원되지 않는 것 같습니다. 나는 다음과 같은 스키마가 : 나는 DATA1을 평평하게하려는중첩 FOREACH 문
이data2: {group: chararray,data1: {(lt: chararray,ln: chararray)}}
그룹 (LT, LN)의 모든 쌍, 계산, 주문 DESC를, 그리고 마지막으로 1
아이디어 추출하는 것입니다 제한 각 그룹에 대해 가장 가능성이 높은 (lt, ln) 쌍. 어떻게 그 일을하도록 나를 권하겠습니까?
그것은 효과가 있었다. 빠른 질문 : UDF가 계산상의 비용이 덜들 것이라고 믿게 만드는 이유는 무엇입니까? 당신의 판단은 무엇을 기반으로합니까? – user2295350
가방이 너무 크지 않다면 UDF보다 가방이 90MB 이하라고 생각합니다. 두 개가 아닌 "GROUP BY"가 하나만 빠져 나갈 수 있습니다. 각 "GROUP BY"는 하나의지도 축소 작업을 유발합니다. 필터링이없고 모든 데이터가 작업별로 그룹으로 전달되기 때문에 단일 그룹으로 UDF를 구현 한 경우 (단일 맵 축소 작업)에 비해 두 배의 시간이 소요됩니다. – alexeipab