Transaction Introduction to ARIES Introduction to ARIES ARIES

  • Slides: 21
Download presentation
Transaction

Transaction

Introduction to ARIES

Introduction to ARIES

Introduction to ARIES • ARIES (Algorithm for Recovery and Isolation Exploiting Semantics) • ARIES

Introduction to ARIES • ARIES (Algorithm for Recovery and Isolation Exploiting Semantics) • ARIES is a recovery algorithm • When the recovery manager is invoked after a crash, restart proceeds in three phases. • Analysis phase. Determines the earliest log record from which the next pass must start. • It also scans the log forward from the checkpoint record to construct a snapshot of what the system looked like at the instant of the crash. • Redo phase. it repeats all actions, starting from an appropriate point in the log, and restores the database state to what it was at the time of the crash. • Undo phase. it undoes the actions of transactions that did not commit, so that the database reflects only the actions of committed transactions.

Introduction to ARIES • In addition to the log, the following two tables contain

Introduction to ARIES • In addition to the log, the following two tables contain important recovery related information: • Transaction Table: • Dirty page table: • Transaction Table: This table contains one entry for each active transaction. • 'The entry contains the transaction id, the status, and a field called last. LSN, which is the LSN of the most recent log record for this transaction. • The status of a transaction can be that it is in progress, or aborted • Dirty page table: This table contains one entry for each dirty page in the buffer pool, that is, each page with changes not yet reflected on disk. • The entry contains a field rec LSN, which is the LSN of the first log record that caused the page to become dirty.

Introduction to ARIES • During normal operation, these are maintained by the transaction manager

Introduction to ARIES • During normal operation, these are maintained by the transaction manager and the buffer manager, respectively, and during restart after a crash, these tables are reconstructed in the Analysis phase of restart.

Distributed Database System

Distributed Database System

Distributed Database System • A distributed database (DDB) is a collection of multiple, logically

Distributed Database System • A distributed database (DDB) is a collection of multiple, logically interrelated databases distributed over a computer network. • A distributed database management system (D– DBMS) is the software that manages the DDB and provides an access mechanism that makes this distribution transparent to the users.

Distributed Database System • Implicit assumptions • – Data stored at a number of

Distributed Database System • Implicit assumptions • – Data stored at a number of sites each site logically consists of a single processor • – Processors at different sites are interconnected by a computer network • – DDBMS is a collections of DBMSs not a collection of files (not a remote file system)

Distributed Database System

Distributed Database System

Distributed Database System • • • Advantages: • Higher reliability • Improved performance •

Distributed Database System • • • Advantages: • Higher reliability • Improved performance • Easier system expansion • Transparency of distributed and replicated data

Distributed Database System Advantages: Higher reliability • Replication of components • No single points

Distributed Database System Advantages: Higher reliability • Replication of components • No single points of failure • e. g. , a broken communication link or processing element does not bring down the entire system • • Distributed transaction processing guarantees the consistency of the database and concurrency • • •

Distributed Database System • Advantages: • Improved performance • – Reduces remote access delays

Distributed Database System • Advantages: • Improved performance • – Reduces remote access delays • – Requires some support for fragmentation and replication • – Intra-query parallelism • Easier system expansion • • Issue is database scaling • – Network of workstations much cheaper than a single mainframe computer • • Increasing database size

Distributed Database System • Advantages: • Transparency • • Refers to the separation of

Distributed Database System • Advantages: • Transparency • • Refers to the separation of the higher-level semantics of the system from the lower-level • implementation issues • • A transparent system “hides” the implementation details from the users. • • A fully transparent DBMS provides high-level support for the development of complex applications.

Distributed Database System • Disadvantages • N/W connection problem: technical problem may be generated

Distributed Database System • Disadvantages • N/W connection problem: technical problem may be generated when we want to connect dissimilar machines • Data security problem: security problem increases when data are located at multiple sites • Data integrity problem: because date are access from many locations and perform some operations like select, update, maintaining the integrity is a big issue • Cost: large communication n/w is maintained so h/w & s/w implementation cost is high

Distributed Database System • Distributed database design • The design of a distributed database

Distributed Database System • Distributed database design • The design of a distributed database introduces 3 new cases • How to partition the database into fragments? • Which fragments to replicate? • Where to locate those fragments?

Distributed database design • Data fragmentation • It allows to break a single object

Distributed database design • Data fragmentation • It allows to break a single object into two or more segments or fragments • The object might be database or a table • Each fragment can be store at any site over a computer n/w • Data fragmentation information is stored in the distributed data catalog • Data fragmentation can be classified as • Horizontal fragmentation • Vertical fragmentation • Mixed fragmentation

Distributed database design • Data fragmentation • Horizontal fragmentation • It refers to the

Distributed database design • Data fragmentation • Horizontal fragmentation • It refers to the division of a relation into subset of tuples (rows) • Each fragments is stored at a different nodes • We can use selection capability in SQL to choose the rows in a table that we want to b returned by a query • Vertical fragmentation • It refers to division of a relation into attributes (columns) subset • Each fragments is stored at a different nodes • We can use projection capability in SQL to choose the columns in a table that we want to b returned by a query

Distributed database design • Data fragmentation • Mixed fragmentation • It refers to the

Distributed database design • Data fragmentation • Mixed fragmentation • It refers to the combination of horizontal & vertical fragmentation. That is division of a relation into subset of rows & columns • Each fragments is stored at a different nodes • + =

Distributed database design • Data Replication • Refers to the storage of data copies

Distributed database design • Data Replication • Refers to the storage of data copies at multiple sites by a computer n/w • Each copies are stored at a different nodes • Data copies can help to reduces communication response time • Suppose database F is divided into two fragments F 1 & F 2 • Within a replicated distributed database the mechanism is possible

Distributed database design • • Data Replication Fragment F 1 is stored at sites

Distributed database design • • Data Replication Fragment F 1 is stored at sites S 1 & S 3 Fragment F 2 is stored at sites S 2 & S 3 So in data replication the same copy of data is available at more than one site

Distributed database design • • Data Replication Data replication can be performed in three

Distributed database design • • Data Replication Data replication can be performed in three ways Fully replicated database: it stores multiple copies of each database fragments at multiple sites Here all database fragments are replicated Partially replicated database: it stores multiple copies of some database fragment at multiple sites Most DDMS are able to handle the partial replicated database well Unreplicated database : it stores each database fragment at a single site