1 / 41

DB2 Connect gebruik in een Microsoft omgeving

DB2 Connect gebruik in een Microsoft omgeving . Marc Cobbaert. Agenda. SD Worx en haar DB2 achtergrond Huidige applicatie architectuur DB2 Connect opstelling Dynamic statement cache NIET: beveiligings- en applicatie aspecten. Situering SD Worx.

boone
Download Presentation

DB2 Connect gebruik in een Microsoft omgeving

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. DB2 Connect gebruik in een Microsoft omgeving Marc Cobbaert

  2. Agenda • SD Worx en haar DB2 achtergrond • Huidige applicatie architectuur • DB2 Connect opstelling • Dynamic statement cache • NIET: beveiligings- en applicatie aspecten

  3. Situering SD Worx • Sociaal secretariaat : dienstverlening op het vlak van loonadministratie en HR • Voor KMO, Grote ondernemingen en de publieke sector • Meer en meer internationaal georiënteerd • Consultancy op vlak van HR, Tax & Legal, Rekrutering & Assessment, …. • Kenniscentrum (marktstudies)

  4. ICT omgeving van SD Worx • 2 centrale datacenters in Antwerpen • IBM mainframe Z9 BC X02 – z/OS 1.7 • Windows 2003 gebaseerde decentrale servers (Windows cluster, VMWare, blades) • Synchrone datareplicatie voor beide omgevingen

  5. DB2 historiek bij SD Worx • DB2 gebruiker sinds 2001 • gestart met DB2 V7 • COBOL batch op het mainframe • Dynamic sql vanuit een Windows omgeving • RDBMS ervaringen met decentrale toepassingen op Oracle of MS Sql Server • IDMS op mainframe

  6. Een paar DB2 mijlpalen … • mei 2001 begin installatie • aug. 2001 start in produktie • feb. 2002 eerste produktie applicaties • april 2002 synchronisatie data tss. IDMS en DB2 via MQ • maart 2003 activering RLF • juni 2003 Detector testen

  7. Een paar DB2 mijlpalen … • Aug. 2003 Gebruik realtime statistics • Juni 2004 Extra accounting attributen • Okt. 2004 eerste SP gebruik (COBOL) • Apr. 2005 aanschaf Detector • Aug. 2005 SMS managed tablespaces • Nov. 2007 Websphere Replication Server for z/OS V9

  8. DB2 Connect historiek bij SD Worx • 2001: DB2 Connect V7 (9 fixpacks) • MDAC 2.x, ODBC, OLEDB, ADO,.NET 1.0 • 2004: DB2 Connect V8 (5 fixpacks) • ADO, ADO.NET, .NET V2.0 • 2006: DB2 Connect V9 (2 fixpacks) • ADO.NET, .NET V2.0, V3.0

  9. Applicatie architectuur

  10. Applicatie architectuur • 3-tier applicaties gebaseerd op Microsoft technologie • Web based applications • Component based development (MTS/COM, COM+/.NET) • Transaction monitor applications (COM+, MSDTC) • XA-compliant resource manager dankzij DB2Connect

  11. COM+ component services • COM + voorziet in runtime services voor components ‘at runtime’ : • Administration : MS Mgt Console Component Services Explorer (catalog) • JITA : just-in-time activation (component activation/deactivation) • Object pooling • Transacties : distributed component acties als 1 transactie gegroepeerd (OleTX/XA)

  12. COM+ Component Services • Synchronization: controle over concurrent access naar objecten • Role based security • Queued components: asynchrone communicatie tussen componenten • Events: signalisatie tussen componenten via publsh-subscribe mechanisme

  13. Architectuur • DB2 CLI API, noch ODBC of OLEDB worden rechtstreeks aangesproken • MS-ADO interface wordt hiervoor gebruikt • ADO is een object oriented data acess interface bovenop OLE-DB • ADO is geëvolueerd naar ADO.NET die voorziet in zogenaamde managed data provider

  14. Het MS .NET Framework

  15. Common Language Runtime

  16. MS ADO.NET

  17. ADO.NET Architectuur

  18. .NET Transactie beheer

  19. SD WORX ervaring • Integratie tussen Microsoft en IBM DB2 is sterk verbeterd en stabieler geworden • Integratie in ontwikkelomgeving • Eénduidige IBM DB2 .NET dataprovider • Snelle evolutie in .NET blijft een aandachtspunt (.NET 3.0, 3.5, ondersteuning LTM) • Performance aspect kan onder controle gehouden worden, maar is constant aandachtspunt (zie verder)

  20. DB2 Connecties onderdelen • Het netwerk (TCP/IP meestal) • DB2 Clients (CLI, ODBC,OLEDB, DB2 .NET data providers) • DB2 Connect server • DB2 z/OS (DDF – netwerk connectiviteit / DBM1 database access threads) • WLM Service classes en classification rules

  21. Architectuur

  22. DB2 Connect basis architectuur

  23. DB2 Thread pooling

  24. DB2 Connect Connection pooling

  25. DB2 Connect concentrator pooling

  26. DB2 z/OS Thread Pooling

  27. DISPLAY THREAD • DISPLAY THREAD(*) • Pooled DBAT • NAME = DISCONN / STATUS = DA • DISPLAY THREAD(*) TYPE(INACTIVE) • Inactieve CONNECTIE informatie • NAME = SERVER / STATUS =R2 • DISPLAY DDF DETAIL • DISPLAY LOC(*) DETAIL

  28. Application pooling combinatie

  29. Caching • Dynamic sql processing bevat 2 stappen : • Prepare • Execute • Prepare kan een zware operatie vormen : • Parsen van SQL statement • Valideren van de SQL syntax • Cataloog access (tabellen, kolommen, privileges) • Aanmaak access pad • Aanmaak uitvoer statement

  30. Local Caching • 4 vormen van caching : geen, local en global dynamic cache, full caching • Zonder caching betaal je telkens prepare kost voor iedere statement (CPU en IO) • Local cache : activering door BIND optie KEEPDYNAMIC(YES) – thread gebonden

  31. Global Caching • Global caching in de EDM POOL : DSNZPARM CACHEDYN=YES • Alle DML die expliciet geprepared worden of aangeboden via EXECUTE IMMEDIATE • Exacte SQL string matching en AUTHID • Gebruik van parameter markers • Consistente BIND opties bv. CURRENTDATA, ISOLATION, QUALIFIER

  32. Full Caching • Combinatie van local en global caching • KEEPDYNAMIC(YES) • MAXKEEPD > 0 • CACHEDYN=YES

  33. Types Prepare • Full prepare: normaal geval bv. zonder caching • Short prepare : skeleton copy of prepared statement gekopieerd naar local storage • Avoided prepare : omwille van full caching • Implicit prepare : DB2 voert impliciet prepare uit ten behoeve van applicatie (na COMMIT)

  34. Dynamic statement cache

  35. DB2 DDF parameters

  36. DB2 DDF parameters

  37. DB2 en de Workload Manager • WLM bepaalt de prioriteiten en kent resources toe (CPU, I/O, memory) • WLM definities • Binnenkomend werk (bv. DDF thread) krijgt service class toegewezen op basis van classificatie regels • Een service class kan ingedeeld worden in perioden (inactive threads) • Binnen een periode kunnen tegen een bepaalde prioriteit gelimiteerde resources verbruikt worden • Dit kan beschermen tegen runaway queries

  38. WLM Enclaves • DDF threads worden uitgevoerd als enclave SRBs onder controle van WLM • DDF classificatie binnen WLM is belangrijk om correcte thread priority te zetten • Enclave creatie en vernietiging afhankelijk van CMTSTAT instelling • Bij INACTIVE, wordt thread aangemaakt wanneer eerste SQL wordt ontvangen

  39. WLM Enclaves • Bij ACTIVE wordt enclave aangemaakt wanneer DBAT wordt aangemaakt • Enclave verdwijnt bij INACTIVE bij COMMIT/ROLLBACK indien RELEASE(COMMIT) • Enclave verdwijnt bij ACTIVE wanneer thread verdwijnt • INACTIVE thread kan multi-period response time of velocity goals gebruiken

  40. WLM Enclaves • Bij ACTIVE kan enkel 1 periode velocity goal gebruikt worden • Accounting info bij ACTIVE instelling, enkel wanneer thread eindigt • Accounting info bij INACTIVE instelling op moment van COMMIT/ROLLBACK (met KEEPDYNAMIC(YES) in V8)

  41. Diverse instellingen : decentraal • Db2connect pooling (zie eerder) • Max. agents / max. coordinating agenst • Timeouts: applicatie/db2connect, client/db2connect server • CONNECTTYPE/DISABLEMULTITHREAD/SYNCPOINT  MTS/COM+ • CURSORHOLD=NO • NT performance monitoring  DB2CONNECT_IN_APP_PROCESS=NO • DB2_ENABLE_LDAP=N (snellere connect)

More Related