Barcelona break a 27-year-old Spanish record by going 35 games unbeaten this season after thrashing nine-man Rayo Vallecano.