DB2® database data sets are
identified because of the naming conventions of the HLQs and LLQs.
Describe the masks for the data sets requiring above average performance
and availability in a FILTLIST statement. Assign them a variable
name that is tested in the ACS routine logic. Figure 1 shows
the filter list for DB2 storage
class ACS routine.
Figure 1. FILTLIST Section
for DB2 from Storage Class ACS
RoutineFILTLIST section for DB2 database data sets.
FILTLIST SPECIAL_USERS INCLUDE('SYSPROG','STGADMIN','DBA')
FILTLIST VALID_STORAGE_CLASS INCLUDE('BACKUP','CRITICAL','FAST','FASTREAD',
'FASTWRIT','GSPACE','MEDIUM','NONVIO',
'STANDARD','DBCRIT')
/**********************************************************************/
/* Start of DB2-related FILTLISTs */
/**********************************************************************/
FILTLIST DB2 INCLUDE(%DB*.**)
FILTLIST DB2_PROD_DIRECTRY INCLUDE(PDB*.*.DSNDB01.**)
FILTLIST DB2_PROD_CATALOG INCLUDE(PDB*.*.DSNDB06.**)
FILTLIST DB2_PROD_LOG INCLUDE(PDB*.**.LOG*)
FILTLIST DB2_PROD_BSDS INCLUDE(PDB*.**.BSDS*)
/**********************************************************************/
/* End of DB2-related FILTLISTs */
/**********************************************************************/
Figure 2 shows the common logic that
lets privileged users, such as the database administrator, override
SMS allocation decisions or even to allocate the data set as a non-system-managed
data set.
Figure 2. Logic to Permit
Special Users to Override SMS allocation WHEN (&GROUP = &SPECIAL_USERS && /* Permit storage admin., */
&STORCLAS = &VALID_STORAGE_CLASS) /* system programmers, */
DO /* and DBAs to specify */
SET &STORCLAS = &STORCLAS /* a storage class */
EXIT
END
WHEN (&GROUP = &SPECIAL_USERS && /* Permit storage admin. */
&STORCLAS = 'NONSMS') /* or data base admin. */
DO /* to create */
SET &STORCLAS = '' /* non-system-managed */
EXIT /* data sets */
END
Figure 1 shows the
logic to assign storage classes to DB2 database
data sets. Only production database data sets are assigned specialized
services in this routine. The first character of the data set's HLQ
denotes whether the data set is production (P), test (T), or end-user
(U). The three low-order characters of the HLQ are set to DB2. The DSN mask defined in the
FILTLIST section for the data set type describes it in the LLQ.
Based upon the naming conventions, the following is also true:
- The first WHEN clause verifies that the data set belongs to a DB2 system by checking the FILTLIST
variable, DB2
- Each uniquely named data set type is assigned the recommended
storage class
- Any DB2 production database
data set not specifically identified or any test or end-user DB2 database data set, is assigned
STANDARD storage services
Example: SELECT section for DB2 from storage class ACS routine
Figure 3. SELECT Section
for DB2 from Storage Class ACS
Routine/**********************************************************************/
/* Start of DB2 Select */
/**********************************************************************/
WHEN (&DSN = &DB2) /* Select DB2 data sets */
DO
SELECT
WHEN (&DSN = &DB2_PROD_LOG) /* Use fast write for */
DO /* active logs */
SET &STORCLAS = 'FASTWRIT'
EXIT
END
WHEN (&DSN = &DB2_PROD_CATALOG OR /* Dual copy for catalog */
&DSN = &DB2_PROD_DIRECTRY OR /* directory and boot */
&DSN = &DB2_PROD_BSDS) /* strap data set */
DO
SET &STORCLAS = 'DBCRIT'
EXIT
END
OTHERWISE /* Give all other DB2 data*/
DO /* average performance */
SET &STORCLAS = 'STANDARD'
EXIT
END
END
END
Table 1 shows the attributes for the
storage classes assigned to database data sets.
Table 1. Storage Classes
for Database DataAttributes |
Storage Classes |
---|
Name |
MEDIUM |
FAST |
DBCRIT |
FASTWRIT |
Direct Millisecond Response |
10 |
5 |
10 |
5 |
Direct Bias |
— |
— |
W |
W |
Sequential Millisecond Response |
10 |
5 |
10 |
5 |
Sequential Bias |
— |
— |
— |
W |
Availability |
STANDARD |
STANDARD |
CONTINUOUS |
STANDARD |
Accessibility |
STANDARD |
CONTINUOUS |
CONTINUOUS |
CONTINUOUS |
Guaranteed Space |
NO |
NO |
NO |
NO |
Guaranteed Synchronous Write |
NO |
NO |
NO |
NO |