![]() |
|
| W O R K S H O P | |
Database Engines: Who's the Fairest of Them All? October 30, 2000 By Ahmad Abualsamid You have the next great Web idea, and you can't wait to get it online. All you need is software to run it, along with the heart and soul of any Web site: a good database engine. How do you go about choosing such a critical piece of the puzzle? As it turns out, this is not a trivial question. The Major Players Oracle Corp. claims its products run the majority of big e-commerce sites. And Microsoft is making a big push with its MS SQL Server 7.0, which runs an ever-increasing number of Web sites. Meanwhile, and without much fanfare, a growing number of small and medium-sized installations are using two publicly available open-source databases: MySQL, which just went GPL (GNU Public License), and PostgreSQL, which comes bundled with many Linux distributions. Other alternatives exist, but some of these have found a niche in only one market segment (for example, Sybase databases have a strong foothold in the financial sector) or have a smaller number of big clients (Informix databases). IBM's DB2 has a good market share and runs on many platforms, but it is closely tied in many cases to IBM hardware or consulting services. There are also other open-source alternatives available, but they are not as popular or as well-supported as MySQL or PostgreSQL. Factors other than brand add to the equation. These considerations include cost, platform of choice in terms of hardware and software, desired performance and reliability, and the nature of the application and the type of services needed from the database engine. You could approach the matter by deciding on the database engine first. That choice would then determine the platform, software development and added costs. Or you could choose a database that is optimized for your existing systems. Whichever approach you take, it is important to look at all the considerations before making your decision. The Real Cost Cost is the most deceiving element of the equation. Look at the sticker price of an Oracle database, and you'll see that the company's licenses for a decent Web site cost upward of tens of thousands of dollars. And that is only the beginning. Oracle's products are among the most capable, and thus they are also the most complex to administer and code. Finding competent people to run the system can be a challenge. When you start searching for a staff to run your Oracle database, you'll realize that you can't limit your search to general Oracle experts: You need to look for specific skill sets. Don't be surprised if you find a candidate who knows everything about Oracle Forms and Reports but has no idea how to create a new database or back up an existing one, or if you find a database administrator who is an expert on maintaining an Oracle database engine but has no idea how to reboot the server. To top it all off, any Oracle expertise commands a pretty penny. When budgeting for your Oracle installation, make sure you factor in the costs of the license, support from Oracle, and the database administrator's and the Oracle SQL programmer's compensation. And you may also have to consider purchasing software for another platform. Although Oracle supports a wide variety of platforms, most people are inclined to run the solutions on proven Unix platforms, such as on Hewlett-Packard Co.'s HP-UX, IBM's AIX or Sun Microsystems' Solaris (more about this later). Setting up one of those servers has its own costs in terms of both hardware and software. Taking direct aim at Oracle, Microsoft had a big, splashy introduction for MS SQL Server 7.0--and the company's strategy is now starting to pay off. A SQL Server 7.0 license costs thousands of dollars, but that is just a fraction of the cost of a comparable Oracle license. The real cost savings, though, come in terms of administration. MS SQL Server 7.0 runs only on Win32 platforms (namely, Windows NT and Windows 2000 Server). This "limitation" made it much easier for Microsoft to develop a streamlined installation and administration tool. MS SQL Server 7.0's Enterprise Manager, a Microsoft Management Console (MMC) snap-in, lets an administrator perform all database tasks with simple mouse clicks. MS SQL Server 7.0 is the easiest to manage by far among database engines. This ease of use lets Windows NT administrators--rather than database administrators--manage SQL Server installations. Some companies even have Visual Studio programmers taking on the SQL Server administration tasks. A help-wanted ad for an MS SQL Server administrator is rare indeed; instead, you'll find requests for Windows NT administrators or for programmers who can manage SQL Server. This simplicity of management dramatically reduces the total cost of ownership. Most inexpensive are the "free" players. PostgreSQL is copyrighted by the University of California but can be used for pretty much any purpose. You can download it for free (www.PostgreSQL.org) or buy a CD for a nominal cost. MySQL is also available via a free download for Unix platforms (www.mysql.com). You will need to purchase the license for Windows NT, but it is less than $200 (you'll have to pay in euros). The administration costs for both are low--your Linux administrator can take care of installation and administration. The only tricky part in the installation may be setting up security. Both packages have reams of documentation and a ton of support resources on the Internet. Both also have commercial companies providing robust support through annual subscription packages. The costs are next to nothing compared with those associated with Oracle's and Microsoft's databases. The two packages are not completely free, of course, but in the grand scheme of things their costs should be your least and last worry. Choosing a Platform All the database engines discussed here support Windows NT. However, the performance of both PostgreSQL and MySQL under Windows NT is questionable at best, and their Windows NT releases always lag the corresponding Unix releases. If you want to use one of these database engines, stick with a Linux platform. You will find better distributions and better support for the Linux versions than anything else out there. Oracle supports Windows NT very well, but almost all big commercial sites running Oracle run on some flavor of Unix, and that should signal you to do the same. Although Oracle is trying to make a push in the Linux market, most Linux projects end up being done on the open-source PostgreSQL or MySQL. With MS SQL Server, you have no options; it's Win32 or nothing. MS SQL Server integrates extremely well with Windows NT or Windows 2000; it's stable and performs well. However, Windows NT is not the most stable network operating system, and it certainly falls short of the reliability of comparable Unix servers. Before you scratch Windows NT off your list, though, think about your real need for reliability. Consider the downtime caused by code bugs and crashes; network, route and proxy server problems; dial-up problems; hacker attacks; and network congestion, and you may realize that difficulties with Windows NT may add only marginally to your downtime. Keeping a close watch on your server and doing a maintenance reboot once every couple of weeks at 4 a.m. on a weekend can reduce your downtime considerably.
| |
|
PAGE: 1 I 2 I NEXT PAGE |
|












