NEW Win/NT RDBMS comparison matrix
Posted in 1996
I ran into a RDBMS comparison matrix recently, but it was out-of-date (last update 1993) and it's scope was too broad in some respects, too brief or narrow in others. This time around, I've decided what's really key for upsizers and downsizers is an NT-centric comparison matrix. I've also reorganized the matrix so that it made more sense. Acks & thanx goes to Dan Druker, wherever you are, for the first matrix. Love or hate MicroSoft, you have to admit that Windows/NT is positioned to play a central role in distributed IS; the big DBMS vendors know this, and now we are seeing a Windows/NT price war between all the big vendors, contending for our heart$ and mind$. So I ask you all, send in your comments on the _NEW_ Win/NT RDBMS matrix. The results will be public domain (and become part of a RDBMS FAQ?), constantly welcome to new commentary. This is _ONLY_ freeware and does not endorse one product over the other. If the feature isn't available in NT, but is available in the *ix platforms, I will provide a special flag, as well as indications of availability on other OS's (Novell NLM, Intel SCO, OpenVMS, Solaris, AIX, etc.). Conversely, with MicroSoft's SQL Server, it is implicitly understood that MicroSoft will never port any new versions of SQL Server outside of NT, not because MicroSoft wants SQL Server to be a one-trick pony, but because of an agreement with Sybase to whom MicroSoft still pays royalties. I hope we can all make this a successful and useful endeavor by putting in our collective $.02. Thanks In Advance, Lee OR=Oracle IN=Informix AI=Ask/Ingres SY=Sybase SQL/Server MI=MicroSoft SQL/Server IB=InterBase (Borland) D2=IBM DB2 OR SY MI IB D2 AI IN RECORD/TABLE LOCKING: . Row-level Y N N Y Y N Y . Page-level Y Y N N . Table-level . Database-level . Timeout on row-locks . Timeout on page-locks . Programmer may escalate locks . System doesn't escalate locks OR SY MI IB D2 AI IN TRANSACTIONS: . Shared commits . Txn timeout . Multi-table txns . Recursive txns . 2-phase distrib commit . 2-phase distrib heterogeneous commit (SEE DISTRIBUTED RDBMS) . TXN save points TRANSACTION LOGS: . Txn log . Txn log automatically scrolls records according to age . Txn log must be zapped empty . Shared log files . Multiple log files . Multiplexed log files OR SY MI IB D2 AI IN DATABASE: . Domains . Domains w/ rules . Aliases/ Synonyms . Portable to other OS . Portable to other hardware . Monolithic database file required . On-line backup . On-line recovery . Parallel backup . Parallel recovery . On-line diagnostics . Auto DB recovery (rollbacks on startup) . Auto log backup . DB mirroring . Hot standby server . Full cluster utilization . DB auditing . DBA utilities OR SY MI IB D2 AI IN TABLE: . Change table structure w/out bringing database down . Clustered tables OR SY MI IB D2 AI IN RECORDS: . Old record versions stored in Table . Deleted space reused automatically . Max record width . Max field width . Max # of records per table OR SY MI IB D2 AI IN HOST DATA MANIPULATION: . Host Procedural Language . Stored procs as 3GL (.DLL's, etc.) . Trigger order control . Trigger per SQL . Trigger per row . PRE & POST triggers . UDF's stored in DB . Stored procs in DB . Stored Proc cache . Cached Procs are shared . Stored Procs returns sets . Stored Procs returns all data types OR SY MI IB D2 AI IN SPECIAL DATA TYPES: . Null . Arrays . BLOBs . User-defined OR SY MI IB D2 AI IN INTEGRITY: . Declar. Integrity . Declar. Referent. Integrity . Cascading updates . Cascading deletes . Automatic Proc Recompilation . Unique key generator . Non-blocking sequence generator . Domain-based rules OR SY MI IB D2 AI IN READS: . Programmable read isolation levels . Dirty read mode . Versioning / no read locks OR SY MI IB D2 AI IN SQL: . SQL Level (89, Entry-level 92, etc.) . SQL Proc. Language . Recursive . Correlated sub-selects . CASE . Sub-selects in FIELD decl. . Sub-selects in WHERE . Row-count limits . Static SQL . Dynamic SQL . Outer Join (L,R,FO(Full Outer)) . Select in UPDATE . Select in DELETE . UNION . Parallelizable subqueries (same CPU) . Parallel data query (multi CPU) . Shared SQL Cache . Non-blocking queries OR SY MI IB D2 AI IN CURSORS: . ANSI Standard (89, 92, etc) . Backward scrolling cursors OR SY MI IB D2 AI IN CPU: . SMP scaling ( Y/N & # of CPU's) . Clustering / Multi-Server Arch. EVENTS: . Event Alerters . DB Events call stored proc . DB Events call 3GL . DB Events call OLE OR SY MI IB D2 AI IN TABLES: . Span logical/physical drives . On-line spanning to new drive . External/2ndary tables . 2ndary tables fully usable . 2ndary tables fully optimized OR SY MI IB D2 AI IN SPEED/PERFORMANCE: . Cost-based optimizer . Optimizer uses hardware costs . Opt. uses network costs . Opt. uses data content hueristics . Opt. estimates stats . Opt. scans ENTIRE table for stats . Opt. knows real-time load factors . Opt. moves join location . Parallel Sort . Raw I/O . Asynch I/O . Resource limiter/governor . Parallel indexing: SEE INDICES . Clustered indices: SEE INDICES OR SY MI IB D2 AI IN INDICES: . Clustered indices . Can change record clustering w/out total rebuild . Hashed . Parallel re-indexing OR SY MI IB D2 AI IN DISTRIBUTED RDBMS: . Distrib Join . Synchronous Table Replication . Async. Table Replic. . Connections to other DBs . Programmatic 2-phase commit . Transparent 2-phase commit . 2-phase commit to heterogeneous RDBMS . Remote proc calls . RPC's protected by 2-phase commit . Procedural DB gateway . SQL-baed DB gateway . Heterogeneous data support . TXNS can span multiple net protocols . ODBC support . SQL Access Group Support OR SY MI IB D2 AI IN MONITOR: . XA TP Monitor compliant . Top End TP Monitor Support OR SY MI IB D2 AI IN DATABASE SECURITY: . OS Security Integration . User Group Priveleges/Roles . Mandat