กรณีศึกษา

Ning is the world’s largest platform for creating social websites. Customers use its solutions to quickly create social websites for everything from popular books and movies (such as The Twilight Saga), to sports communities (such as Shred or Die), to musicians (such as Linkin Park).

Solution Focus

MySQL

Social Networking

Business Intelligence

Summary of Benefits

Eliminated replication lag to ensure end-users’ leaderboards are near real-time

12x faster metastore processing

8x faster analytics ingestion and extraction for more accurate customer-facing dashboards and more effective internal troubleshooting

Ning is the world’s largest platform for creating social websites. Customers use its solutions to quickly create social websites for everything from popular books and movies (such as The Twilight Saga), to sports communities (such as Shred or Die), to musicians (such as Linkin Park).

Over the past year, Ning’s platform has seen a rapid growth in popularity, which has made innovating scalable platforms of paramount importance. In addition to the growth of its customer-base, unpredictable and volatile traffic required significant performance headroom to deliver on its promise of best-in-class customer service.

Stopping Leaderboard Lag. Its platform allowed customers to show real-time activity of site members. Keeping leaderboards up to date was vital, but also extremely challenging when site traffic was heavy.

Keeping Hot Media Files Hopping. Viral media file popularity meant that requests for media files could see huge spikes. Ning’s blob (binary large object) metastore had to handle these spikes gracefully and ensure that its customers never suffered loss of interest due to slow response times.

Analyzing More Data, Much Faster. Ning’s analytics teams processed reports that Ning used on everything from customer-facing dashboards to internal troubleshooting. Ning had to find a scalable solution to support ever-deeper analysis over a continually growing volume of data.

The Solution

Stopping Leaderboard Lag
Ning’s Engagement application allows its customers to show site member activity in real-time. This helps customers create a live community where end users can see who is making the most posts, what mp3 or video is the most popular, and so forth. Database I/O loads could see huge spikes when, for example, an artist posted a new song, and site members began downloading, chatting, and commenting on it.

Chris Schneider, Ning’s MySQL architect, was tasked with updating Ning’s database to a system that could handle multiple volatile workloads and high throughput for very large queries, as well as scale to increasing performance needs and support a viable business model. The following table shows average replication lag of a disk- based system compared to a SanDisk powered system.

Replication Lag (in sec.)

QPS

Query Size (MB)

~Threads

I/O Wait (Master)

I/O Wait (Slave)

Hard Disk

1990

48

32

5

53%

27%

SanDisk

1

48

32

5

0%

0%

Chris told us, “Our leaderboard server aggregates a lot of data from many content store database clusters. Fusion ioMemory’s performance allows us to assure our customers a seamless experience where they would always see the most accurate information, no matter how many active users are accessing the site. We can run this level of performance through one database on one cluster.”

Of equal importance, the SanDisk powered system delivered this performance affordably. “Using SanDisk was a great choice for Ning, given that we only needed one SanDisk powered cluster to run the entire Engagement system, and could scale easily,” Chris said. “Ning supports about 100,000 custom social networks with membership on each network running from less than 10 to over one million. Needless to say, there is a lot of data being added on a daily basis.”

Chris noted, with less hardware, the system was less complex and more stable. “I used to stay awake at night wondering what server failure email I would get. Now I don’t even think about it. It just runs.”

“I used to stay awake at night wondering what server failure email I would get. Now I don’t even think about it. It just runs.”

Chris Schneider,
MySQL Architect, Ning

Keeping Hot Media Files Hopping
Ning tasked David Stryker, a veteran software engineer at Ning, with designing its blob store. The purpose of this repository was to store all videos, mp3s, images, and so forth for all the sites it hosted.

“The blob store was a brand new system, and we had no idea what the eventual load would be,” David told us. “We did know that file access would be volatile, and that slow downloads would not be acceptable to our users.”

As buzz spreads throughout the social web communities that Ning hosts, its very common for the same file, say a new music video, to see huge spikes in access. The blob metastore, which serves essentially as an address book for files, is often flooded with thousands of simultaneous requests as users search for and download data.

David knew that the ultra-low latency of Fusion ioMemoryTM ioDrive® devices was ideal for enabling its high-end servers to process huge spikes in requests.

“We had to spec the system for a maximum expected load of 10,000 queries per second,” David said. “I designed the system initially for rotating disk media, but we wanted it to be much more scalable than what we could achieve with rotating disks. The fact that you can run 100 or 200 times more operations per second on a single ioDrive device just changes everything.”

The following chart illustrates the results of a benchmark Chris’s team ran using a custom internal suite that generated a 90:10 mixed read/write workload. The SanDisk powered system ran 12 times the queries per second.

Number of Queries per Second

With SanDisk

39,600

Without SanDisk

3,238

12x

Improvement

Analyzing More Data, Much Faster
Ning’s analytics team, headed by Pierre-Alexandre Meyer, Analytics Architect, provides intelligence that Ning uses in many ways, from customer-facing dashboards to proactive monitoring and internal troubleshooting. The closer Pierre’s team can analyze data in real-time, the more powerful the intelligence is.

“We first gather the data. We then analyze it in our data warehouse where we run our algorithms. We then push it back to the user and make it visually appealing to them,” Pierre said. “This three-step process was taking eight to nine hours to do a full round-trip.”

Pierre told us, “We were able to change a process without any code change and optimize it—make it scale—by simply doing a hardware change. Instead of dumping data to our master-slave MySQL servers, we changed it to run SanDisk. This dropped the extract process from eight hours to less than an hour.”

Extraction Processing Time

With SanDisk

Less than an hour

Without SanDisk

8 hours

8x

Improvement

Pierre added, “Externally, the performance gains ensured our customers would see information much faster. Internally, this was a huge win because we could crunch and present much more data without rethinking our analytics process or spending development cycles creating something new. Ning moves very fast and it was good to know that we could spend time on other tasks instead.”

“When I came in, the companies I’d worked for previously were already using Fusion ioMemory,” Chris said. “When you run into an I/O problem, you need something like Fusion ioMemory to scale vertically and quickly with your current hardware. We said, ‘Hey, SanDisk—let’s put it into production, and we know it’s going to work.’”

About the Company

Ning is the world’s largest platform for creating social websites. Top organizers, marketers, influencers, and activists use Ning to create an online destination that weaves social conversations in content and inspire action. Based in Palo Alto, California, Ning makes it easy for brands of all shapes and sizes to build custom and powerful social websites.