Browse Prior Art Database

Hybrid Buffer Coherency Control Scheme

IP.com Disclosure Number: IPCOM000121676D
Original Publication Date: 1991-Sep-01
Included in the Prior Art Database: 2005-Apr-03
Document File: 3 page(s) / 155K

Publishing Venue

IBM

Related People

Dan, A: AUTHOR [+2]

Abstract

A hybrid buffer coherency scheme is proposed to maintain buffer coherency in a multi-system data-sharing environment. It uses a combination of the detection approach used by the check-on-access scheme and the notification approach used by the selective notification scheme to achieve not only low overhead but also high buffer hit. The data sharing system consists of a number of loosely coupled nodes sharing a common database at the disk level. Let a granule be the unit of transfer between disk and buffer, i.e., a block. Standard two phase locking is used for concurrency control where a centralized lock manager is assumed to be available. Each node maintains a local buffer and caches as part of the database in this buffer to reduce the transaction response time.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 38% of the total text.

Hybrid Buffer Coherency Control Scheme

      A hybrid buffer coherency scheme is proposed to maintain
buffer coherency in a multi-system data-sharing environment. It uses
a combination of the detection approach used by the check-on-access
scheme and the notification approach used by the selective
notification scheme to achieve not only low overhead but also high
buffer hit.  The data sharing system consists of a number of loosely
coupled nodes sharing a common database at the disk level.  Let a
granule be the unit of transfer between disk and buffer, i.e., a
block. Standard two phase locking is used for concurrency control
where a centralized lock manager is assumed to be available. Each
node maintains a local buffer and caches as part of the database in
this buffer to reduce the transaction response time.  Hence, copies
of the same granule may be present at more than one node. Coherency
control is needed to prevent obsolete granules from getting accessed.
To devise a coherency control policy, we are faced with the issues of
determining how and when to identify the invalidated granules. There
are two fundamentally different approaches to do this.  One is the
notification-oriented approach and the other is the
detection-oriented approach.  Generally speaking, immediate
notification on granule obsolescence causes CPU overhead, and later
detection reduces buffer hit. In this disclosure, we propose a new
approach to coherency control which would provide both low overhead
and good buffer hit.

      The proposed scheme, referred to as the hybrid buffer coherency
scheme, uses a combination of the detection approach used by the
check- on-access scheme and the notification approach used by the
selective notification scheme.  The new scheme provides a means for
the detection and notification mechanisms to work together in a
synergistic way that eliminates any potential race conditions between
the two mechanisms.

      An integrated (CC) manager/controller is designed to
efficiently implement the hybrid scheme.  It provides not only the
traditional concurrency control service, but also the buffer
coherency function.  The locking function is similar to the
traditional lock manager; hence, we will concentrate on the buffer
coherency function.  The lock table entry maintained by the CC
manager will contain an additional field consisting of a set of valid
bits  to indicate whether each node has a valid copy.  (This is
similar to the check-on-access scheme.)  Furthermore, the integrated
CC manager maintains an invalid granule list for each node to
indicate the granules that have been recently updated by the remote
nodes and, hence, need to be invalidated from its local buffer.  Each
time a granule is accessed, a lock request combined with an
additional buffer validity check is made to the integrated CC
manager.  If the valid bit entry for that granule of the requesting
node is off, the buffer invalid status is returned when the l...