여러 계산 단계의 연결
실제 자료 처리는 하나의 MapReduce로 끝나지 않고 여러 단계를 연결하는 경우가 있다. FlumeJava는 이 파이프라인을 높은 수준의 컬렉션 연산으로 표현하도록 한다.
계산 대신 계획을 구성
컬렉션에 연산을 지정해도 즉시 모두 실행하지 않는다. 내부적으로 자료 흐름 그래프를 만들고, 최종 결과가 필요해질 때 전체 실행 계획을 최적화한다.
표현과 실행 방식의 분리
최적화된 연산은 MapReduce 같은 기반 실행 단위로 처리된다. 같은 컬렉션 추상화를 유지하면서 자료 표현과 실행 전략의 차이를 내부에서 다루는 구성이 핵심이다.
관련 문서
MapReduce / 병렬 컴퓨팅 / 데이터베이스 / Dremel 분석 시스템 / Java / 스레드 (컴퓨팅)