Yes, your understanding is correct. WIth 'uber' mode enabled, you'll run everything within the container of the AM itself which leads to significantly faster runtimes for 'small' jobs (we've observed 2x-3x speedup for some jobs).
hth, Arun On Nov 10, 2013, at 5:35 PM, sam liu <[email protected]> wrote: > Any comments/corrections on my understanding on Uber? > > Thanks in advance! > > > 2013/11/8 sam liu <[email protected]> > Hi Experts, > > In previous discussions, I found following descriptions: > "mapreduce.job.ubertask.enable | (false) | 'Whether to enable the small-jobs > "ubertask" optimization, which runs "sufficiently small" jobs sequentially > within a single JVM. "Small" is defined by the following maxmaps, maxreduces, > and maxbytes settings. Users may override this value.'" > > Basing on above description, I set "mapreduce.job.ubertask.enable" to true > and also configured other uber related parameters, and then I did some > practices and have following understanding. > 1) If I submit a bunch of small MR jobs to Hadoop cluster(each MR job will > run in uber mode): > - Each MR job corresponds to an application, like > application_1383815949546_0006 > - Each application has its own container, like > container_1383815949546_0010_01_000001 > - When a container launched by nodemanager, it will launch a JVM too. When > the container stops, the JVM will stop as well. A container only has one JVM > in its whole life cycle. > - Each application_1383815949546_0006 includes some map tasks and reduce > tasks > - In uber mode, all the map tasks and reduce tasks of > application_1383815949546_0006 will be executed in a the same and only > container container_1383815949546_0010_01_000001. It also means that all map > tasks and reduce tasks will be executed in a single JVM. > - A container could not be shared among different applications(jobs) > > 2) If I submit a bunch of big MR jobs to Hadoop cluster(each MR job will run > and NOT in uber mode): > - Each map task and reduce task of application_1383815949546_0006 will be > executed in its own container. It means that application_1383815949546_0006 > will have lots of containers. > > I am not sure whether above undertandings are correct or not, so any > comments/corrections will be appreciated! > -- Arun C. Murthy Hortonworks Inc. http://hortonworks.com/ -- CONFIDENTIALITY NOTICE NOTICE: This message is intended for the use of the individual or entity to which it is addressed and may contain information that is confidential, privileged and exempt from disclosure under applicable law. If the reader of this message is not the intended recipient, you are hereby notified that any printing, copying, dissemination, distribution, disclosure or forwarding of this communication is strictly prohibited. If you have received this communication in error, please contact the sender immediately and delete it from your system. Thank You.
