CMP -- United Business Media

Intelligent Enterprise

Better Insight for Business Decisions

UBM
Intelligent Enterprise - Better Insight for Business Decisions
Part of the TechWeb Network
Intelligent Enterprise
search Intelligent Enterprise





November 12, 2001

Enterprise Foundation Part II

If a database is going to shine, it's going to do it in an e-business application. Of Oracle9i and IBM UDB, which shines more brilliantly? (And how luminous is Microsoft SQL Server?)

By Tim Quinlan

Databases are the most important technical components contributing to the success of e-business implementations. Strong words, yes, but let's consider what e-business is.

First, e-business encompasses e-commerce - in other words, those applications that external customers, suppliers, and partners use. That part is obvious, but e-business is more. It also includes the internal, background processes that make this external interaction possible. These processes include electronic data interchange (EDI), enterprise resource planning, e-procurement, supply-chain management, enterprise application integration, customer relationship management, and portals.

There is also a tight integration developing between e-business and BI, such as in e-commerce analytics. Operational and BI data can affect one another, and so portions of BI are beginning to fall under the umbrella of e-business. In other words, almost all your critical data falls under this e-business umbrella and must be performing extremely well almost all the time.

Let's look at the most important characteristics of e-business systems and see how Oracle9i and IBM DB2 Universal Database (UDB) deliver them. The e-business features are too numerous to mention here, so I will discuss only the most significant ones. Also, many of these items were already discussed in Part I of this article in the October 24 issue.

Performance and Scalability: RAC vs. EEE

Scalability is everyone's favorite topic because it is absolutely critical for e-business. Inability to scale up means losing customers. Some of the features that may provide the largest performance and scalability benefits are Oracle9i Real Application Clusters (RAC) and UDB Enterprise Extended Edition (EEE).

Oracle's RAC is designed to scale applications transparently using the improved full Cache Fusion architecture for cache-to-cache data shipping. This strategy reduces I/Os and makes scalability more linear than was achievable in the past. Consequently, RAC will gain wider use in online transaction processing (OLTP) systems.

EXECUTIVE SUMMARY

Tim Quinlan

This two-part series analyzes the latest releases of IBM DB2 Universal Database and Oracle9i as platforms for business-critical, data-intensive applications. In this last installment, the author evaluates the e-business capabilities of each release. On the side, the article includes an additional analysis of Microsoft SQL Server.

RAC incorporates a shared-disk architecture and software-based shared cache that interconnect via Cache Fusion. Its architecture will not inherently lend itself to linear scalability, but it may come close. And the architecture is probably transparent to application design, a large benefit. The architecture should also relieve Oracle's famous pinging problems that resulted from distributed lock management. (This improvement began in Oracle8).

UDB EEE has been providing impressive linear scalability for some time - thanks to its shared-nothing architecture. EEE has most often been used for BI systems, but has also achieved very high performance rates on production systems and in TPC-C (OLTP) and TPC-W (Web, e-commerce) performance tests. This technology has already proven its performance and linear scalability, but it requires application design to implement data-node affinity. We'll see whether Oracle's RAC can compete with this.

Some built-in Oracle trace features such as tkprof and Statspack come free with the product and are very handy. Parallel Query improvements have been implemented for internode queries on clustered or massively parallel processing hardware using RAC. Oracle has also improved its optimizer to now include CPU and memory information along with I/O costs in its estimates. UDB has superior optimization that has considered all three for some time. Another feature, the Net Search Extender introduced in UDB v.7.1, provides in-memory technology for high-speed Internet text searches with a very large number of concurrent users.

DB2 has many other improved features here such as parallel backup, recovery, load, disk I/O, referential integrity, and index checking. There are partitioning tools, task prioritization, a performance governor, asynchronous writes, sequential prefetch, index improvements, multiple buffer pools, and more. Guess what - Oracle has most of the same features. Both companies have delivered performance improvements to every aspect of each database, including Java, XML, and network performance.

With all this good news, the onus is still on Oracle to prove that Oracle9i performance has met and surpassed that of UDB.

High Availability

Both products contain major improvements. UDB now has full, cumulative, and delta backups. It also supports standby databases and high availability through architectures such as mirroring, which lets you split a mirrored copy of data and make the mirrored copy available for processing on another server. The DBMS can suspend I/O for a brief period of time to perform an online split of a mirror from the primary database. The db2inidb utility can operate on the mirrored copy. This utility has a snapshot option that performs crash recovery, providing a copy of the database for reporting and backup purposes. Db2inidb can also designate a copied database to be a standby database that is in a "roll-forward pending" state by applying the primary database logs to the standby database.

IBM has finally added dual logging to different directories. UDB supports failover with clustered servers such as AIX HACMP, Sun Solstice, and Microsoft Cluster Server. UDB now flushes logs after online backup; provides point-in-time recovery, dynamic space allocation, and parallel recovery; and supports high-availability hardware architectures.

Oracle also provides full and incremental backups as well as standby databases (since Oracle8i). Oracle's Data Guard provides a set of features that manage the standby database as it transports logs from the primary to standby site and applies them at the standby site either immediately or with a built-in time delay. Data Guard can assist failover from the primary to standby database in one step. It provides switchover and switchback between sites for maintenance. RAC with Cache Fusion is not just a performance option. It delivers clustered architectures and quick failover on Unix as well as four-node failover for Windows with Oracle failsafe for NT and 2000 clusters. The DBA can implement fast-start, time-based recovery by setting an upper time limit. After a crash, the database will restart within the defined time limit. Fast instance freeze and resume is a facility that allows DBAs to get diagnostics when a problem occurs and resume the system.

Oracle9i has a retention policy for logs and self-describing backup files. Flashback query lets users select data from a point in time before a user error occurred, and Logminer log analysis lets you determine row change history from the redo log. Resumable statements free you to suspend problem operations so you can fix the error and resume the operation.

A lot of effort has been put into achieving high availability. Oracle has led the standby database feature on the Unix and Intel platforms, but the reality is that IBM had a similar technology set with its OS/390 Remote Recovery Data Facility, which applied logs continuously at a disaster resource planning site since the early '90s. This is one example of where IBM's competitors exploited its innovation before IBM itself did.

Security

Strong security features have been built into the databases. Encryption and decryption of string data is possible in both databases, which is useful for sensitive data such as credit card numbers. One interesting feature in Oracle is the Virtual Private Database and Label security, which helps both BI and Web-based systems provide a higher degree of data-level security using labels within a single application. Notwithstanding this advantage, both databases deliver strong internal and Internet security.

System Management

UDB offers Control Center, which incorporates many of the tools you need to manage the database. Many of the features are straightforward, such as a Command Center - which lets you build SQL statements and display their results as well as view and change database objects. Script Center is for creating, scheduling, and managing scripts. A journal facility keeps track of job information, error, and warning messages in addition to keeping track of scripts run, or sends messages such as alerts to the DBA to help manage jobs. There's an alert center to view alerts pertaining to system thresholds. You'll also find a stored procedure builder. Other worthwhile tools are Visual Explain and Performance Monitor. Overall, this is a worthwhile set of offerings.

Oracle has Oracle Enterprise Manager (OEM), which also provides performance, diagnostic, tuning, and change management. Database object (schema) viewing and changes, alert file viewing, and script scheduling are performed through other mechanisms. There is a new OEM graphical SQL explain plan tool that is similar to Visual Explain.







IE Weekly Newsletter
Subscribe to the newsletter
    Email Address