Susan Lawson

Speaker Details

Bio

Susan Lawson is an internationally recognized consultant and lecturer with a background in system and database administration. She currently works with several large clients to help develop, implement and tune some of the worlds’ largest and most complex DB2 databases and applications. She also performs Performance and Availability Audits for many clients to help reduce costs through proper performance tuning and to help ensure availability. Her other activities include authoring articles and white papers, presenting at user group meetings, and teaching a variety of DB2 courses. She is an IBM GOLD Consultant for DB2 and z/Series, and an IBM Information Champion and has authored the IBM ‘DB2 for z/OS V8 DBA Certification Guide’ and the IBM ‘DB2 for z/OS V7 Application Programming Certification Guide’. She is also the co-author of several DB2 books including the IBM ‘DB2 10 for z/OS DBA Certification Guide’, IBM ‘DB2 9 for z/OS DBA Certification Guide’, ‘DB2 High Performance Design and Tuning’ and ‘DB2 Answers’. She is also a SME(Subject Matter Expert) for the IBM Certification exams for DB2 z/OS Database and System Administration assisting with writing and verifying questions for the exams.

Past presentation
15 June 2015
11:45 - 13:15
European SQLAdria Seminar – Dubrovnik 2015 Performance and Availability in DB2 11
With every new release of DB2 we look to see what features will allow us to improve the performance of our existing applications and the availability of our data. We also begin to plan to utilize new feature in our development efforts. This presentation takes a look at the features in DB2 11 that will both improve our performance and provide us with maximum data availability.
  • Discuss overall improvements and migration goals in DB2 11
  • Discuss features for improved application and database performance
  • Discuss features for improved data availability
  • Discuss implementation and expectations of these new features

10 June 2013
11:15 - 13:15
European SQLAdria Seminar – Dubrovnik 2013 DB2 10 Performance Update

14 June 2012
09:00 - 16:00
SQLAdria Seminar – Dubrovnik 2012 DB2 z/OS High Performance Design and Tuning: Classic Techniques and DB2 10 Considerations

Achieving maximum performance from DB2 requires a different approach and stricter methodologies than simply getting a DB2 application to perform well. In today’s high volume/high performance environments the rules have changed and we must find every tuning knob in order to get another transaction through the system. This seminar focuses on specific issues of system design, physical object design, application design and tuning methods used to achieve high performance. Topics such as table and index design, large tables and NPSI’s, DPSIs, pushing logic into SQL, control and concurrency, enterprise wide performance topics are examined for OLTP, batch, and data warehousing. Topics such as buffer pool design and utilization, concurrency and locking, DB2 compression, EDM pool sizing, RID pool sizing, Sort work and work file tuning, and parallelism are examined, and it is shown how poor memory tuning directly effects application performance. Focus is on the complete set of design points of DB2, and how they will affect performance of your applications. Discover why many old guidelines no longer apply, how old standards can actually hurt us and learn the approaches to systems management and tuning for the DB2 environment. This course gives new ideas on achieving the new demands placed on us in today’s high volume/high availability environments. The rules have changed and certainly in DB2 10 there are many more features to take advantage of and to be careful with!
The case study examples and stories told are from actual performance audits and design/development efforts.
All topics and examples are current with DB2 z/OS 10.

System Overview
– Some Internals for Discussion, Discussion of All Performance Opportunities
Physical Database Design Issues
– Table Design, Non-attribute Columns, Code Tables and Reference Tables, Materialized Query Tables, Denormalization, Column Placement, Reordered Record Format, Large Tables and their indexes, Partitioning for size and performance, Universal Table spaces, Clone Tables, Index Design, Clustering versus non-clustering indexes, Append processing, Partitioning index design, Referential integrity and index design, NPSIs and Pieces, DPSIs,Hash access, Temporal Tables, Compression (tablespace and index), Designing for 24×7, Large table case study
Concurrency
 - Locking issues, Coding for minimal locking overhead, Impacts of row level locking, Lock avoidance, Lock monitoring – proactive vs reactive, Use of optimistic locking
Bufferpools
- Buffer manager overview, Impacts on application performance, Buffer pool parameters, Bufferpool use, thresholds, and performance, Sequential prefetch impact, List prefetch impact, Checkpoint impacts, Virtual pool design strategies
RID Pool
- List prefetch impact, Application impacts, Statistics detail/failure types, Work file usage for RID overflows
Sort Pool
– Correct sizing/workfiles, Work file users, Potential performance problems, Application performance detail
EDM Pool
Impacts of new features, Monitoring efficiency, EDM pool and I/O activity, Dynamic SQL caching
Application Design Issues
– Load Reduction by Application Transaction Re-design, Uncommitted Read, Skipping Locked Data, Currently Committed Data, RELEASE(DEALLOCATE), DEGREE(ANY), Plan Stability
Parallelism
– Query CPU Parallelism, How the Degree is determined, Buffer Pool Impacts on Parallelism, Basic Trace Records for Parallelism, IFCID 221 &222
SQL Performance Issues
– Code for Reduced CPU, Pushing Logic into the SQL, Binding and Reoptimization Issues, Filtering Data, Dynamic SQL Cache Usage, Explain Tables and best usage
OLTP
– SQL Transaction Cost, Sequential Numbering Issues
Batch
– Reducing CPU and I/O, Checkpoint/Restart, Commits and Savepoints, Heuristic control tables, Browsing Performance
Scrollable Cursors, Mass updates, deletes and inserts
Final Guidelines


13 June 2012
11:15 - 12:30
SQLAdria Seminar – Dubrovnik 2012 Temporal Data: How, When and Why

This presentation takes an in-depth look at why we need temporal data, and how we have designed our tables for this type of support over the years. We will examine the performance and administrative challenges of dealing with temporal data. We then look toward DB2 10 for z/OS support of various forms of temporal data and compare them to other techniques.


12 June 2012
15:00 - 16:00
SQLAdria Seminar – Dubrovnik 2012 Application/SQL Design for Performance

This presentation will cover many alternatives to our normal applications in order to achieve performance. Many techniques to minimize overhead and locking will be explored. We will also take a look at techniques coding efficient SQL and minimizing the amount of data we bring back to process in our applications via optimal predicates, less repetition and better use of indexes. We will also discuss converting legacy programs to DB2 and how to best code for DB2 performance.


16 June 2011
09:00 - 16:00
SQLAdria Seminar – Dubrovnik 2011 DB2 High Performance Design and Tuning

Achieving maximum performance from DB2 requires a different approach and stricter methodologies than simply getting a DB2 application to perform well. In today’s web and SOA environments the rules have changed and we must find every tuning knob in order to get another transaction through the system. This seminar focuses on specific issues of system design, physical object design, application design and tuning methods used to achieve high performance. Topics such as table and index design, large tables and NPSI’s, DPSIs, pushing logic into SQL, control and concurrency, enterprise wide performance topics are examined for OLTP, batch, and data warehousing. Topics such as buffer pool design and utilization, concurrency and locking, DB2 compression, EDM pool sizing, RID pool sizing, SORT work tuning, and parallelism are examined, and it is shown how poor memory tuning directly effects application performance. Focus is on the complete set of design points of DB2, and how they will affect performance of your applications. Discover why many old guidelines no longer apply, how old standards can actually hurt us and learn the approaches to systems management and tuning for the DB2 environment. This course gives new ideas on achieving the new demands placed on us in today’s high volume/high availability environments. The rules have changed and certainly in DB2 9 there are many more features to take advantage of and to be careful with!

The case study examples and stories told are from actual performance audits and design/development efforts.

All topics and examples are current with DB2 z/OS 10 and we will cover migration considerations for 9 and 10.

System Overview
Some Internals For Discussion
Discussion of All Performance Opportunities
Physical Database Design Issues
Table Design
Non-attribute Columns
Code Tables and Reference Tables
Materialized Query Tables
Denormalization
Column Placement
Reordered Record Format
Large Tables and their indexes
Partitioning for size and performance
Universal Table spaces
Clone Tables
Index Design
Clustering versus non-clustering indexes
Append processing
Partitioning index design
Referential integrity and index design
NPSIs and Pieces
DPSIs
Hash access
Temporal Tables
Compression (tablespace and index)
Designing for 24×7
Large table case study
Concurrency
Locking issues
Coding for minimal locking overhead
Impacts of row level locking
Lock avoidance
Lock monitoring – proactive vs reactive
Bufferpools
Buffer manager overview
Impacts on application performance
Buffer pool parameters
Bufferpool use, thresholds, and performance
Sequential prefetch impact
List prefetch impact
Checkpoint impacts
Virtual pool design strategies
RID Pool
Usage
List prefetch impact
Correct sizing
Performance problems
Application impacts
Statistics detail/failure types
Sort Pool
Usage
Correct sizing/workfiles
Potential performance problems
Statistics detail
Application performance detail
EDM Pool
Correct sizing
Impacts of new features
Monitoring its efficiency
EDM pool and I/O activity
Dynamic SQL caching
Application Design Issues
Load Reduction By Application Transaction Re-design
Uncommitted Read
Skipping Locked Data
Currently Committed Data
RELEASE(DEALLOCATE)
DEGREE(ANY)
Plan Stability
Parallelism
Query CPU Parallelism
How the Degree is determined
Buffer Pool Impacts on Parallelism
Basic Trace Records For Parallelism
IFCID 221 &222
SQL Performance Issues
Code for Reduced CPU
Pushing Logic into the SQL
Binding and Reoptimization Issues
Filtering Data
Dynamic SQL Cache Usage
Explain Tables and best usage
OLTP
SQL Transaction Cost
Sequential Numbering Issues
Batch
Reducing CPU and I/O
Checkpoint/Restart
Commits and Savepoints
Heuristic control tables
Browsing Performance
Scrollable Cursors
Mass updates, deletes and inserts
Final Guidelines


15 June 2011
11:15 - 12:15
SQLAdria Seminar – Dubrovnik 2011 DB2 for z/OS 9 and 10 Performance Opportunities – Part 2

This presentation looks at the features of DB2 9 and 10 for z/OS with an emphasis on the features focusing on performance. DB2 9 and 10 both promise opportunities for CPU savings in various areas. We will review those enhancements and look at all available features in the database, system and SQL and their potential usage. We will look at where the performance opportunities are, what we need to do to take advantage of them, and any additional considerations when exploiting these features. We will also look at experience with these features and performance realizations.


14 June 2011
14:30 - 15:45
SQLAdria Seminar – Dubrovnik 2011 DB2 for z/OS 9 and 10 Performance Opportunities– Part 1

This presentation looks at the features of DB2 9 and 10 for z/OS with an emphasis on the features focusing on performance. DB2 9 and 10 both promise opportunities for CPU savings in various areas. We will review those enhancements and look at all available features in the database, system and SQL and their potential usage. We will look at where the performance opportunities are, what we need to do to take advantage of them, and any additional considerations when exploiting these features. We will also look at experience with these features and performance realizations.


15 June 2010
14:15 - 15:30
SQLAdria Seminar – Dubrovnik 2010 DB2 9 and 10: Database Performance and Availability

Many organizations are migrating to DB2 9 and looking to exploit many of the SQL and application performance features. DB2 10 is now available in beta with many additional performance and availability features. We also have the possibility of a skip migration from DB2 Version 8 to DB2 10. There are many issues to consider when migrating and we need to remember what we are trying to accomplish when migrating and what we are looking to use to achieve high performance for our applications. Both releases offer many great features and we need to take a detailed look at these to see which features are going to best help us achieve our goals.


15 June 2010
12:15 - 13:15
SQLAdria Seminar – Dubrovnik 2010 Exploiting Indexes

18 June 2009 (All day)
(All day)
SQLAdria Seminar – Dubrovnik 2009 DB2 High Performance Design and Tuning (DB2 9 Update)

Objectives:

Outline:

Full Abstract:
Achieving maximum performance from DB2 requires a different approach and stricter methodologies than simply getting a DB2 application to perform well. In today's web and e-business environment the rules have changed and we must find every tuning knob in order to get another transaction through the system. This seminar focuses on specific issues of system design, physical object design, application design and tuning methods used to achieve high performance. The performance techniques of the some of the new object-relational SQL features are also covered. Focus is on the complete set of design points of DB2, and how they will affect performance of your applications. Discover why many old guidelines no longer apply, how old standards can actually hurt us and learn the approaches to systems management and tuning for the DB2 environment. The rules have changed and certainly in DB2 9 there are many more features to take advantage of and to be careful with.

 


17 June 2009
12:15 - 13:15
SQLAdria Seminar – Dubrovnik 2009 Exploiting V9 Performance Features

Objectives:
Learn about some new features in DB2 9 that will help us achieve high performance in our applications and database designs

Outline:
Application Features
Database Features

Full Abstract:
This presentation will look at the features of DB2 9 that we can use achieve maximum performance. We will look at new SQL features, database features as well as a few new enhancements our overall subsystem performance.
 


16 June 2009
14:15 - 15:30
SQLAdria Seminar – Dubrovnik 2009 Using V9 Explain Tables for Query Tuning

Objectives:
Learn how to use the new EXPLAIN tables to help with query tuning efforts.

Outline:
Discuss IBM Visual Explain and Optimization Service Center
Discuss the tables that support them for information
Discuss how to use these tables without the tools
Discuss the DSN_STATEMENT_CACHE_TABLE for dynamic SQL tuning

Full Abstract:
DB2 z/OS V8 and 9 have introduced us to many new EXPLAIN tables. This session will introduce users some of the new EXPLAIN tables to be used for advanced query analysis, and demonstrate how SQL queries can be used to gather and analyze the this information. The session will also include information about using the DSN_STATEMENT_CACHE_TABLE to perform analysis on the dynamic SQL cache.


26 June 2008 (All day)
(All day)
SQLAdria Seminar – Dubrovnik 2008 V8/V9 SQL/Database Challenges and Solutions

Objectives:
Discuss the importance of smart SQL and applications
Discuss V8 SQL and application features and show examples
Discuss V8 features for database performance
Discuss challenges still remaining in V8 SQL/applications and databases
Look at some new V9 SQL/application and database features and their benefits

Outline:
V8 SQL/Application Performance Features
Multi-Row Fetch
Recursion
Common Table Expressions
INSERT within a SELECT
Scalar Fullselect
Distribution Statistics
XML Scalar Functions
Multiple Distinct
Matching Predicates
Parallelism and Sorting
V8 Database Performance Features
Volatile Tables
Data Partitioned Secondary Indexes
V9 SQL/Application Features
UPDATE/DELETE with a SELECT
Optimistic Locking
Index on Expression
Histogram Statistics
Order By and Fetch First in Subselect
Instead of Triggers
INTERSECT and EXCEPT
Skip Locked Data
Caseless Expressions
Native SQL Procedures
XML Support
Star Joins Performance
New Functions
V9 Database Performance Features
Better Index Page Splitting
Index Compression and Large Pages
DPSI Enhancements
Clone Tables
Append on Insert
Truncate Table
No Log Tables

Full Abstract:
In this seminar we will look at some of the performance features in V8 and how they have been successfully used in our applications and databases to meet some of our current performance challenges. Those challenges, of course, being performance and availability. We will discuss some of the things we still desire in terms of application and database performance and take a look at V9 to see what features are available to further improve our performance and availability of our applications. We will look at how we may take advantage of those features.
 


25 June 2008
12:15 - 13:15
SQLAdria Seminar – Dubrovnik 2008 Top 10 Ways to Waste CPU

Objectives:
Discuss the top 10 ways CPU is wasted
Discuss the reason why this is the case
Discuss the technical aspects of DB2 performance
Determine how to find these types of problems
Show and discuss how to prevent these problems

Outline:
1.Overuse of DB2 Compression
2.Excessive Locking
3.Processing of Data in an SQL Statement
4.Overuse of DISTINCT
5.Inefficient Predicates
6.Inappropriate BIND Parameters
7.Blind Updates
8.Random Distribution/Access
9.Too Many Indexes
10.Black Box I/O Modules

Full Abstract:
During the past several years we have worked with several companies to design high performance databases and applications and have done extensive testing and research on ways to minimize I/O and CPU. Many of those applications and databases are faster than we ever could imagine. However, those are the exception. Too often we see shops with critically CPU constrained environments. Most of these shops have one thing in common: They are wasting CPU. There are some very common ways to do this and we need to look at how you can safely and effectively reduce CPU usage in a DB2 z/OS environment. This presentation will look at the top 10 ways we have seen customers waste enormous amounts of CPU unnecessarily (and unknowingly). A few tuning efforts here and there can improve overall performance and reduce CPU consumption.
Of course every environment is different and processing needs will vary. However, there are still ways to reduce CPU usage through some very practical performance tuning efforts and better design efforts early in the development.
 


24 June 2008
14:15 - 15:15
SQLAdria Seminar – Dubrovnik 2008 Desperate Table Designs

Objectives:
Discuss some new innovative ways to create tables
Discuss new challenges and opportunities for index design
Discuss how to integrate designs with applications for best performance and availability
Discuss how to use new features of DB2 to solve problems
Discuss ways to think differently about designs and see examples from real implementations

Outline:
1.Current challenges faced by our clients
2.Creating new innovative solutions
3.Solving todays performance and availability problems with new designs
4.Use of new features
5.Getting rid of old theories

Full Abstract:
This presentation covers new, bold, creative solutions to achieve high availability and high performance. New challenges mean thinking outside the old rules. We also look at how to synergize creative table designs with applications to achieve our goals.


14 June 2006
11:45 - 13:15
SQLAdria Seminar – Dubrovnik 2006 Top 20 DB2 Performance Myths 2006: Demystified

13 June 2006
14:15 - 15:15
SQLAdria Seminar – Dubrovnik 2006 Designing for Performance and Availability: Challenges, Solutions and V8 – Part 2

12 June 2006
14:15 - 15:45
SQLAdria Seminar – Dubrovnik 2006 Designing for Performance and Availability: Challenges, Solutions and V8 – Part 1

29 June 2005
11:45 - 13:15
SQLAdria Seminar – Dubrovnik 2005 Table and Index Design for Performance

This presentation will discuss many issues surrounding alternative table designs and performance. We will look at many different alternatives to help design tables for the best performance possible for the type of application process. There are many issues to consider for high volume insert and update transactions, and a balancing act to be achieved for responsiveness to readers. Table issues such as denormalization, non-column attributes, indicator columns, repeating columns, derived data, aggregated columns, table flipping, identify columns, surrogate keys, horizontal and vertical partitioning. We will also look at issues with designing VLTBs (Very Large Tables) and XVLTBs (eXtremely Large Tables) – the rules have changed! We also look at index challenges.

Creating Tables to Support High Volume Inserts
Alternate Column Designs for Application Performance
Building VTLBs and XVLTBs
Index Impacts and Usage – NPSIs and DPSIs

I.Alternative table designs and performance.
a.Design tables for the best performance possible for the type of application process.
b.Issues to consider for high volume insert and update transactions
c.Performing a balancing act to be achieved for responsiveness to readers.

II.Table issues
a.Denormalization
b.Non-column attributes
c.Indicator columns
d.Repeating columns
e.Derived data
f.Aggregated columns
g.Table flipping
h.Identity columns
i.Surrogate keys
j.Horizontal and vertical partitioning
k.Declared Temporary Tables

III.Designing VLTBs (Very Large Tables) and XVLTBs (eXtremely Large Tables)
a.Issues that are different from traditional design
b.What works and what does not
c.Purging and Archiving Issues
d.Using Additional Tables for Access
e.Actual client experience stories

IV.Index Issues
a.Challenges with NPSIs
b.Challenges with DPSIs
c.Uniqueness and Clustering


28 June 2005
14:15 - 15:45
SQLAdria Seminar – Dubrovnik 2005 Top 20 Performance Myths 2005

Abstract:
DB2 appeared in 1983, and standards and guidelines were soon to follow. This led to a lot of rules and standards in the beginning, and some have become so ingrained that they became almost by-laws of systems development.  We need to take a hard look at these guidelines and how they may not apply in today’s high performance environments and may even be hurting performance.
We are going to look information passed on through the years and evaluate its applicability today. There are no two systems exactly the same where everything will be done exactly the same.  Sure, some myths may appear to be nice starting points and perhaps some of them are. The reason is because this particular method may have worked and produced adequate results in this particular environment, but surely is not appropriate for all environments and could even prove harmful. It all goes back to the saying “Don’t believe everything you hear (or read)’. Take all implementation and performance recommendations with an open, yet cautious mind, and then evaluate them against your environment. This presentation quick look at what we have seen as the top 20 performance myths and will include new material up to date with Version 8.

Bullet Points:
1.What are DB2 Performance Myths?
2.Where did they originate?
3.How do I identify if they are causing me problems?
4.How do I fix the problems?
5.How do I avoid falling victim to future performance problems?.


27 June 2005
15:30 - 16:30
SQLAdria Seminar – Dubrovnik 2005 DB2 V8 Impacts on Applications

Abstract:
This presentation will cover aspects of Version 8 of DB2 on the z/OS platform and how they will impact our applications, SQL and performance. There are several new constructs in DB2 in the next release such as materialized query tables, multi-row fetch/insert, dynamic scrollable cursors, imbedded inserts, better matching predicates, sequence objects and more. There have also been many improvements DB2s usage of indexes and this will have an impact on how we code our SQL. WLM is playing more of a part in our environments and we need to begin the migration toward it if we have not. We need to review these features and see how they impact current applications and help us prepare for the future in order to get the best performance possible from our DB2 applications

Five Bullet Points
Overview of V8 Features that SQL and Applications
Discussion of New SQL Functionality
Discussion of New Application Programming Features
Discussion of Why Its is Important to Use The New Features
Discussion of How to Plan and Best Implement New Features

Outline:
Application and SQL
 Materialized Query Tables
 Coding Predicates for DPSIs
 Table Function Cardinality
 Multi-row FETCH and INSERT
 DDF Block Fetch
 INSERT within SELECT
 Dynamic Scrollable Cursors
 Identity Column Enhancements
 Sequence Objects
 Indexable Unlike Types
 Increased of Number of Tables in a Statement
 Stored Procedures and WLM


27 June 2005
14:15 - 15:15
SQLAdria Seminar – Dubrovnik 2005 Application Design for Performance and Availability

Today’s application environments demand more availability and high performance that we ever had in the past. One problem with achieving both of these is locking. Locking can hold resources that effects availability and can slow down performance. We will take a look at some things we can do to minimize this without compromising data integrity. We will also look at application availability issues, because if you are not available….you are not performing!

Locks and Lock Avoidance
 Bind Parameters
  Uncommitted Read
  Release Deallocate
  Current Data
 Lock Avoidance
  How it works
Application Design
 Designing for no deadlocks
 Restructuring code for maximum throughput
 Commit Strategies
 Index availability
 Cursor Usage


 

sqladria

SQL Adria is the independent, non-profit organization that gathers relational database users for Croatia and Slovenia. It was founded 1994. and in the same year it has become the regional user group.

Follow us

facebook
linkid
twitter

 

Events in 2018

Ljubljana - 9th & 10th April 2018
Belgrade - 12th April 2018
Šibenik - 10th - 14th June 2018
Zagreb - 18th September 2018
Opatija - 29th & 30th November 2018