Triangle }}

Apple details how it rebuilt Siri on Mesos

Apple announced during a Wednesday night meetup at its Cupertino, California, headquarters that the company’s popular Siri application is powered by Apache Mesos.

We at Mesosphere are obviously thrilled about Apple’s public validation of the technology on which our Datacenter Operating System is based. If Apple trusts Mesos to underpin Siri — a complex application that handles Apple-only-knows-how-many voice queries per day from hundreds of millions of iPhone and iPad users — that says a lot about how mature Mesos is and how ready it is to make a big impact in companies of all stripes.

But there’s a bigger picture, too. Companies want what was promised from cloud computing but there hasn’t yet been a great way to get those things at scale in the cloud or in your own datacenter. With Mesos, the world has an open source platform that truly delivers on promises of scalability, elasticity and shared resource pools.

Credit: Sunil Shah

]1 Credit: Sunil Shah

Meet J.A.R.V.I.S. (in a nutshell)

Here are some of the high-level details that Apple engineers shared at the meetup:

  • Apple’s custom Mesos scheduler is called J.A.R.V.I.S., which is short for Just A Rather Very Intelligent Scheduler. It’s named after Tony Stark’s intelligent computer assistant in the Iron Man movies (and technically, I’m told, his human butler in the old comic books).
  • Apple uses J.A.R.V.I.S. as its internal platform-as-a-service (similar in functionality to our open source Marathon framework) meaning it’s an easier way for Siri’s developers and engineers to deploy the services that the application needs to answer all those iOS users’ voice queries. (If it answers them badly, blame the algorithms not the infrastructure.)
  • Apple’s Mesos cluster spans thousands of nodes — let’s assume many thousands — and runs about a hundred services that comprise Siri’s backend. It’s one of the largest Mesos clusters around.
  • Siri stores data in HDFS.
  • Siri’s Mesos backend represents its third generation, and a move away from “traditional” infrastructure. Apple’s work with Mesos and J.A.R.V.I.S. predates the open-sourcing of Marathon (by Mesosphere) and Apache Aurora (by Twitter) in 2013.
  • Not only has Mesos helped make Siri scalable and available on the infrastructure front, it has also improved latency on the app itself.

Chris Aniszczyk from Twitter posted a nice, simplified picture of the Apple’e Mesos cluster architecture.

The new model for PaaS

Beyond the awesomeness of J.A.R.V.I.S., though, it also represents the latest in a series of big, smart companies building PaaS-like frameworks to launch jobs on Mesos. Apple built J.A.R.V.I.S., Twitter built Aurora, HubSpot built Singularity.

At Mesosphere, we built Marathon, and it ships with our DCOS. It’s designed to give every company — even those without teams of distributed systems engineers — a PaaS experience on top of the Mesos infrastructure experience, so they too can build applications like Siri. The future is about building amazing applications that take advantage of containers and microservices and big data frameworks, and doing it easily and at scale.

It’s busting out of the world’s biggest tech companies and coming soon to a datacenter, or cloud, near you.