Welcome!

Linux Authors: Gilad Parann-Nissany, Maureen O'Gara, Glenn Rossman, Hovhannes Avoyan, RealWire News Distribution

Related Topics: Linux

Linux: Article

MySQL for AP Hosted News

Bottom line: it just works

The Associated Press (AP), the world's oldest and largest news agency, offers a service that allows news providers to integrate AP online content directly into their Web sites. The service, AP Hosted News, is used by approximately 600 affiliate newspapers and broadcasters. The service handles between 150,000 and 500,000 pages of content per affiliate per day, supporting 11,000 concurrent users. MySQL, a free open source database, has been the backbone of AP Hosted News since 2002.

From Informix to MySQL

AP originally used Informix for the online news service, but the development team started looking for a new database vendor when the project was going through a redesign. They downloaded MySQL to use as a proof-of-concept model to demonstrate what they needed, but assumed that the production system would use a commercial database from a large vendor.

After getting quotes from several commercial databases such as Oracle and IBM's DB2, they realized that their exact mix of requirements were going to be very expensive. AP needed 24/7 support, speed, and reliability, but not the mix of other features the large vendors include.

According to Terry Ewing, senior systems manager, "Oracle tries to be everything to everyone, so when you buy the product, you buy all the extras that someone else needed. The licensing and support model is so complicated that we would have spent too much to get the solution we needed. DB2 would also have been hundreds of thousands of dollars." They eventually realized that MySQL would be sufficient for the job, as long as they could get quality commercial support.

MySQL had the speed and efficiency AP needed, and the product was free. High-quality support was available from MySQL, Inc., a company that provides expert support for the database.

"MySQL just happened to fit what we needed: speed and efficiency. It's because other companies had the same problems, and the product evolved to match what companies like us need most. We just don't need everything Oracle has to offer, so we don't need to pay for it."
- Terry Ewing, senior systems manager, AP

According to Ewing, ease of deployment and license flexibility were important. They are able to quickly add databases according to changes in news requirements. When the Iraq war was imminent, for example, the team added a casualty database without having to worry about license compliance or renegotiating a contract.

Nine Times the Performance, but Only Twice the Cost

Ewing wanted to be sure about the benefit of using Linux on Intel hardware, so he checked Standard Performance Evaluation Corporation (SPEC, www.specbench.org) for a comparison against replacing their Sun hardware running Solaris. He was surprised by the findings. The cost of their older Sun hardware, originally $11,000, came out to $.60 per million operations per second. The Sun hardware they considered replacing it with, now $23,000, came out to $.83 per million operations per second. The price had actually increased for the same performance. Linux on Intel hardware with a 4-processor CPU, priced at $24,600, came out to $.23 per million operations per second. Once they knew how much power they could expect from the hardware, they added in the costs of the software.

Once the software and support costs were added in, Ewing calculated the performance of Linux at nine times better than Solaris on Sun hardware, at just twice the cost.

Support Is Better on MySQL

Maintaining the highest service level was a crucial requirement for the AP project, so it was important to work with a commercial support company. MySQL, Inc., was the obvious choice. According to Ewing, AP has received better support from MySQL, Inc., than he ever did with Informix. He believes there are a couple of reasons for this. "First, AP was using a particular application server that Informix was no longer totally committed to supporting. Since they weren't fully behind it anymore, we paid for 24/7 support, but didn't get the responsive help anymore. Second, Informix and the other major database vendors receive their money in a lump sum, and support contracts are just gravy. That gives them less incentive to work hard supporting customers. But since MySQL Inc.'s whole business is services and support, they have a big incentive to work hard for the customer."

Advice for Developers of Database Applications

Ewing's advice to technical managers deploying database applications is to maintain a distance between you and your chosen database vendor, which he calls "unbundling." Write applications so that you are able to switch databaselater if you find a business reason to do so. Be mindful of standards, and stay away from proprietary features. "We could always move to a commercial database later, since we built the application with unbundling in mind."

It Just Works

Even though the development team originally expected to use a commercial database, an open source solution won out in the end. "The decision to use MySQL was easy because the system runs on its own," says Ewing. "The key benefits of using the MySQL database are its performance, its stability, and its low total cost of ownership. Bottom line: it just works."

More Stories By Maria Winslow

Maria Winslow is the author of The Practical Manager's Guide to Open Source, available at http://www.lulu.com/practicalGuide and can be contacted at maria.winslow@windows-linux.com.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.