Top seed Bianca Andreescu defeated Anastasia Zakharova at the Thailand Open to reach her first quarter-final since her run to the Bad Homburg final last June.