[ 
https://issues.apache.org/jira/browse/TEZ-2442?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

shanyu zhao updated TEZ-2442:
-----------------------------
    Attachment: tez_hdfs_shuffle.patch
                HDFS_based_shuffle_v2.pdf

Attach a new patch tez_hdfs_shuffle.patch, along with a simple write up 
HDFS_based_shuffle_v2.pdf. This patch keeps the intermediate spills on local 
disk, and only put the final merged output/index files to HDFS. The fetcher 
code reuses Local Disk based fetch, only uses the right file system (instead of 
LocalFileSystem) to read the file.

The feature is controlled by:
{code}
tez.runtime.hdfs.based.shuffle.enabled
{code}
by default it is false.

I have yet need to write new unit tests for the case when this configuration is 
true. But all existing unit tests pass. I have also run TPCH, all tests pass 
with this patch, either with HDFS based shuffle on or off.

> Support DFS based shuffle in addition to HTTP shuffle
> -----------------------------------------------------
>
>                 Key: TEZ-2442
>                 URL: https://issues.apache.org/jira/browse/TEZ-2442
>             Project: Apache Tez
>          Issue Type: Improvement
>    Affects Versions: 0.5.3
>            Reporter: Kannan Rajah
>            Assignee: Kannan Rajah
>         Attachments: HDFS_based_shuffle_v2.pdf, Tez Shuffle using DFS.pdf, 
> hdfs_broadcast_hack.txt, tez_hdfs_shuffle.patch
>
>
> In Tez, Shuffle is a mechanism by which intermediate data can be shared 
> between stages. Shuffle data is written to local disk and fetched from any 
> remote node using HTTP. A DFS like MapR file system can support writing this 
> shuffle data directly to its DFS using a notion of local volumes and retrieve 
> it using HDFS API from remote node. The current Shuffle implementation 
> assumes local data can only be managed by LocalFileSystem. So it uses 
> RawLocalFileSystem and LocalDirAllocator. If we can remove this assumption 
> and introduce an abstraction to manage local disks, then we can reuse most of 
> the shuffle logic (store, sort) and inject a HDFS API based retrieval instead 
> of HTTP.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to