1) In Hadoop 2, the minimum supported version of Java is Java 7, while in Hadoop 3 is Java 8.
2) Hadoop 2, handle fault tolerance by replication (which is wastage of space). While Hadoop 3 handle it by Erasure coding.
3) For data balancing Hadoop 2 uses HDFS balancer. While Hadoop 3 uses Intra-data node balancer.
4) In Hadoop 2 some default ports are Linux ephemeral port range. So at the time of startup, they will fail to bind. But in Hadoop 3 these ports have been moved out of the ephemeral range.
5) In hadoop 2, HDFS has 200% overhead in storage space. While Hadoop 3 has 50% overhead in storage space.
6) Hadoop 2 has features to overcome SPOF (single point of failure). So whenever NameNode fails, it recovers automatically. 7) Hadoop 3 recovers SPOF automatically no need of manual intervention to overcome it.
Read about more Comparison between Hadoop 2 and Hadoop 3
🔗Source: Hadoop Interview Questions and Answers