The document discusses various database system architectures, including centralized systems, client-server architecture, parallel database architectures, distributed systems, and cloud computing. It highlights the characteristics, benefits, and trade-offs of each architecture, such as performance improvements, data sharing, and system availability. Additionally, it addresses the advantages and risks associated with cloud computing, emphasizing cost reduction, scalability, and potential dependencies on service providers.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
2 views23 pages
Dbms Architecture C
The document discusses various database system architectures, including centralized systems, client-server architecture, parallel database architectures, distributed systems, and cloud computing. It highlights the characteristics, benefits, and trade-offs of each architecture, such as performance improvements, data sharing, and system availability. Additionally, it addresses the advantages and risks associated with cloud computing, emphasizing cost reduction, scalability, and potential dependencies on service providers.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 23
Database System Architectures
Is the underlying design and presentation of
the database and the computer systems Centralized Systems • Run on a single computer system and bound to similar geographical location. • It can be a Single-user system (e.g., personal computer or workstation): desk-top unit, single user, usually has only one CPU and one or two hard disks; that support only one user. or • general-purpose computer system: one to a few CPUs and a number of device such as monitors and printers that are connected through a common bus that provides access to shared data. Client server architecture
The database structure is designed in a
way that distinguishes between the provider of resources (server) and the service requesters (client). Summary of client server functions Parallel Database Architectures Is a collection of database and computer systems that cooperate and communicate to improve performance in a complex database systems. • It can be Shared memory, Shared disk, Shared nothing or Hierarchical architectures Parallel Database Architectures • Shared memory -- processors share a common memory • Shared disk -- processors share a common disk • Shared nothing -- processors share neither a common memory nor common disk • Hierarchical -- hybrid of the above architectures Parallel Database Architectures Shared Memory • Processors and disks have access to a common memory, typically via a bus or through an interconnection network. • Extremely efficient communication between processors — data in shared memory can be accessed by any processor Shared Disk • All processors can directly access all disks via an interconnection network, but the processors have private memories. – The memory bus is not a bottleneck – Architecture provides a degree of fault- tolerance — if a processor fails, the other processors can take over its tasks since the database is resident on disks that are accessible from all processors. Shared Nothing • Node consists of a processor, memory, and one or more disks. Processors at one node communicate with another processor at another node using an interconnection network. A node functions as the server for the data on the disk or disks the node owns. • Data accessed from local disks (and local memory accesses) do not pass through interconnection network, thereby minimizing the interference of resource sharing. • Shared-nothing multiprocessors can be scaled up to thousands of processors without interference. • Main drawback: cost of communication and non-local disk access; sending data involves software interaction at both ends. Hierarchical • Combines characteristics of shared-memory, shared-disk, and shared-nothing architectures. • Top level is a shared-nothing architecture – nodes connected by an interconnection network, and do not share disks or memory with each other. • Each node of the system could be a shared-memory system with a few processors. • Alternatively, each node could be a shared-disk system, and each of the systems sharing a set of disks could be a shared-memory system. • Reduce the complexity of programming such systems by distributed virtual-memory architectures – Also called non-uniform memory architecture (NUMA) Distributed Systems • Data spread over multiple machines (also referred to as sites or nodes). • Network interconnects the machines • Data shared by users on multiple machines Distributed Databases • Homogeneous distributed databases – Same software/schema on all sites, data may be partitioned among sites – Goal: provide a view of a single database, hiding details of distribution • Heterogeneous distributed databases – Different software/schema on different sites – Goal: integrate existing databases to provide useful functionality • Differentiate between local and global transactions – A local transaction accesses data in the single site at which the transaction was initiated. – A global transaction either accesses data in a site different from the one at which the transaction was initiated or accesses data in several different sites. Trade-offs in Distributed Systems • Sharing data – users at one site able to access the data residing at some other sites. • Autonomy – each site is able to retain a degree of control over data stored locally. • Higher system availability through redundancy — data can be replicated at remote sites, and system can function even if a site fails. • Disadvantage: added complexity required to ensure proper coordination among sites. – Software development cost. – Greater potential for bugs. Web service based Architecture Web service is a software system designed to support web based resources interactions through a programmatic interface across a network.
Allows the developers to add the Web service to a Web page
(or an executable program) to offer specific functionality to users Cloud Computing Defined as “A model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g. networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.” Cloud computing service models Benefits of cloud computing
• Cost-Reduction: Avoid up-front capital expenditure.
• Scalability/Agility: Organisations set up resources on an as-needs basis.
• Improved Security: Providers can devote expertise
• resources to security; not affordable by customer.
• Improved Reliability: Providers can devote expertise & resources on
reliability of systems; not affordable by customer. • Access to new technologies: Through use of provider’s systems, customers may access latest technology. • Faster development: Provider’s platforms can provide many of the core services to accelerate development cycle.
Large scale prototyping/load testing: Providers have
the resources to enable this.
More flexible working practices: Staff can access
files using mobile devices.
Increased competitiveness: Allows organizations to
focus on their core competencies rather than their IT infrastructures. Risks of cloud computing Network Dependency: Power outages, bandwidth issues and service interruptions.
System Dependency: Customer’s dependency on availability
and reliability of provider’s systems.
Cloud Provider Dependency: Provider could became insolvent
or acquired by competitor, resulting in the service suddenly terminating. Lack of control: Customers unable to deploy technical or organizational measures to safeguard the data. May result in reduced availability, integrity, confidentiality, and isolation.