Database Architecture

Centralized database system (CDB)
  • Data is stored in one location, this location is most often a central computer or database system.
  • System may contain several processors
  • Example: Cloud computing/Data farms/Data centres

Pros:

  • Data integrity is maximized and data redundancy is minimized. This aids in the maintaining of data as accurate and as consistent as possible and enhances data reliability.
  • Data kept in the same location is easier to be changed, re-organized, mirrored, or analyzed.

Cons:

  • Highly dependent on network connectivity, the slower the internet connection is , the longer the database access time will be
  • Bottlenecks can occur as a result of high traffic
  • No data redundancy makes it very hard to retrieve the data that is unexpectedly lost
Distributed database system (DBAs):
  • Data is distributed across several nodes
  • It may be stored in multiple computers, located in the same physical location; or may be dispersed over a network of interconnected computers.
  • The nodes are connected by communication network
  • System provides necessary concurrency, recovery and transaction processing

Pros:

  • Increase the reliability and availability
  • Increase the scalability
  • Protection of valuable data
  • Distributed query processing cam improved performance

Cons:

  • DBAs may have to do extra work to ensure that the distributed mature of the system is transparent
  • Difficult to maintain integrity, which require too much of the network's resources to be feasible
World Wide Web
  • Data is stored in many locations
  • Several owners of data and therefore no certainly of availability or consistency of data
  • No standards have been developed except in case of XML/http and some protocols for accessing data in WWW
  • Convenient to use
  • Notions of transactions is much more difficult to enforce
P2P Database
  • Data and Processing are shared among a group of computer systems which may be geographically separated
  • Computer nodes can join and leave the network at will, thus need duplication of data for availability and reliability
  • Reliability and security of such systems can be worse than grid database
Grid Computing
  • Data and Processing are shared among a group of computer systems which may be geographically separated
  • The grid database system is designed for particular purpose
  • Administration of such systems are done locally by each owner of the system
  • Reliability and security of such system are not well-developed or studied.

Cluster, Grid and Cloud Computing

  • Cluster differs from Cloud and Grid in that a cluster is a group of computers connected by a local area network (LAN), whereas cloud and grid are more wide scale and can be geographically distributed. Another way to put it is to say that a cluster is tightly coupled, whereas a Grid or a cloud is loosely coupled.
  • Clusters are made up of machines with similar hardware, whereas clouds and grids are made up of machines with possibly very different hardware configurations.
  • Cloud services offered in several forms:
    • IaaS Infrastructure as a service(provide virtual machines)
    • PaaS Platform as a service(provide environment like Linux)
    • SaaS Software as a service (Specific application like RDB)
      the datacenter hardware and software is what we call a cloud
  • Cloud computing is a centralized model whereas grid computing is a decentralized model where the computation could occur over many administrative domains.
  • A grid is a collection of computers which is owned by multiple parties in multiple locations and connected together so that users can share the combined power of resources. Whereas a cloud is a collection of computers usually owned by a single party.

Examples of Clouds: Amazon Web Services (AWS), Google App Engine.

Examples of Grids: FutureGrid.

Examples of cloud computing services: Dropbox, Gmail, Facebook, Youtube, RapidShare

你可能感兴趣的:(Database Architecture)