DB2's (perceived) short comings
Posted in 2004
Alexey Sonkin wrote:
> First, some more facts about DB2:
>
> 1. In DB2, the location of table indexes MUST be specified
> at table creation. It's impossible to 'create index in....'.
> Very unflexible
Do you need this flexibility? "Native" DB2 customers in my experience do
not have an issue with this design.
> 2. DB2 installes into a fixed location on a hard drive.
> This directory can't be 're-linked', because DB2 installer
> ceated a lot of links to that location.
> This has a severe effect on DB2 upgrades.
> To switch the system from one DB2 version to another,
> it is necessary first to stop DB2, then completely remove old
> software, install new software into the same location
> and only then start DB2.
> It takes few seconds to one minute with Informix to upgrade
> from one version to another (in terms of system downtime),
> and takes up to 30 minutes to do it with DB2.
> Is DB2 a database for 24x7 systems?
DB2 V8 allows both alternate versions as well as alternate fixpacks on
the same machine. You can install a new version on the side and simply
flick back and forth.
> 3. Cross-database queries within a single DB2 instance do not perform
> as though they are local queries (like in Informix).
> This will be a shock to those why normally have different
> databases for loosely related applications with Informix and
> makes occasional inter-database queries...
DB2 uses different logical groupings.
In DB2 databases tend to be logically partitioned into different
schemata. And you can of course cross join these schemata which,
incidently have very little to do with the userid (unlike in IDS or SQL
Server).
Databases on DB2 are truly self-contained. They do not even share the
dbschema definitions and most configuration parameters including access
control.
An app written for DB2 can well coexist on the same DB as another app,
and often Informix IDS database (as well as SQL Server Databases) get
mapped into schemata in DB2.
In fact, I believe DB2 is fairly close to Oracle while IDS seems to be
closer to MS SQL Server with that respect.
If, for some reason different databases are indeed required nicknames
can be created which will make remote tables look local.
The technology for these cross DB joins is very advanced an you will be
surpised how well it works.
This is a one time setup.
I won't comment the other points, since I already did.
It seems that you have been going through an IDS to DB2 migration or
have at least investigated it.
Since I spend a good deal of time on this problem I'd be interested to
hear from you off-line, assuming that exchange can be constructive and
objective :-)
Cheers
Serge
--
Serge Rielau
DB2 SQL Compiler Development
IBM Toronto Lab