London: Buying data sim


I'm traveling to London in a couple of weeks, staying for a couple of days. I'm looking to buy a 3G data sim. What Carrier do you recommend me getting, is there sims based on week or is it in MB? Where to buy them?

Appreciate it