Windows 2000 Database Choices
The Windows 2000, neé NT, relational DBMS market has gotten very crowded. All the major vendors have recognized the importance of Windows 2000 as an application platform and have released products to be used with it.
The battle for the hearts and minds of Windows 2000 database developers is being fought on three fronts. First, organizations want to take advantage of the lower cost of Windows 2000 as an application platform. Second, they are scrambling to deploy decision support solutions to complement their transaction processing applications, using multidimensional databases and data warehouses to consolidate and summarize data from heterogeneous systems. Third, they are implementing either enterprise --or departmental-- packaged applications to run functions such as finance, human resources, manufacturing, marketing, sales and customer service.
As an application developer which vendor do you select? In this column and the next, I'll discuss some of the key DBMS vendors and compare their competitive differentiation.
With the release of SQL Server 7.0, Microsoft is the company everyone else has to beat. Microsoft's value proposition is that it is the optimum choice for Windows 2000. The software is easy to use, inexpensive, sufficiently scalable to meet the needs of most applications and well integrated with other Microsoft technologies. Microsoft is the major RDBMS vendor with a built-in OLAP engine. SQL Server OLAP Services is unique because it can be configured as a pure OLAP cube, a pure relational OLAP server or a hybrid mix. SQL Server also includes Data Transformation Services (DTS) and Microsoft Repository. SQL Server is closely integrated with other Microsoft software, including Microsoft Management Console (MMC), Microsoft Transaction Server and Visual Studio 6.0.
SQL Server 7.0 is an improvement over prior releases. The redesigned query processor, parallel execution plans and more sophisticated indexing enable more complex queries and larger databases. SQL Server 7.0 also supports dynamic database expansion, faster I/O and row-level locking. Cluster support, however, is limited to two nodes, which limit SQL Server 7.0's ability to meet high availability -- greater than 99.5 percent-- requirements. Additionally, a SQL Server 7.0 database can be served by only one node at a time in a cluster.
In all fairness, the number of applications that require this level of availability is low. Microsoft runs SAP R/3 internally with more than 3,000 concurrent users -- meeting the definition of enterprise computing in just about anybody's book. Thus, I think a lot of people will look at SQL Server 7.0.
Oracle obviously views Microsoft as its major competition for two reasons. The popularity of Windows 2000 is driving down database profit margins overall, and the Microsoft marketing machine is definitely aimed at Oracle. Oracle is fighting back with Oracle8i, which is being positioned as the database for the Internet. This is in stark contrast to Microsoft's marketing and positioning message, which seems to ignore the impact of the Web on applications.
Oracle is touting Oracle8i as more robust, mature, scalable and functional than SQL Server. For example, Oracle8i includes a Java Virtual Machine. Oracle8i has stronger clustering and fail-over capability than SQL Server 7.0. Oracle8i clustering, however, is a shared disk architecture that doesn't scale up as well as a shared-nothing architecture. Shared disk requires distributed lock management and cache coherence algorithms that can drag down system performance if too many users try to modify the same resource such as, a database page. Oracle8i has addressed this issue by introducing a high-speed interconnecting that sends modified data blocks between machines, reducing the need to write updates to the disk.
Oracle8i has added a number of decision support features. One is materialized views, which allow the database designer to create a dimensional structure based on a view, rather than by creating a star schema. Others include more granular partitioning than SQL Server and support for bitmap indexes. Oracle8I, however, lacks the integrated OLAP solution that Microsoft provides. Alternatively, Oracle provides the separate Express product.
Bottom line -- if you're evaluating just these two vendors, Microsoft makes it easier to build, deploy and manage an application, while Oracle has better availability. There are several other major vendors who have ported their products to Windows 2000, including IBM, Informix, Sybase, NCR and Compaq/Tandem. I'll discuss these in my next column. --Robert Craig is director, Data Warehousing and Business Intelligence Division, at Hurwitz Group Inc. (Framingham, Mass.). Contact him at firstname.lastname@example.org or via the Web at www.hurwitz.com.