Top Banner
Technical University/Symposia materials may not be reproduced in whole or in part without the prior written permission of IBM. 9.0 © Copyright IBM Corporation 2015 More Fun With DDF Session z011599 Martin Packer IBM
38

Munich 2016 - Z011599 Martin Packer - More Fun With DDF

Feb 07, 2017

Download

Technology

Martin Packer
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Munich 2016 - Z011599 Martin Packer - More Fun With DDF

Technical University/Symposia materials may not be reproduced in whole or in part without the prior written permission of IBM. 9.0

© Copyright IBM Corporation 2015

More Fun With DDF Session z011599

Martin Packer IBM

Page 2: Munich 2016 - Z011599 Martin Packer - More Fun With DDF

Abstract Theideaof"alien"DB2workcomingintoyoursystemthroughDDFstrikesfearintoeventhemostseasonedPerformanceSpecialist...

HowwillIclassifyit?

Whatwillstopitfromtakingovermymachine?

ThispresentaDondescribeshowtouseperformancedatatoaddressbothofthosequesDons,basedontheauthor'srecentexperienceswithnumerouscustomers.

ItalsoenablesyoutounderstandwhatapplicaDonsandmachinesareissuingtheDDFrequests,improvingyourknowledgeoftheapplicaDonlandscape.

Page 3: Munich 2016 - Z011599 Martin Packer - More Fun With DDF

Agenda

• WhatIsDDF?• WhyDoICareAboutDDF?•  Tutorial• ClientN• ClientS• ClientP• Conclusion

Page 4: Munich 2016 - Z011599 Martin Packer - More Fun With DDF

What Is DDF?

• Oneofthemajorgatewaysintoz/OS•  SpecifictoDB2astheserver

• AroundsinceDB2Version2•  RefinedmanyDmessince

• Broadlyclientsare:•  JDBC–'JCC'•  z/OS–'DSN'•  OS/400–'QSQ'•  Other–'SQL'

• Higherriskof"feralSQL"

Page 5: Munich 2016 - Z011599 Martin Packer - More Fun With DDF

Why Do I Care About DDF?

• ManymodernapplicaDonsuseDDFtogettoDB2•  You'dlikethemtoperformwell•  You'dlikethemnottotakeoveryourmachine•  You'dliketoknowwhattheyevenare

•  Don'tyoujusthateitwhenworkshowsupandnobodytellsyou?

•  You'dliketoensurezIIPexploitaDonisopDmal

Page 6: Munich 2016 - Z011599 Martin Packer - More Fun With DDF

Tutorial

Page 7: Munich 2016 - Z011599 Martin Packer - More Fun With DDF

We'reInterestedIn

Page 8: Munich 2016 - Z011599 Martin Packer - More Fun With DDF

StarDngRightAtTheTop

Page 9: Munich 2016 - Z011599 Martin Packer - More Fun With DDF

DrillingDownIntoAServiceClass

Page 10: Munich 2016 - Z011599 Martin Packer - More Fun With DDF

Roughly60%

Page 11: Munich 2016 - Z011599 Martin Packer - More Fun With DDF

But What Is A DDF Transac<on?

• ConversaDonsbetweenrequestorsandDB2areofvariablecomplexity

•  Somedofewcommits•  Somedomany

•  Eachcommit/abortendsatransacDon•  InfrequentcommitscanleadtolongtransacDons•  Frequentcommitstoshortones

•  SoatransacDonisgenerallynotawholeconversaDon

• ADDFtransacDonisaWLMtransacDon•  Andwe'vealreadyseenthose

Page 12: Munich 2016 - Z011599 Martin Packer - More Fun With DDF

Mul<period Transac<ons

• AswithmanytransacDontypesWLMcanworkwith"periodaging"

•  IfatransacDonaccumulatesenoughserviceit'llfallintosecondandsubsequentperiods

•  Generallywe'retalkingaboutCPU

Page 13: Munich 2016 - Z011599 Martin Packer - More Fun With DDF
Page 14: Munich 2016 - Z011599 Martin Packer - More Fun With DDF

CPU And The DBM1 And DIST Address Spaces

MostlyIndependentEnclave Roughly60%ofIndependentEnclave

Page 15: Munich 2016 - Z011599 Martin Packer - More Fun With DDF

SMF 30 Contains Transac<on Rate

•  SMF30ETCisIndependentEnclaveTransacDonRateCount•  ProcessforDISTaddressspace•  CountstransacDonsforallDDFserviceclassesservedbythesubsystem

•  Likewisedoesn'tdisDnguishbetweenperiodendings•  ManycustomershavemulDpleDB2subsystemsperLPAR

•  Unnecessarytohaveseparateserviceclassesforeach•  SMF30ETCletsyouseehowbusy,transacDonwise,eachsubsystemis

•  CouldusefullydivideEnclaveCPUbytransacDonrate

Page 16: Munich 2016 - Z011599 Martin Packer - More Fun With DDF

DDF And The DB2 Accoun<ng Trace (SMF 101) Record

•  Everythingyou'dexpectfroma101record•  e.g.Timings•  e.g.SQLCounts

•  Plusmore:•  DDFIdenDfiers(QMDAsecDon)•  DDFCounters(QLACsecDon)•  WLMServiceClass(QWACWLME)

•  Recordsforrequesterandforserver•  DB2onz/OStoDB2onz/OSappearstwice

•  Oneineachsubsystem

•  Recordscanberolledup•  ACCUMACC=10isdefault

•  10thCommit/Rollback•  Orsomeotherobscurecases

•  ACCUMACC=NO•  1perCommit/Rollback

•  CancalculateACCUMACCvaluefromSMF101

Page 17: Munich 2016 - Z011599 Martin Packer - More Fun With DDF

QMDA and QLAC Sec<ons

•  QMDA–idenDfiers•  Differentforz/OSandotherplahorms•  UsefulfordesigningDDFWLMclassificaDonrules•  AccounDngInformaDon•  IPAddress/NetName•  EndUserID•  z/OSDB2CorrelaDon/PlaninformaDon•  …

•  QLAC–counters•  Commonacrossallplahorms•  Sent&Received•  SQLStatements•  Bytes•  Rows•  Blocks•  Commits/Aborts•  …

Page 18: Munich 2016 - Z011599 Martin Packer - More Fun With DDF

QWHS and QWACWLME

•  QWHSCommontoSMF101recordsfromdifferenttypesofconnecDons.

•  StandardHeaderinProductSecDon•  QWHSLWID–24-byteLogicalUnitOfWorkID

•  QWHSNID–8-byteNetworkName•  QWHSLUNM–8-byteLUName•  QWHSLUUV–6-byteUniquenessValue•  QWHSLUCC–2-byteCommitCount

•  QWHSLWID(minusQWHSLUCC)allowsyoutoDeaconversaDontogether.

•  QWACWLMEuniquetoDDF•  WLMServiceClass•  Binaryzeroesforotheramachments

Page 19: Munich 2016 - Z011599 Martin Packer - More Fun With DDF

Batch And DDF – Strange Bedfellows?

•  SAPBatchisnotJESBatch•  Abunchof"transacDons"ieSMF101records•  UniquecorrelatorinQWHSsecDon•  Plonngcommit(orrecord)ratebyminuteDmesthejob•  GivesbemergranularitythanJESBatch

•  EgVaryingeffectofCPUqueuing–NotAccountedForDme

•  Conversely,someJESBatchusesDDF•  JobJamachestoSubsystemA•  SubsystemAtalksDDFtoSubsystemB•  FieldQTXAOTSEforAdocumentsDmespentinBandcommunicaDng

•  CollectSMF101frombothsubsystems•  CorrelatorsinQWHSsecDonsmatch

Page 20: Munich 2016 - Z011599 Martin Packer - More Fun With DDF

Client 1 -

Some Basic Sta<s<cs

Page 21: Munich 2016 - Z011599 Martin Packer - More Fun With DDF
Page 22: Munich 2016 - Z011599 Martin Packer - More Fun With DDF
Page 23: Munich 2016 - Z011599 Martin Packer - More Fun With DDF
Page 24: Munich 2016 - Z011599 Martin Packer - More Fun With DDF
Page 25: Munich 2016 - Z011599 Martin Packer - More Fun With DDF

Client 2 -

A CPU Spike

Page 26: Munich 2016 - Z011599 Martin Packer - More Fun With DDF
Page 27: Munich 2016 - Z011599 Martin Packer - More Fun With DDF
Page 28: Munich 2016 - Z011599 Martin Packer - More Fun With DDF
Page 29: Munich 2016 - Z011599 Martin Packer - More Fun With DDF
Page 30: Munich 2016 - Z011599 Martin Packer - More Fun With DDF
Page 31: Munich 2016 - Z011599 Martin Packer - More Fun With DDF
Page 32: Munich 2016 - Z011599 Martin Packer - More Fun With DDF
Page 33: Munich 2016 - Z011599 Martin Packer - More Fun With DDF
Page 34: Munich 2016 - Z011599 Martin Packer - More Fun With DDF

Client 3 -

Sloshing Or Not?

Page 35: Munich 2016 - Z011599 Martin Packer - More Fun With DDF

Sloshing Or Not? You Decide

Page 36: Munich 2016 - Z011599 Martin Packer - More Fun With DDF

A Nice Response Time Distribu<on

Page 37: Munich 2016 - Z011599 Martin Packer - More Fun With DDF

So What Have We Learnt?

Page 38: Munich 2016 - Z011599 Martin Packer - More Fun With DDF

Maybe you learnt something like this

• DDFIsImportantToManage• DDFManagementneedstohappenwithWLMandbyapplicaDonexaminaDon/tuning

• AccounDngTraceSMF101iskeyinstrumentaDon•  MarDnhassomesuperDFSORTcodetosummariseit

•  DowntoarbitrarilyshortDmeintervals

•  YoucanhavemorefunwithDDF(thanyoumight'vesupposed)