While reading about different data structures, found that the Symbol table used by compilers is classified as a data structure.
Can someone explain what is the difference between Symbol table data structure and a Hash map?
A Symbol Table isn't a data structure per se. Most compilers will require one or more symbol tables but their exact form isn't limited to one particular data structure. Some compilers may choose to implement their symbol table as a hash map, if that's suitable for their purposes.
So I'd say the difference is conceptual. "Symbol Table" describes a data structure by its purpose. "Hash Map" describes a data structure by its implementation.
The Wikipedia page isn't too bad