PARALLEL DATABASE:

  • Parallel processing refers to  a large class of techniques that are used to provide simultaneous data processing tasks for the purpose of increasing the computational speed of a computer system.
  • When a database uses the concept of parallel processing for the execution of transactions inside it,then such a database is called a parallel database.
  • A parallel database system seeks to improve performance through parallelization of various operations, such as loading data, building indexes and evaluating queries.
  • Parallel databases improve processing and  input/output speeds by using multiple CPUs and disks in parallel.
  • A parallel database system acts as a database server for multiple application servers in client server organization in computer networks.
  • The following are the advantages of parallel database systems.
    • High Performance
    • High Stability
    • Extensibility
The general architecture of a parallel database system is shown and the various components are:
  1. Session Manager: It performs the connections and disconnections between the client processes and two other subsystems, thereby playing the role of a transaction monitor providing support for client interactions with the server.
  2. Request Manager: It receives client requests related to query compilation and execution. It can access the database directory which holds all meta information about data and programs. The directory itself should be managed as a database in the server.
  3. Data Manager: The data Manager provides all the low level functions needed to run compiled queries in parallel.

PARALLEL DATABASE ARCHITECTURES :

1. Shared memory architecture

    • Shared memory is a tightly coupled architecture in which multiple processors within a single system share the system memory.
    • The transfer of data and signals takes place through a fast interconnection structure such as a high speed bus or a crossbar switch.
    • Data in shared memory can be accessed by any processor connected to the network, without being moved with software.
    • A processor can send messages to other processors much faster by using memory writes.
    • Adding more processors doesn't seem to work well after a point since the processors will send most of their time waiting for their turn on the bus to access memory.
    • This architecture provides high-speed data access for a limited number of processors, but it is not scalable beyond about 64 processors when the interconnection network becomes a bottleneck.
    • The main advantages of shared memory architecture include simplicity and load balancing.
    • Disadvantages include cost, limited extensibility and low availability.

2. Shared disk architecture


    • Shared Disk is a loosely coupled architecture where each node has its own main memory, but all nodes share mass storage, usually a storage area network.
    • They are optimized for applications that are inherently centralized and require high availability and performance.
    • Each processor can access all disks through the interconnect, but exclusive access its own private memory as shown in figure. Shared disk systems are sometimes referred to as a cluster.
    • If a processor or its memory fails, the other processor can take over its tasks thus providing a high degree of fault tolerance.
    • The various advantages include extensibility, load balancing, availability and easy migration from uni-processor systems.
    • Shared disk suffers from higher complexity and potential performance problems.

3. Shared Nothing Architecture:


    • Shared nothing architecture is a multiple processor architecture in which each processor is a part of a complete system and has exclusive access to its main memory and disk units.
    • Each node can be then viewed as a local site with its own database and software in a distributed database system. The database is partitioned among all the disks on each system associated with the database, and data is transparently available to users on all systems.

Comments

Popular posts from this blog

Pentium microprocessors

Multilevel Organization of Cache Memory