Each DFSClient has the ability to control the number of replicas. As said, Solr uses 1 for Tlogs, MR uses (or used to use) 10 for job files for better chance of data locality. It’s a decision made by whoever creates the client. So it is expected that any file can have a different replication factor, within the limits of dfs.namenode.replication.min and dfs.replication.max which is enforced by the NameNode.