Teenager Mirra Andreeva became the youngest player to reach the Dubai Championships final after beating Elena Rybakina 6-4, 4-6, 6-3.