• Nenhum resultado encontrado

If DFHLSCU is inappropriate for use in your environment

If itisinappropriatefor youtouseDFHLSCUto helpyousizeyourcouplingfacility structuresandlogstreams(perhapsyouhave noCICSVersion4or Version3 journalrecordsto useasinputtoDFHLSCU,or youarecapacityplanningfornew applications), thefollowing sectionswillhelpyou tocalculateyourspace

requirements.

Theformulaeprovided helpyouto calculatevaluesfor:

v INITSIZE v AVGBUFSIZE v SIZE

v LOWOFFLOAD v STG_SIZE

You mustbase yourcalculationsonthejournalingrequirementsof your applications.This providesthestartingpointfor thefollowingformulae.

Structuresizeforsystemlogusage: Youarerecommendednottoplacethe primaryandsecondarylogstreamsinthesamestructure duetothelargedisparity indatavolumeswrittentotheprimaryandsecondarysystemlogs.

Generally, thevolume ofdatathatCICSkeepsintheprimarysystemlogat anyone time isslightlygreater thantheamountwrittenduringoneactivitykeypointinterval.

This volumeisdeterminedbytheactivitykeypointfrequency,which ismeasuredin thenumberofwriterequeststo theCICSsystem logstreamoutputbuffer,and defined ontheAKPFREQsysteminitializationparameter.Reviewthevalue specifiedontheAKPFREQsysteminitializationparameterwhenplanningcoupling facilitystructuresizes.

TheINITSIZEvalueto besuppliedintheCFRMpolicycanbecalculatedasfollows:

Thevaluefor thenumberof entries(no.entries)canbecalculatedasfollows:

no. entries = ((akpintvl + trandur) * writespersec) / 0.9

v akpintvlistheinterval betweenactivitykeypointswhichvarieswithworkload.It canbecalculatedasfollows:

akpintvl = AKPFREQ / ((N1 * R1) + (N2 * R2) + (Nn * Rn) ) where:

N1, N2.... Nnis thetransaction ratefor each transaction(transactions per second).

R1, R2.... Rnis thenumberof log recordswritten byeach transaction.

v tranduristheexecutiontime(betweensyncpoints)of thelongest-running transactionthatrunsaspartofthenormalworkload.

Ifthisduration islongerthanakpintvlvalue,youcaneither:

IncreasethevalueofAKPFREQ,soincreasingthevalueof akpintvl(aslong asthis doesnotresultinanunacceptablylargecouplingfacilitystructure size).

Changetheapplicationlogicto causemorefrequentsyncpoints.

Calculateastructure sizebasedonashortertransaction duration,andaccept thatDASDoffloadingoccurswhenthelong-running transactionisused.

v writespersec = lesser of 25 or ((N1 * R1) + ... (Nn * Rn)), where:

N1, N2.... Nn arethetransaction frequencies (transactions persecond) of themost frequentlyexecutedtransactions.

R1, R2.... Rnis thenumberof log recordswritten byeach transaction.

You cancalculateAVGBUFSIZEfor DFHLOGfromtheweightedaverageofthe data loggedbythemostfrequentlyexecutedtransactionsinthesystem:

AVGBUFSIZE = (bytespersec / writespersec) + 48 where:

v bytespersec = (N1 * D1) + (N2 * D2) + ... (Nn * Dn), where:

N1, N2.... Nn arethetransaction frequencies (transactions persecond) of themost frequentlyexecutedtransactions.

D1, D2.... Dnare thebytesof datalogged byeach transaction.

Youcancalculatetheamountofdata(Dn)writtento thesystemlogfor each transaction:

- synreclenisthesyncpointrecord length.

- Nfc, fcrechdr, fcreclenare, respectively,the numberof recoverable updatesmade,thelengthoftherecordheaders,andthelengthofthe recordsforfile control.

Countonly READUPDATEandWRITEADDrecords.fcrechdris144(136 bytesofrecord headerplus 8bytesoffilename).

Similarly:

- Nts, tsrechdr, tsreclenarefor recoverable temporary storage updates.

CountonlyTSPUTandTSUPDATErecords.

124 CICSTSforz/OS: InstallationGuide

ForTSPUTrecords,tsrechdris108,andtsreclenis88.

ForTSUPDATErecords,tsrechdris108,andtsreclenis52.

- Ntd, tdtrechdr,tdreclen arefor recoverable transient dataupdates.

tdrechdris108,andtdreclenis380.

- Nur, urrechdr,urreclen arefor user recordswritten to DFHLOG.

urrechdris125.

v

Seepage “Writespersecond calculation”onpage124for detailsofhow to calculatewritespersec

If theresultof thecalculationshowsa valueforAVGBUFSIZEthatisgreaterthanthe valuedefinedfor MAXBUFSIZE,then thevaluedefinedfor MAXBUFSIZEistaken asthevalueforAVGBUFSIZE,andwritesperseciscalculatedasfollows:

writespersec = bytespersec / (MAXBUFSIZE - 48)

Round thefinal resultof theINITSIZEformulauptothenextmultipleof256.

TheSIZEvalueto besuppliedintheCFRM policycanbecalculatedasfollows:

Calculate thevaluefor thenumberof entriesasintheINITSIZEformula.

Round thefinal resultof theSIZEformulaupto thenextmultipleof 256.The formulafor SIZEgivesaresultthatisapproximatelyfiftypercentgreaterthatthe INITSIZEvalue.

Generally, thesecondarysystem logstreamneedsto beonly afractionof thesize of theprimarylogstream.Usethefollowingformulaeto calculatecouplingfacility spacefor DFHSHUNT:

INITSIZE = (150 * LOGSNUM) + 310 SIZE = (230 * LOGSNUM) + 480

You cancalculateasuitablevaluefor LOWOFFLOADfor DFHLOGusingthe following formula:

LOWOFFLOAD = (trandur * 90) / (akpintvl + trandur) + 10 (where RETPD=0 specified) or

LOWOFFLOAD = (trandur * 90) / (akpintvl + trandur) (where RETPD=dddd specified) where:

v akpintvlistheinterval betweenactivitykeypoints.Seepage123fortheformula tocalculateit.

v tranduristheexecutiontime(betweensyncpoints)of thelongest-running transactionthatrunsaspartofthenormalworkload.

Ifthisduration islongerthanakpintvlvalue,youcaneither:

IncreasethevalueofAKPFREQ,soincreasingthevalueof akpintvl(aslong asthis doesnotresultinanunacceptablylargecouplingfacilitystructure size).

Changetheapplicationlogicto causemorefrequentsyncpoints.

SIZE = 480 + ( LOGSNUM * A * B / 1024)

where A = 2500 + (no. entries + 5)

and B = (AVGBUFSIZE * 1.6821) + 289

Figure18.SIZEcalculation

Calculateastructure sizebasedonashortertransaction duration,andaccept thatDASDoffloadingoccurswhenthelong-running transactionisused.

Structuresizeforforwardrecoverylog usage: You canmergetheforward recovery logswrittenbymanyCICSregionsonto thesamelogstream.Youcan also usethesamelogstreamfor forwardrecovery dataformultipledatasets.

SeeFigure17onpage123andFigure18onpage125for theformulae tocalculate values fortheINITSIZEandSIZE attributes.

Calculate avaluefornumberof entriesasfollows:

no. entries = writespersec * 12.5 where:

writespersec = lesser of 25 or (N1 + ... + Nn)

where N1....Nnis thenumberof transactionspersecondwriting to eachdata set.

You cancalculateAVGBUFSIZEasfollows:

AVGBUFSIZE = (bytespersec / writespersec) + 36 where:

v bytespersec = (N1 * Wr1 * (D1 + rechdr) +.. (Nn * Wrn * (Dn + rechdr))) v writespersec = lesser of 25 or (N1 + ... + Nn), where:

N1....Nn isthenumberof transactionspersecondwriting to each dataset.

Wr1 ... Wrnis thenumberof writerequests pertransaction.

D1....Dn istheaverage record lengthfor each dataset.

v rechdristherecord headerlengthof eachrecord.

If therecordsareWRITEADD,WRITEADDCOMPLETE, orWRITEADDDELETE records, rechdris84andisfollowedbytherecordkey, andtherecord data (includingitskey).

If theresultof thecalculationshowsa valueforAVGBUFSIZEthatisgreaterthanthe valuedefinedfor MAXBUFSIZE,thenthevaluedefinedfor MAXBUFSIZEistaken asthevalueforAVGBUFSIZE,andwritesperseciscalculatedasfollows:

writespersec = bytespersec / (MAXBUFSIZE - 36)

Structuresizeforuserjournalandautojournal usage: SeeFigure17onpage 123andFigure18onpage125for theformulaetocalculatevalues forthe

INITSIZEandSIZEattributes.

Calculate avaluefornumberof entriesasfollows:

no. entries = writespersec * 12.5

Seetheexplanationof writespersecbelow.

For journalswherethelogblocksarenotforcedto thelogstream,theaverage blocksizetendstobeslightlylessthantheMAXBUFSIZEvaluedefinedfor the couplingfacilitystructure.

For journalswherethelogblocksareforcedto thelog,(viatheEXECCICSWAIT JOURNALNAME orEXECCICSWAITJOURNALNUMcommands,orvia theWAIT 126 CICSTSforz/OS: InstallationGuide

optionof theEXECCICSWRITEJOURNALNAMEorEXECCICSWRITE JOURNALNUMcommands), youcancalculateAVGBUFSIZEfromtheweighted averageof thedataloggedforeach journalloggingtothesamelogstreamfor a givenCICSsystem.

AVGBUFSIZE = (bytespersec / (writespersec) + 36 where:

v bytespersec = (N1 * Wr1 * (D1 + rechdr) + ... (Nn *Wrn * (Dn + rechdr))) v

writespersec = lesser of 25 or ((N1 * Wa1) + ... + (Nn * Wan)) where:

N1,.... Nnisthenumber oftransactionspersecond writing to thejournal.

Wr1 ....Wrn isthe numberof writerequests pertransaction.

Wa1 ....Wan isthe numberof waitrequests pertransaction.

D1....Dn istheaverage record lengthof each journalrecord.

rechdristherecord headerlengthofeach record.

Autojournalrecordsareissuedfromfilecontrol.TheymaybeDATASETNAME recordswhich consistof a204-byterecord header,andnofurtherdata.

Alternatively,theymay beREADONLY,READUPDATE,WRITEUPDATE,WRITE ADD,orWRITEADDCOMPLETE recordsInthiscase,rechdris84andisfollowed bythefilecontrolrecorditself.

Userjournalrecordsconsistof a68-byterecordheader,followedbytheuserprefix, andtheuserdata.

If theresultof thecalculationshowsa valueforAVGBUFSIZEthatisgreaterthanthe valuedefinedfor MAXBUFSIZE,then thevaluedefinedfor MAXBUFSIZEistaken asthevalueforAVGBUFSIZE,andwritesperseciscalculatedasfollows:

writespersec = bytespersec / (MAXBUFSIZE - 36)