Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Resolved
-
None
Description
PullServerAuxService is an auxiliary service of Yarn to repartition intermediate data. It is similar to ShuffleHandler of MRv2. PullServerAuxService supports hash repartition as well as range repartition. It works through netty-based HTTP web server.
For retrieval of range partition data, PullServerAuxService uses a binary search tree (BSTIndex.java). For each request of range partitioned data, it opens BSTIndex every time. It may cause overheads. See messageReceived in PullServer and getFileChunks in PullServerAuxService.
If PullServerAuxService uses some cache mechanism that keeps instances of opened BSTIndex and data files, it could get rid of this overhead.