MyZDNet | Reviews | Shop | Business | Help | News | Electronics | GameSpot | Tech Life | Downloads | Developer
PC Week
MP3 download center
 
How-to-buy guides
 
Free software

 
ZDNet > Business & Tech > PC Week > MySQL offers lighter database fare, but it may leave some users hungry
 

 
All your  consulting needs

 

 
Search For:            • Search Tips
• Power Search
 
 
Home

News

News archive

Reviews

Spencer F. Katt

Special reports

Columnists

Downloads

Webcasts

Resource Centers
• ASP
• Desktops
• Enterprise Apps
• Java
• Linux
• Management
• Mobile
• Networking
• Security
• Servers
• Storage
• Telecom
• Windows 2000

Also on BizTech:
• Enterprise
• E-Business
• Small Business
• Free newsletters



Keep Track of your favorite websites - Download Onscan

NextCard Internet Visa - Click Here to Apply

 
PC Week News
MySQL offers lighter database fare, but it may leave some users hungry

February 14, 2000 12:00 AM ET

Any examination of open-source databases would be incomplete without a discussion of MySQL, a light and lean database that's a favorite of many Webmasters for its speed and small size.

In particular, MySQL's fast read performance (especially when used with a small number of users), host name, subnet- or user name-based security layer, and tight integration with Perl and PHP make it a perfect fit for Web use. For example, Slashdot.org is run off a MySQL database.

However, PC Week Labs cautions that MySQL shouldn't be compared with higher-end databases, such as InterBase or PostgreSQL (see Tech Analysis). It's a fundamentally different product with different design goals.

MySQL is a database built for blasting such simple static data as user account information onto Web pages as fast as disk and CPU speeds will allow. It's not designed to do—nor should it be used for—financial transactions, inventory management or other business-critical tasks. The trade-off that MySQL, along with similar Indexed Sequential Access Method databases, including Microsoft Corp.'s Visual FoxPro and Corel Corp.'s Paradox, makes is to give up the defining characteristic of a high-end SQL database—transactions and a transaction log—to gain simplicity and speed.

Transaction support ensures that database operations are atomic, consistent, independent and durable (ACID for short), thus guaranteeing that a group database's changes happen correctly and that the database can properly survive disk or power failures. No business should put critical internal or customer data into any database that doesn't provide ACID operations.

MySQL offers feast, famine

MySQL pros:
Very fast operation for read-heavy or low-user-load applications

Flexible security system

Strong connectivity to dynamic Web publishing systems

MySQL cons:
No transaction support

Table locking system behaves poorly when there are many competing users

Not SQL-92 compliant

MySQL's multiuser support is also quite poor—it can only issue table-level locks. Any database writer locks the entire table, making all readers wait until the write is finished. This can be a performance killer, and MySQL developers will need to write SQL very carefully to avoid this situation. (In a special case, MySQL can allow simultaneous inserts along with reads, as long as inserts happen only at the end of the file—that is, only as long as there are no empty slots from deleted records.)

Just using table locks when there is no lock contention is a real speed win—the fewer locks there are, the less processing the lock manager has to do. In situations such as Web publishing, where there is very little lock contention, this approach really pays off. Generally, however, we believe that absolute performance matters less than predictable performance, which more granular locking—say, page or row-level—provides.

MySQL lacks some SQL language features, such as subselects and views, as well as server-side cursors and stored procedures. As a result, we couldn't run the same benchmark code we used with InterBase and PostgreSQL with MySQL.

We did run just an online transaction processing single-read test with a single user. MySQL really smoked, clocking 649 transactions per second, a result that's about four times faster than InterBase's throughput and more than 10 times faster than PostgreSQL's throughput at the same user load and workload. We plan to rework the benchmark code to avoid MySQL's areas of SQL incompatibility to do more comprehensive multiuser benchmarking of MySQL later this year.

—T.D.

Check prices: T.c.X. Data KonsultAB MySQL
Check prices: All Servers

Back to Start


 
Top Stories
AT&T, BT, Microsoft team on wireless

L&H swallows up major rival

Benhamou bullish on e-business

About those Microsoft 'concessions'

Intel set to unleash new Celerons

Instant messaging goes corporate

AMD aims at Intel with 'Spitfire'

E-mail this story!
Printer Friendly
Company Info
Enter company

Enter ticker(s)

Servers on ZDNet Enterprise






PC WEEK INBOX
Get the top PC Week headlines by e-mail every day.
It's free!


Text HTML










 Sponsored Links
Travel  Receive Free Luggage for Trying Travelers Advantage
SpotOn  Play and record the Web like a VCR! FREE download!
Whitepaper  Free from Delano-building customer relationships online
Apply Now!  As Low as 2.9% Intro APR, No Wait!
Books  Win FREE movie tickets!
GREAT PCs  Great PCs. TurboTax FREE. Click here.
 
 ZDNet Featured Links
Free PC!  Vote for your favorite download and you could win a free PC!
NEW!  Shop the Outlet Store for best buys on computer products
Anti-Virus  Downloads, tips and advice to keep your PC safe!
 
 Magazine Offers
Free Trial  Be the first to see where e-business is headed!
 

Tech Jobs |  Digital Coupons |  Free E-mail |  Newsletters |  Updates |  MyZDNet |  Alerts |  Rewards |  Join ZDNet |  Members |  ZDNet eCircles
Feedback |  Your Privacy |  Service Terms |  Ad Info
Copyright © 2000 ZD Inc. All rights reserved. ZDNet and the ZDNet logo are trademarks of ZD Inc.