A highly knowledgeable person; expert.
Synonym of know-it-all
A person who makes wisecrack remarks; a smart aleck.