A company engineer details the behind-the-scenes development challenges in creating the new instant messaging-like feature.
(click image for larger view)
Top 20 Apps For Managing Social Media
By 2014, people are expected to send 128 billion IMs worldwide per day, according to estimates by the Radicati Group. This year, the research firm predicts, users will send 76 billion, compared with 60 billion in 2010.
Before adding live comments, Facebook's infrastructure optimized more reads than writes, he said. But now the company "flipped the game," said Deeter. Because of this messaging feature, each page-load needs multiple writes, and each write of a comment requires a read.
"We realized that we were building something that was fundamentally backwards from most of our other systems," he said. "At Facebook, traditionally, writes are applied to one database and asynchronously replicated to databases across all regions. A good way to think of this approach is 'read locally, write globally.' Because of our unique situation, we settled on the completely opposite approach: 'write locally, read globally.'"
To accomplish this, Facebook deployed distributed storage tiers that exclusively handle writes locally, then less frequently collect information from the company's data centers to create the final result, said Deeter.
When users load their News Feeds via Facebook's Virginia data center, the system writes to a storage tier within that data center, recording the fact that users are viewing specific pieces of content and pushes new comments to those accountholders, he explained. As friends input comments, Facebook fetches viewership information from all its data centers, combines that information, and then pushes out those updates.
"In practice, this means we have to perform multiple cross-country reads for every comment produced. But it works because our commenting rate is significantly lower than our viewing rate," Deeter said. "Reading globally saves us from having to replicate a high volume of writes across data centers, saving expensive, long-distance bandwidth."
Other members of the Facebook engineering team included Prasad Chakka, Adam Hupp, Elliot Lynde, Chris Piro, Tom Occhino, and Tom Whitnah. The effort, which began at Hackathon, required constant coordination between Facebook's front- and back-end engineers, said Deeter.
This is not the first marriage of social media and instant messaging. In 2009, for example, Google unveiled Wave, a communication and collaboration system that aims to be "what e-mail might look like if it were invented today." The service -- which Google made widely available in May 2010 -- gave users real-time IM communication and asynchronous email messaging. After underwhelming response, Google nixed Wave in August 2010.
Social is a Business ImperativeThe use of social media for a host of business purposes is rising. Indeed, social is quickly moving from cutting edge to business basic. Organizations that have so far ignored social - either because they thought it was a passing fad or just didn’t have the resources to properly evaluate potential use cases and products - must start giving it serious consideration.
Social is a Business ImperativeSocial media is critical in the age of digital business. How can IT help? First, work with the marketing team to set up social networking programs on Facebook, Twitter, and LinkedIn, at minimum. Then work to put social media sentiment analytics in place to measure success.
Join InformationWeek’s Lorna Garey and Mike Healey, president of Yeoman Technology Group, an engineering and research firm focused on maximizing technology investments, to discuss the right way to go digital.