You are on page 1of 2


Delivering quality service to eleven million users with MySQL, InnoDB,

Customer Success Story
and the Solaris 10 Operating System


• Scale to support eleven million members
and more than 100 million page views a day
• Increase performance without increase
in database hardware

• MySQL database software
• InnoDB transactional storage engine
for MySQL
• Solaris™ 10 Operating System
• Sun V440 and V210

• Support for four times as many users
with no additional hardware
• Higher percentage of working dataset As the 18th most trafficked site on the Internet and growing,
in the memory with efficient schemas Fotolog needs to be able to reliably scale up to processing
• Four times the number of concurrent
increasingly large transaction volumes – without requiring
threads without adding servers
• Anticipated ability to double current a cost-prohibitive investment in additional server hardware.
number of threads The company is meeting this challenge by running MySQL
database software and the InnoDB storage engine for MySQL
on the Solaris 10 Operating System.

The combination of MySQL, InnoDB, and The advantages of Solaris 10 as

Solaris 10 enables Fotolog to efficiently process a platform for scalability
ever-larger numbers of transactions by simply Fotolog could have chosen to build the data
optimizing schema for data access patterns storage and processing architecture for its
and increasing the number of concurrent Web site on Linux; it is, after all, an open
threads—or the number of transactions that platform that supports a wide variety of
can be run at one time—without increasing hardware and applications, just as Solaris 10
the number of servers. So far, the company has does. The difference for Fotolog was in their
scaled from 8 to 32 and then to 64 threads, and ability to support multiple concurrent
it expects to increase that number to 96 next. threads. Apparently, the higher the number
of concurrent threads running, the higher the
Fotolog scaled specifically by increasing risk of failure and thread thrashing with Linux.
thread concurrency in MySQL under Solaris 10, And because Fotolog had decided to pursue
using InnoDB efficiently, and porting its PHP a concurrent-thread strategy for scaling the
application to Java™. The Java port allowed solution, the company elected to go with
Fotolog to actually decrease the number of Solaris 10, which it believed to be a more
speakers serving the site. thread-friendly solution—and therefore more

07-727_Sun_Fotolog-3.indd 1 12/13/07 11:04:20 AM


likely to deliver the scalable performance continue to support peak performance at peak than eleven million member accounts from
necessary to reliably deliver website content times, Fotolog further tuned the solution by more than 200 countries have shared more
to its members quickly and efficiently. taking advantage of the “clustered index” than 300 million photos since its inception
feature on InnoDB. This feature changes the in 2002. Fotolog provides a platform for
Choosing the right storage engine— way the system responds to requests for data members to share experiences and connect
and tuning it for scalability needed to create Fotolog pages, making it with others across the globe by bringing
Of the data storage engines available for possible to perform to call up a page and all together the power of digital photography,
use with MySQL, InnoDB is the one that is the guestbook comments associated with it social networking, and blogging to attract
known for allowing multiple pieces of data using the minimal amount of disk seeks— and entertain in a unique and captive
to be inserted into the database at one time. instead of having to perform a separate disk user experience.
However, Fotolog found that concurrent seek for every single comment. This eliminates
threading alone was not enough to guard a significant potential for disk-based Fotolog recently agreed to be acquired by
against processing slowdowns and poor service bottlenecks and slowdowns, dramatically Hi Media, a French publicly traded company.
at peak times. To do that, the storage engine increasing performance.
would have to be tuned to allow it to run more A unique hybrid of photo sharing, social net-
than eight concurrent threads. In addition, “Because we can complete a job as one working, and blogging, Fotolog is the choice
the schema will need to be optimized to take request instead of up to 200 separate ones, of millions of users worldwide to connect with
advantage of the storage engine offerings. everything can go much faster,” explains friends and favorites through photos.
Once that was accomplished, Fotolog elected Mashraqi. “Whenever the disk needs to write,
to increase the number of threads running it will be available to do it.” For more information
concurrently to 32, and then, shortly To learn more about the Solaris 10 operating
thereafter, to 64. On the horizon system, visit For additional
Having seen exponentially beneficial results information about Fotolog, visit
of running 64 concurrent threads, Fotolog
“At 64 threads, our members
is now looking at doubling the number of
see their Fotolog pages. At 32, threads to 96. The company believes, based on
its experience thus far, that its current number
they wait.”
of servers—32—will be able to continue to
Farhan Mashraqi handle the load. “Some people solve the
Fotolog scaling problem by throwing hardware at it,
which is not a good business outcome,
especially if they don’t understand their
Further optimizing the architecture
to support 64 threads bottlenecks,” says Mashraqi. “We do it by
Before Fotolog, no known company had ever pushing Solaris to its limits.”
expanded to 64 concurrent InnoDB threads on
a single instance of MySQL. The traditional About Fotolog
scalability solution has always been to Fotolog, Inc. is the world’s largest photo-
scale-out by adding more servers, rather than blogging community, the 18th most
increasing thread concurrency. To make sure trafficked site on the Internet, and the 3rd 
that this first configuration of its kind would most trafficked social networking site. More

Sun Microsystems, Inc. 4150 Network Circle, Santa Clara, CA 95054 USA Phone 1-650-960-1300 or 1-800-555-9SUN Web
© 2007 Sun Microsystems, Inc. All rights reserved. Sun, Sun Microsystems, the Sun logo, Solaris, and Java are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries.
Information subject to change without notice. Printed in USA.

07-727_Sun_Fotolog-3.indd 2 12/13/07 11:04:29 AM