Over the time, there are various forms in which a Hadoop application is defined. But in most of the cases there are following four core components of Hadoop application: