4. Data in-place Tooling
• Virtualization
• Visualization
• …
Cloud Pak for
Data
Container
platform and
operational services
Organize
Analyze
Collect
Infuse
Other data sources
Operational Tooling
• Optimization
• Monitoring
• Automation
Application Tooling
• Administration
• Object handling
• Dev Ops
Data Movement Tooling
• Cloning
• Data Gate
• Replication
Table
Data
…
Machine Learning
7. Db2 for z/OS: Availability summary
Version PID General
Availability
Marketing
Withdrawal
End of
Service
8 5625-DB2 March 2004 September 2009 April 2012
9 5635-DB2 March 2007 December 2012 June 2014
10 5605-DB2 October 2010 July 2015 September
2017
11 5615-DB2 October 2013 July 2018 September
2020
12 5650-DB2 October 2016
http://www-01.ibm.com/software/data/support/lifecycle/
9. How Db2 for z/OS handles continuous delivery
— Continuous delivery for Db2 starts after migration to V12
• Migration to V12 may still be in the future for you, but preparation for this new concept
is strongly recommended
— New features come in with “function levels“ delivered in the normal PTF service
stream
— Function levels are counted up consecutively
• Some day there may be a new version
— To go to new function levels is voluntary
• Also skipping one or more function levels is possible, but consider:
o E.g. activation of level n+2 includes activation of level n as well as level n+1
• The same rule applies to catalog levels (catalog changes)
o Catalog changes are only one direction (no fallback)
— http://ibm.biz/db2z12functionlevels
10. Continuous Delivery – four levels are important
— System level:
• Module or code level (ML)
SDSNLOAD, ...
• Catalog level (CL)
CATALOG & DIRECTORY structure
• Function level (FL)
Which new functionalities are enabled
— Application level:
• Application compatibility level (AC)
APPLCOMPAT re-bind parameter
• Precompiler/Coprocessor
SQLLEVEL (replaces NEWFUN) in DSNHDECP
11. Some facts about continuous delivery in Db2 for z/OS
• There are four different levels
o Module or code level (ML), Db2 catalog/directory level (CL), function level (FL),
application compatibility level (AC)
• ML is always the highest level
• FL and AC have fallback during Db2 is active
o There is no fallback for CL
12. Function levels - Current status
• V12R1M501 – PI70535 – March 2017
• V12R1M502 – PI95511 – April 2018
• V12R1M503 – PH00506 – September 2018
• V12R1M504 – PH07672 – March 2019
• V12R1M505 – PH09191 – June 2019
• V12R1M506 – PH16829 – October 2019
13. Function levels by time
New functionality by function levels
Db2 for z/OS Market is demanding faster
reaction to requirementsV12
2016 2017 2018 2019 2020
14. Function level V12R1M501 (or M501) – PI70535
—March 2017
• New BIF LISTAGG
• New ClientApplCompat property for data clients if data driver
packages are bound with APPLCOMPAT(V12R1M501)
16. Data driver packages bound with APPLCOMPAT(V12R1M501)
Web User
Db2 for z/OS
direct connection
clientApplCompat
property is required
PH08482
Web User
Client needs Db2
connect 11.5+
connect server
Server needs Db2
connect 11.5+
PH15092
17. Function level V12R1M502 (or M502) – PI95511
—April 2018
• Transparent data set encryption (TDE)
• Secure data on Db2 tables and log
• Explicit casting of numeric values to (VAR-) GRAPHIC
19. Function level V12R1M503 (or M503) – PH00506
—September 2018
• Db2 AI for z/OS (Db2ZAI)
o Optimize Db2 operation with machine learning
o Only requires code level is at V12R1M503 and above
• Replication of system-period temporal tables and generated
expression columns
23. Function level V12R1M505 (or M505) – PH09191
—June 2019
• Rebind phase-in
• New BIF for Transparent Column Encryption
• RUNSTATS sampling simplification
• Indexes for DECFLOAT
• Temporal and archive enhancements on WHEN clause of triggers
24.
25. Function level V12R1M506 (or M506) – PH16829
—October 2019
• Drop of table automatically drops underlying explicitly created UTS or
LOB TS
• New SQL syntax alternatives (existing BIFs): Compatibility reason to
other platforms
o CHARACTER_LENGTH can be CHAR_LENGTH
o CLOB can be TO_CLOB
o …
31. LOB compression
• Compression prior to Db2 12
o Table space and XML use Lempel-Ziv and compression dictionary
o Compressed using z System processor chip (CMPSC)
o Optimized for small data objects, such as row data
o Index compression uses prefix compression and uses normal CPs
• Db2 12 provides LOB table space compression
o zEDC processor optimized for large data objects, data compressed in 1MB blocks
o Db2 automatically utilizes the on-chip accelerated compression in z15
32. Max memory on System Z processors in TB
0,5 1,5
3 3
10
32
40
ZEC9 Z10 Z196 ZEC12 Z13 Z14 Z15
Memory in TB
z/OS 2.4 supports 4TB per LPAR
33. Selective opportunities for real storage exploitation
• Buffer pools
o Contiguous Buffer Pools
o Buffer Pool Simulation Larger Buffer Pools
• Fast Traversal Block (zPARM INDEX_MEMORY_CONTROL)
• Dynamic Statement Cache
• Sortpool and sparse index (zPARMs SRTPOOL and
MXDTCACH)
34. IBM Db2 AI for z/OS (Db2ZAI)
• Learns patterns from workload data collected in an organization’s unique operating environment
and uses derived insight to help determine optimal access paths for SQL statements
• Detects anomalies from Db2 Statistics and provides performance tuning recommendations
• Built on top of the IBM Watson Machine Learning for z/OS (WML on Z) Technology stack
• Leverages WML on Z services without requiring data scientist support
• Db2 generates model training data
• Deploys, monitors and retrains models via WML on Z services
• Internal IBM benchmarks have shown up to 25% reduction in CPU time
Db2ZAI product ID: 5698-CGN
Requires Db2 12 for z/OS FL500
IBM Db2 AI for z/OS (Db2ZAI)
35. What is the Db2 Optimizer? An analogy….
• The optimizer is responsible for
• Choosing the most efficient method of accessing the data for a given SQL statement
• Think of your transportation choices
• Start/end location, time of day, construction, traffic, available options/routes
• All can impact the “quickest” route
?
?
?
?
36. Db2ZAI: customizing access paths for a workload
— Db2ZAI is focused on two optimizer “blind spots:”
• What values will be provided for host variables or parameter markers in query predicates?
• How many rows of a query result set will actually be fetched?
— Without Db2ZAI:
• Db2 uses default filter factors for predicates with host variables or parameter markers
• Db2 assumes entire result set will be fetched (absent OPTIMIZE FOR n ROWS clause)
— With Db2ZAI:
• Db2 stores actual host variable/parameter marker values used for queries, actual number of result
set rows fetched
• Data is used to train models that more accurately predict these values
o Result: better filter factors, leading to better-performing access paths
Example: WHERE BIRTHDATE < ?