June 23, 2006

MySQL addresses istockphoto's enterprise needs

Author: Tina Gasperson

When istockphoto.com launched in February 2000, the images in its database were available free of charge, and the entire company ran on one server with an Access database. "At that time, traffic was very low," says istockphoto.com Executive Vice President Patrick Lor. In 2002, the company moved to a fee structure and wanted to increase traffic. "We came across this amazing thing that looked like enterprise-grade software, called MySQL." With that and PHP, they re-coded the entire site, and in 2002 sold 154,000 images at 25 cents each. "We went to two generic servers and had an amazing year," he says. "That was our first real exposure to fee structures and the reception was incredible."

In the beginning, cost savings was the advantage to using open source. Lor says the company looked at other possible solutions, but "it was a very short look. As a company that charged a quarter for its product, you look at an Oracle license and it's not within the realm of possibility," Lor says. At a time when istockphoto.com didn't have the resources to invest in enterprise-grade infrastructure, the LAMP (Linux, Apache, MySQL, and PHP) stack of open source software made it possible for the company to grow into a multi-million-dollar enterprise. Today, istockphoto.com runs 12 clusters of eight CPUs each on name brand hardware with "five-nines kind of quality." Each day, istockphoto.com sells about 45 gigabytes, or $20K, worth of images, grossing more than $7 million a year.

Lor says for the most part open source software has kept pace with the company's growth. "We've worked with MySQL very closely," he says. "We bought a maintenance contract. It's not free, but it is certainly much less than it would cost for comparable [proprietary] products. The hope is that the releases come soon enough and the upgrade path is simple enough. The enterprise features that are coming in future versions of PHP and MySQL are things that we look forward to -- for instance, high availability and rollbacks." Since istockphoto.com has customers from all over the world, it cannot afford to have the site down for maintenance. High availability is a protocol that ensures little to no downtime in systems that must provide 24/7 access. A rollback allows the database to be "rewound" to a previous state, which is helpful for recovering from crashes.

But Lor says that even if getting open source applications upgraded with the same features as proprietary packages takes a little pushing, it's easier to do that than to restructure with commercial software that has all the bells and whistles. "Along the way, the conversion costs end up being prohibitive," he says. "If you have millions of lines of code, converting that over is not an easy task anymore. Once you get a company entrenched in open source, it is very hard to move, from a pricing and effort point of view."

Lor says companies that are thinking about adopting open source should keep in mind that open source doesn't necessarily mean free of cost. "There are costs involved," he says, "typically in training and maintenance. And when you look at the features that are built into enterprise-grade offerings, versus the fear that you'll have to do a little bit of work to make it happen [with open source], you have to look at balance."

Lor says that if istockphoto.com were starting up today, "I don't know what decision we would have come to," regarding database software. "Sybase offers a free version up to two gigs, and DB2 offers a largely free version. It's the big vendors' response to the onslaught of MySQL. But open source software is really getting to the point of addressing a lot of enterprise needs."

Click Here!