Skip to Content

How Uber drivers double as data backups

The Hamptons Lure Uber Top Drivers Amid NYC Slow Summer WeekendsThe Hamptons Lure Uber Top Drivers Amid NYC Slow Summer Weekends

As Uber faces off in court over the status of its drivers, it turns out that in addition to ferrying customers around, drivers also perform another vital service for the business. The on-demand ride-provider also uses its drivers—or rather their cell phones—as a back-up data center of sorts.

Uber engineers presented the novel data center back-up architecture at Facebook’s @Scale event last week and High Scalability, a blog about data center architectures, wrote it up. The presentation covered how Uber uses drivers’ phones to keep a customer’s trip data in case a data center fails and Uber’s back end infrastructure needs to be restored in another data center.

When that happens, it can be hard to sort out exactly where things left off when the data center failed. For a business that is ferrying customers around very much in real time, this could be a huge problem. Imagine if Uber’s cloud back end failed while you were mid-trip and then restarted someplace else and the driver lost your route because your particular trip hadn’t made the transfer. At best, it could result in your trip getting lost in the ether, but at worst it could mean delays if your destination disappeared mid-route and you didn’t know how to get there, and your driver was similarly lost.

The data is encrypted, so it’s not like the driver is privy to your credit card information. According to the blog post, the data stored on the driver’s phone includes “the request of a trip, offering it to driver, the acceptance of a trip, picking up the rider, and ending the trip.” This information is sent to the driver when the trip begins and a lot happens on the back end to make sure the data is sent only once. Uber also randomly performs checks to ensure that the data it has on drivers’ phones matches the data in its data centers, as a means of making sure the backup is accurate in case the data center does fail.

As far as creating a backup goes, this is a pretty interesting way to solve a problem that could become more common as more real-time services develop. The cloud is not one monolithic service. It’s a network of computers that are located in a variety of data centers around the world. And sometimes computers and entire data centers do fail. Companies ranging from Netflix to Amazon have gotten really good at managing and predicting failure.

But those services aren’t trying to manage a service where the data, and the people the data is directing, never stop moving. In that case, a downed server’s data can’t ever lose its connection. When you think about services such as Uber or an Instacart order picker, a distributed backup becomes a really compelling architecture. If you want to learn more about it, check out the High Scalability rundown or the Uber presentation at @Scale.

For more on Uber check out the following Fortune video:

Subscribe to Data Sheet, Fortune’s daily newsletter on the business of technology.