Pandora Radio uses the Music Genome Project to create a personal listening experience for all types of listeners.
- Bandwidth (Why High?): Pandora uses a high amount of bandwidth to accommodate the large amount of high quality music it streams to users.
- CPU (Why Low?): The processing power used by Pandora will be used mainly to power the algorithms which decide which song to play, which takes hardly any processing power at all.
- Disk (Why High?): Pandora has thousands of different tracks and artists stored on its servers in addition to all of the personal information for its users. Its servers use a large amount of disk space.
- RAM (Why Low?): The music being played will never really be saved to RAM. Most likely, the music is being extracted directly from the disk, being played, and then going back to its spot on the hard drive.
- Scalability (Why High?): In order to accommodate the increasingly high amount of traffic Pandora receives, it has built a server architecture outfitted with a load balancer which can let multiple users listen without interfering with one another.
Pandora Radio is a personalized music recommendation service with an active listenership of over 36 million, an excess of 100 million registered users, and over 850,000 songs in its library as of 2011. Powered by the Music Genome Project, a complex endeavor to dissect and categorize all forms of music based on core similarities, Pandora’s success is driven largely by its loyal fan-base. The company began trading publicly on the New York Stock Exchange on June 15, 2011.
Though Pandora officially launched in November of 2005, the Music Genome Project began in 1999, after founders Tim Westergren and Will Glaser set out to “capture the essence of music at the fundamental level.”
With the help of at least 50 musician employees, including musicologist Nolan Gasser, Westergren and Glaser developed a system to manually catalog individual songs based on approximately 600 musical attributes. The goal of the Music Genome Project was to determine each song’s “musicological fingerprint,” which would enable Pandora Radio to pull songs from an organized database and generate playlists based on the personal preferences of the listener.
In the years following the conception of the Music Genome Project and founding of Pandora Radio, the fledgling company suffered a series of setbacks. The first came with the collapse of the dot-com bubble, after which Westergren and his employees often worked without pay, struggling to find investors to take a chance on the startup.
In 2004, Westergren found a $9 million investment in Walden Venture Capital and the company launched the following year. Two years later, however, when things were looking up, the federal royalty board doubled the royalty fees for online radio stations, a decision that threatened Pandora’s ability to stay in business as royalty fees were already a worrisome expense for the company.
In the same year, Pandora was forced to block IPs outside of the US because of foreign licensing issues, alienating a significant amount of listeners, and in 2008, Westergren announced that the company was on the verge of collapse. However, through the combined efforts of lobbyists and devoted users, the board eventually agreed to a lower royalty rate. Pandora not only survived as a result, but its fan-base continued to climb into the millions.
Pandora began as a free online radio service, relying primarily on advertisements for its source of revenue. However, after resolving the royalty dispute with the board, the company announced a few changes in its service offering. Free listening would be limited to 40 hours a month and would be broken up by ads. After 40 hours, additional listening could be purchased for the remainder of the month for only $0.99. Listeners could also subscribe to an ad-free, unlimited service called Pandora One, priced at $36 and billed annually.
To use Pandora, listeners create their own stations by choosing from a selection of genres or by typing an artist, song, or composer that they like into the “Create a New Station” box. The station launches immediately and the playlist begins, selecting songs from Pandora’s extensive database for their musical similarities to the artist, song, or genre that the listener picked.
Recent upgrades to the service have enhanced the way new stations are created by reprogramming the drop-down recommendation box that appears when a user begins to type a selection. The station suggestions are no longer exclusively keyword based, but dynamically pull from the music genome, the user’s “thumbing” and listening history, as well as their participation in other social elements of the site.
As opposed to play-on-demand services, listeners don’t have the ability to choose the songs that appear in their playlists, and as a result often discover new artists. In this respect, Pandora has become a venue for musicians as well, allowing them to submit their material to Pandora to be reviewed and, hopefully, catalogued along with the hundreds of thousands of songs featured by the booming online service.
The trademark feature of Pandora is the ability to “thumb up” or “thumb down” any track that appears in a playlist. Thumbing down a song permanently removes it from the station while thumbing up lets Pandora know that you’d like to hear the song, and songs like it, more often. Other features like bookmarking favorite artists and songs have always been available, but additional options have gradually been added to Pandora’s stations, including an “I’m tired of this track” button, which suspends the selected track for a month, and “Move track to another station.”
All of these features give users the power to curate their own stations, further personalizing the experience and assisting the Music Genome Project in fine-tuning its cataloguing criteria.
Pandora Radio is fast becoming a staple for most mobile devices, as well as home entertainment systems, and in January 2010, a deal was struck with Ford to include the online radio service in the car maker’s voice-activated Sync system.
Pandora added classical music to its repertoire in 2008 and Comedy stations debuted in May of 2011. The site underwent a total redesign in July of 2011, as well, replacing its Flash elements with HTML5 to enable additional features and a more universally fluid user experience.
Like its database of musical tracks, Pandora’s listenership has experienced impressive growth since its beginning and the company has relied on multiple colocation environments to provision for its rapidly growing data requirements. In such an environment, Pandora’s scaling challenges have included making correct predictions for growth as well as coordinating the installation of additional servers with the increased demand for power and cooling.
More recently, however, Pandora has transitioned to as many as 27 off-premise cloud servers in an environment managed by Salesforce technology, according to a recent statement by Mark Brennen, Senior Director of IT at Pandora.
The foundation of Pandora’s custom infrastructure, which is based primarily on open source software, is the PostgresSQL database and is managed and developed using Debian Linux, OpenLaszlo, and Java. Pandora’s playlist generator, called a “matching engine,” is written in C and Python and uses Slony as the replication system. The engine builds the connections between the songs automatically selected for a playlist and the type of station the listener created.
Using a highly tuned implementation of Apache to deliver the audio, Pandora’s web-based and mobile apps pull data from its extensive database to be delivered through a “fleet” of Content Delivery Networks and served to the listener through a Flash-based user interface. Recent upgrades have replaced the site’s Flash elements with HTML5 to minimize load times, enable additional features, and provide a better user experience overall.
To accommodate massive amounts of simultaneous listeners, Pandora has focused on creating an architecture that allows for horizontal scaling of resources and requests. When a listener launches a station, the request is distributed through a load balancer across Pandora’s Playlist Servers, which then speak to the replicated music databases to deliver the listener’s playlist. The Playlist Servers and music databases are kept separate to effectively minimize user lag by allowing the Music Player to make audio requests from any of Pandora’s audio servers.
Brennen, Mark. “Mark Brennen on Pandora’s use of Cloud Computing Enterprise Services.” YouTube.
http://www.youtube.com/watch?v=fFqupxbCQsA (accessed December 16, 2011).
Fuller, Brad. “Inside Pandora: Web Radio That Listens to You.” O’Reilly Digital Media.
http://digitalmedia.oreilly.com/pub/a/oreilly/digitalmedia/2006/08/17/inside-pandora-web-radio.html?page=1 (accessed September 14, 2011).
Lombardi, Candace. “Pandora adds classical.” Technology News – CNET News.
http://news.cnet.com/8301-10784_3-9821318-7.html (accessed September 14, 2011).
Miller, Claire Cain. “How Pandora Avoided the Junkyard, and Found Success.” The New York Times.
http://www.nytimes.com/2010/03/08/technology/08pandora.html (accessed September 14, 2011).
Schonfeld, Erick. “With 80 Million Users, Pandora Files To Go Public.” TechCrunch.
http://techcrunch.com/2011/02/11/pandora-files-to-go-public/ (accessed September 14, 2011).
“The story of Pandora so far from founder Tim Westergren.” intruders.tv.
http://intruders.tv/en-tech/the-story-of-pandora-so-far-from-founder-tim-westergren/ (accessed September 14, 2011).
Westergren, Tim. “Pandora: Breaking Pandora’s Heart….” Pandora.
http://blog.pandora.com/pandora/archives/2007/05/breaking-pandor.html (accessed September 14, 2011).
You should check out these related Case Studies: