Spain's Ivan Rana produced a season-best time to win the Ironman Austria, while American Linsey Corbin smashed the course record as she claimed victory in the women's event.