User Story: MySQL Powers Yahoo! Finance
March 5, 2001
As Open Source technologies rapidly mature, they are increasingly being viewed as plausible solutions for implementing mission-critical applications. Perhaps this trend is no more apparent than when a particularly prominent organization turns to Open Source. And in the Web industry, perhaps no organization is more prominent than Yahoo!, Inc. (www.yahoo.com).
Yahoo! uses the MySQL database to power many of the services on Yahoo! Finance (finance.yahoo.com), a popular web site that provides the full spectrum of financial services and information. MySQL is behind Yahoo! Finance's high-traffic area of news headlines, which is aggregated from over 100 sources worldwide, as well as its stock charts, insider trading, SEC filings, conference calls and earnings reports, among others.
As a result of its powerful and business-savvy MySQL applications, Yahoo! was recently awarded a top place in the exclusive 2001 InfoWorld 100 list, which ranks companies that have found innovative ways to use technology to meet their business and financial goals.
According to Yahoo!'s MySQL expert Jeremy Zawodny, the company now runs many of its Yahoo! Finance services on the open-source MySQL database because it is cost-effective, easy-to-use, and reliable. "One doesn't need weeks of expensive training and a shelf full of manuals to make it work well. Also, the MySQL support is truly outstanding," noted Zawodny.
Prior to its switch to MySQL in 2000, Yahoo! Finance managed its database needs through homegrown flat files and Berkeley DB databases. But those solutions proved to be inflexible and not scalable enough for their needs, with the volume of data nearly doubling every few months. "Our needs vary considerably, and that is one reason that MySQL works well with us. It handles the high-volume, 260 million record tables just as well as the small, low-volume ones. One of our servers handled over a quarter of a billion queries in a month-and-a-half, and it still has capacity to spare."
Zawodny noted that key MySQL features such as replication and the ready-to-use APIs and libraries have also helped Yahoo! manage its demanding applications smoothly. With the integration of InnoDB into MySQL, Yahoo! is building some of its next-generation applications to take advantage of MySQL's transactions, row-level locking, and referential integrity.
Since Yahoo! Finance started using MySQL, the database's popularity has grown within the company, and many of Yahoo's other world-wide properties are now using MySQL too. "We have used MySQL far more than anyone expected," stated Zawodny. "We went from experimental to mission-critical in a couple of months. Once others saw it, they jumped on board."
MySQL at Yahoo!
Some Technical Details:
Operating system used: FreeBSD and Linux, synchronized using MySQL Replication
Size of database: 25 GB
Average number of concurrent connections: 60
Max number of concurrent connections: 250