4. CAPS™ layer 0: the database
CAPS™ "Layer 0", outside of CAPS™ proper, can be any
enterprise-level RDBMS (Relational Database Management
System). The RDBMS's functionality must include such
features as transactions, views, outer joins, and the
like. Layer 0 is also informally known as the "database
layer".
The development of CAPS™ has taken place using PostgreSQL
(with some specific attention also given to Oracle),
without exploiting special, non-portable features found
in PostgreSQL only. Special features and quirks specific
to each given RDBMS can be encapsulated into a thin, well
specified "portability layer". As a consequence, future
addition of other RDBMS engines of comparable
functionality, if and when AB Strakt's partners and
customers require it, will be feasible.
However, please note that CAPS™ defines its own DB schema.
Integrating CAPS™ with other existing applications that
use the same DB engine, but with their own schemas, is a
task similar to that of other integrations between CAPS™
and existing applications. There is no way to make CAPS™
just use a pre-existing relational DB schema. Therefore,
normally, no special advantage is gained by having CAPS™
Layer 0 share a particular DB engine with other
applications. Many of the beneficial system
characteristics we shall examine in the following depend
on the crucial design choice of having CAPS™ define and
use its own DB schema.
|
|