YARN stands for Yet Another Resource Negotiator.
It allocates system resources to the different applications running in a Hadoop cluster and schedules the tasks on different cluster nodes
It sits between HDFS and the processing engines being used to run applications in the cluster architecture
It dynamically allocates the resources to applications depending on the requirements, which improves resource utilization and application performance compared with MapReduce’s more static allocation approach.
It enables the access of Hadoop for batch, interactive and real-time engines by the multiple access engines, which supports the simultaneous access of the same data set.
Multi-tenancy
Cluster utilization
Scalability
Compatibility