Mirra Andreeva, 17, ended Iga Swiatek's 10-match Indian Wells winning streak, defeating the latter for the second time in three weeks after toppling her in the quarter-finals at Dubai.