12 Data Integrity with DB2 for z/OS
1.1.8 Data sharing integrity
Data sharing delivers availability, workload balancing, and flexible growth benefits, and,
through use of the coupling facility (CF), can also avoid the high overheads of frequent disk
I/O and intersystem message passing. Both interquery and intraquery parallelism also use
DB2 has been extended from its single-system initial structure to implement data sharing
using the CF for global locking and intersystem buffer coherency. Use of the CF is the key
factor, allowing multisystem data sharing with good performance characteristics. In addition,
several optimizations have further reduced the overhead for data sharing, global locking, and
buffer coherency. Most recent are the CF request batching and Locking protocol level 2
introduced by DB2 V8 (see Chapter 8 of the DB2 UDB for z/OS Version 8 Performance
Topic s, SG24-6465).
DB2's implementation of retained locks, recovery logging, and CF failure recovery ensures
that data integrity is maintained across the failure of any hardware or software element in the
sysplex. DB2's robust design for data sharing builds on the strengths of the S/390 Parallel
Sysplex to provide DB2 users with unprecedented levels of capacity, availability, and
1.1.9 Global resource serialization
In a multitasking, multiprocessing environment, resource serialization is the technique used to
coordinate access to resources that are used by more than one program. When multiple
users share data, a way to control access to that data is necessary. Users, who update data,
for example, need exclusive access to that data. If several users try to update the same data
at the same time, the result can be data that is incorrect or corrupted. In contrast, users, who
only read data, can safely access the same data at the same time.
Global resource serialization (GRS) offers the control needed to ensure the integrity of
resources in a multisystem environment. Combining the systems that access shared
resources into a global resource serialization complex enables you to serialize resources
across multiple systems. In a global resource serialization complex, programs can serialize
access to data sets on shared disk volumes at the data set level rather than at the disk
volume level. A program on one system can access one data set on a shared volume while
other programs on any system can access other data sets on the volume. Because GRS
enables jobs to serialize resources at the data set level, it can reduce contention for these
resources and minimize the chance of an interlock occurring between systems.
You can request access to a resource as exclusive or shared. When GRS grants shared
access to a resource, no exclusive users are granted access to the resource simultaneously.
Likewise, when GRS grants exclusive access to a resource, all other requestors for the
resource wait until the exclusive requestor frees the resource.
1.1.10 DB2 controls
DB2 has strong and granular access control. It controls access to its objects by a set of
privileges. Default access is none. Until access is granted, nothing can be accessed. This is
discretionary access control (DAC).
DB2 has extensive auditing features. For example, you can answer questions such as “Who is
privileged to access what objects?” and “Who has actually accessed the data?”.
The catalog tables describe the DB2 objects, such as tables, views, table spaces, packages,
and plans. Other catalog tables hold records of every granted privilege or authority. Every