Oscar Piastri beat teammate Lando Norris to victory at the Chinese Grand Prix as McLaren continued to look a cut above the competition at the second round of the new Formula 1 season.