A person known to have incredible knowledge of a specific subject is called a connoisseur.