Jump to content

Database-centric architecture

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Immunize (talk | contribs) at 13:21, 27 May 2010 (Reverted edits by 195.43.48.140 (talk) to last version by Mark Renier). 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. See also control tables for tables that are normally coded and embedded within programs as data structures (i.e. not compiled statements) but could equally be read in from a flat file, database or even retrieved from a spreadsheet.
  • 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]

See also

References