Skip to main content

Apple Siri's Architecture

Apple siri has evolved many times and each and every time it has managed to bounce back with solid capabilities, sky is the limit and we can only expect some or other kind of improvement in the architecture as the technology evolves. These guys have not given an inch to rivals.

Apple Siri backend runs thousands of services and they are running on equal number of nodes. Siri’s Application data resides in HDFS (Hadoop distributed file system) cluster . Apple have created a proprietary PaaS-like scheduler framework named J.A.R.V.I.S., which allows developers to deploy Siri services in a scalable and highly available manner.

Apache Mesos is the one that Apple Siri is leveraging for backend cluster management, it serves the CPU, Memory and computing resources abstraction very well, to prove the capability, following is the data published by Apache Mesos

Apache Mesos Features
  • Scalability to 10,000s of nodes
  • Fault-tolerant replicated master and slaves using ZooKeeper
  • Support for Docker containers
  • Native isolation between tasks with Linux Containers
  • Multi-resource scheduling (memory, CPU, disk, and ports)
  • Java, Python and C++ APIs for developing new parallel applications
  • Web UI for viewing cluster state

Incoming corpus, huge text input makes it possible to identify the pattern on the fly and Viterbi algorithm type algorithm can be used .

“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.”
I would love to hear from others to connect the dots and provide their input and understanding.

My Quora Answer

Comments

Popular posts from this blog

Indian Education System : Let's shape it

Good advice is always certain to be ignored, but that's no reason not to give it.                                                                                        By Agatha Christie   This is one of the things that I wanted to write from long back and per my opinion it should be matter of at most important for any educated person of India. Today in this article I would like  focus on reminding people about the importance of education and educational departments  no matter those are government related or privately held. Whatever we are to...

Mobile Message Organizer

Got a basic requirement that i think every mobile should have, all the mail clients have this facility and i dont see any big difficulties on this other than the storage problem which is not a problem at all as we got GB of spaces in our memory cards. Well i am talking about the organizing the messages in Inbox , categorization of messages. Suppose i want to store all the messages from one of my friend say A in a folder called Personal, my existing mobile device Nokai E71 doesn't have this feature inbuilt (Ofcourse if you want you can make a folder and move the messages manually but here i am talking about the idea of automating this procedure). Only thing we need to do is , we have to store the rules in separate location , rules will be defined by the user and then device will follow these rules.There are no or very less software available which satisfy this requirement for mobile device.this is so simple but basic requirement as per the end user. I am going to make this one ...

Microservices Architecture, A developer's Prespective

Microservices architecture addresses many concern of application development but does not solve all the problems. It has its own advantages and limitations. In order to understand it fully, we need to understand one common architecture pattern in practice, i.e. Monolithic Architecture Monolithic architecture are highly tightly coupled and you can’t change something without impacting other. Look at this building and tell me how easy it is to change Let’s take an example of an e-commerce website that has many components and services i.e. Order service Invoice service Payment services will talk to various payment gateways. User Administration services. Graphical user interface for web, WAP and for various mobile platform like android, iOS, blackberry etc. Database services, possibly more than one database will be involved. Now let’s see what are some common problems associated with it Ever Growing Container size Generally all these components are packaged in one ...