Secondary NameNode is a component of the Hadoop Distributed File System (HDFS) that provides fault tolerance and disaster recovery capabilities for the NameNode. It does this by periodically creating checkpoints of the metadata stored on the NameNode and storing them on the local disk. These checkpoints can then be used to restore the file system in the event of a NameNode failure.
Contrary to its name, the Secondary NameNode does not actually act as a backup or secondary instance of the NameNode. Instead, it periodically copies the metadata stored in the NameNode's memory, merges it with the edits log, and then creates a new checkpoint file. The Secondary NameNode does not handle client requests or perform any other functions of the NameNode.
The frequency of checkpoint creation is determined by the dfs.namenode.checkpoint.period configuration parameter, which specifies the number of seconds between each checkpoint. By default, this value is set to one hour.
The Secondary NameNode is not a failover mechanism for the NameNode. In the event of a NameNode failure, a different mechanism, such as using a hot standby NameNode or a shared storage solution, should be employed to restore the file system.