tez-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "okumin (Jira)" <j...@apache.org>
Subject [jira] [Created] (TEZ-4246) Avoid uneven local disk usage for spills
Date Fri, 06 Nov 2020 13:55:00 GMT
okumin created TEZ-4246:
---------------------------

             Summary: Avoid uneven local disk usage for spills
                 Key: TEZ-4246
                 URL: https://issues.apache.org/jira/browse/TEZ-4246
             Project: Apache Tez
          Issue Type: Improvement
    Affects Versions: 0.9.2, 0.10.0
            Reporter: okumin


This ticket would help a task attempt avoid overusing a specific disk.

 

I have observed PipelinedSorter repeat spilling a large amount of data to one of two disks.

In case that NodeManager has just two disks, they are basically selected in a round-robin
fashion completely.

[https://github.com/apache/hadoop/blob/rel/release-3.1.3/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/LocalDirAllocator.java#L422-L439]

Each iteration of a spill tries to create its data file and the index file, meaning that Tez
is likely to put all data files on the same disk in such cases.

 

This unfair usage is inconvenient especially when we use features with a soft limit like this.
 * https://issues.apache.org/jira/browse/TEZ-4112

 

Index files are relatively small, and I'd say we can put a data file and its index file in
the same directory so that the round-robin doesn't skip any disks for such small usage.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Mime
View raw message