Database-centric architecture

This is an old revision of this page, as edited by JCLately (talk | contribs) at 00:19, 29 December 2007 (clarify authorship of article previously published on Oracle Corporation's web site). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Database-centric architecture or data-centric architecture has several distinct meanings, generally relating to software architectures in which databases play a crucial role. Often this description is meant to contrast the design to an alternative approach. For example, the characterization of an architecture as "database-centric" may mean any combination of the following:

  • using dynamic, table-driven logic, as opposed to logic embodied in previously compiled programs. The use of table-driven logic, i.e. behavior that is heavily dictated by the contents of a database, allows programs to be simpler and more flexible. This capability is a central feature of dynamic programming languages.
  • using stored procedures that run on database servers, as opposed to greater reliance on logic running in middle-tier application servers in a multi-tier architecture. The extent to which business logic should be placed at the back-end versus another tier is a subject of ongoing debate. For example, Toon Koppelaars presents a detailed analysis of alternative Oracle-based architectures that vary in the placement of business logic, concluding that a database-centric approach has practical advantages from the standpoint of ease of development and maintainability.[1]


References

  1. "A database-centric approach to J2EE application development"
  2. "Database-Centric Grid and Cluster Computing"