In which location NameNode stores its metadata and why?
NameNode service stores its metadata on the configured "dfs.namenode.name.dir" tag available on hdfs-site.xml.
This folder is used for storing the metadata in the form of FSI IMAGE and also used for checkpointing. For more details go through the above link posted by Jay.
RAM.Because metadata information will be needing in every 3 seconds after each Heartbeat. So fast processing will require to process the metadata information. To fasten this kinetic momentum of metadata, Name Node used to stores it into RAM.
How we can change Replication factor when Data is already stored in HDFS
hdfs-site.xml is used to configure HDFS . Changing the dfs.replication property in hdfs-site.xml will change the default replication for all files placed in HDFS.
or using hadoop fs shell "hadoop fs –setrep –w 3