Scaled out Music, Scaled down Infrastructure
If you’re one of the 175 million Pandora users, then you have surely experienced the excitement of having the Internet’s most popular radio station introduce you to a brand-new artist or song. While it may seem like magic, there is a perfectly logical explanation behind Pandora’s ability to seemingly read your mind and know your taste in music. The true magic behind Pandora lies hidden in the numbers and data collected from music analysis, personalization, and the music delivery methods it uses.
The Music Genome Project – A Mind Reader for Music
Starting with the analysis of the raw data, musicologists undergo a lengthy process analyzing the distinct characteristics of each piece of music. Pandora’s Music Genome Project looks at more than 450 attributes in order to create a musicological “DNA” for each track, including melody, harmony, instrumentation, rhythm, vocals and lyrics, to name a few.
It states on Pandora’s website, “the Music Genome Project’s database is built using a methodology that includes the use of precisely defined terminology, a consistent frame of reference, redundant analysis, and ongoing quality control to ensure that data integrity remains reliably high. Pandora does not use machine-listening or other forms of automated data extraction.” In 2012, Pandora’s library had over one million tracks by more than 100,000 artists. When you consider that this categorization is done manually, the scale of the project becomes almost overwhelming.
The Music Genome Project is the largest musical categorization process of its kind. However, what makes Pandora unique and popular is the ability to personalize its music delivery. A user creates a station from a “seed” such as an artist, track, or genre. The Music Genome process then begins finding new songs of the same “DNA” and further personalizes itself as a user starts giving music a “thumbs up” or “thumb down.”
In 2012, users created over 1.6 billion unique stations, each personalized by one of the 175 million registered members. The “thumbs ups” and “thumbs down” feedback is invaluable. Beyond the benefit of personalized stations, Pandora is able to take that feedback and use it to enrich the Music Genome Project, allowing Pandora to curate better stations based on its listeners.
Delivering Music Everywhere You Go
Pandora is the largest Internet based radio station, capturing more than a 70 percent market share in Internet radio listening. In January 2013, Pandora owned an eight percent share of the total U.S. radio market, delivering 1.39 billion hours of music. In 2012, Pandora users listened to 13 billion hours of music. That’s the equivalent of 1.5 million years of straight music listening.
Of the staggering 13 billion listening hours, 75 percent of the music delivered by Pandora was through mobile and other connected devices. Pandora just recently announced that it has over 1,000 partner integrations – 760 of them being consumer electronic devices such as phones, TVs, Blu-ray players, etc. Pandora is also available in 85 new car models and 175 different aftermarket car radio devices.
In order to maintain the high performance in delivery for each user, Pandora relies heavily on a caching system to help deliver its most popular tracks. Aaron Porter, Pandora’s Director of System Administration, explained that the growing popularity of Pandora presented challenges of scalability and reliability with this caching tier.
At first, Pandora loaded its servers with RAM to ensure a quick and quality experience for the end user. Scalability, however, became extremely difficult with this approach. Pandora turned to Fusion-io and its ioDrive platform, allowing it to use flash memory as a caching tier.
“The ioDrives perform as well as our RAM caches, but offer 10 times the capacity per server,” said Aaron. “Our total frequently-accessed music cache now holds 10 times the songs it used to, which both enhances existing user experience and gives us plenty of headroom for future growth.”
With the increase in capacity and performance delivered by the flash-based servers, Pandora was able to decrease its overall server footprint by 40 percent, allowing it to slow down its scale-out plans, and receive an almost instant ROI from the flash. You can learn more about Pandora’s experience with flash memory in this case study by Fusion-io.
Scaling Users and Scaling Performance
It’s easy to see how impressive Pandora’s technology is when it comes to serving up its music library. But even more astounding is seeing how the company is capable of handling database demands as they continue to add music to their library, refine their personalization algorithms, and grow their user-base. Despite these increasing demands, Fusion-io’s flash-based memory tier has helped slow Pandora’s hardware scale out. It will be interesting to see how Pandora’s continued innovations inside the datacenter, delivering higher performance and reduced energy consumption, will allow the company to enhance it’s magical customer experience.