Advanced High-Performance Ingres Programming
techniques for writing fast and correct application programs 

 

Home          Course Listing

Synopsis

An intensive 3-day master-class in Ingres programming, consisting of lectures, case-studies, and supporting labs.  Provided on-site, using Ingres on Linux, Unix or W2K/W2K3.   This course will help designers and experienced application programmers unlock the full power of Ingres to develop very fast, very efficient programs, able to scale to handle enterprise volumes of data and users.  Emphasis is on managing and preventing I/O and concurrency problems.  Query tuning and advanced SQL techniques are discussed in depth.  Both On-Line Transaction Processing (OLTP) and batch processing problems are discussed.  The transformation from row-at-a-time to set-at-a-time processing to achieve a +1,500% increase in processing speed is illustrated with a case-study.  Examples of techniques for improving performance are illustrated with benchmarks.  A large database is supplied to support the labs.

This course is aimed squarely at programmers, programmer team-leaders, and application architects.  Performance-related DBA topics such as physical database design, selection of table structure, physical key design, indexing, and integrity constraints are not discussed.  (For coverage of these topics see Ingres Database Administration.)

Customers in the US/Canada should contact KB Computer Associates to schedule this course

Duration and Cost

3 days, £1,050 / $2,050USD / €1,560, per seat, ex VAT Price excludes VAT and other applicable local taxes

Location

London, Manchester, Dublin, and on-site world-wide  

Format

Lecture and labs

Course Code

AIP  

Prerequisites

A strong knowledge of at least one programming language (e.g. C, Cobol, ABF/4GL, OpenROAD, Java), good basic knowledge of SQL (or successful completion of Intermediate SQL for Ingres), some previous exposure to Ingres, and a strong desire to write fast, effective, and reliable code.   This is a master-class and it assumes a high level of Ingres expertise from the outset.  

Outline
Day 1

Chapter 1 Introduction
  design for performance / development for performance / programmer's responsibilities / standards and style / the two great costs
Chapter 2 What Makes Programs Slow
  why programs are slow / understanding disk and network I-O / queuing and the Forced Flow Law / lock contention / the users' perspective
Chapter 3 Lockmodes and Isolation Levels
  locking as a programming issue / database consistency / Ingres locking / setting lockmodes / transaction isolation levels / choosing an isolation level / row-level locking / deadlock
Chapter 4 Transaction Management
  transaction basics / transactions and locking /
autocommit / The Transaction Management Problem / automating transaction management / common problems / generating key values / gap-free numbering / unrelated work / stateless clients / optimistic locking / user think-time / logging
 

Day 2

Chapter 5 Advanced SQL
  exploiting Ingres SQL /  logical order of execution /
outer joins / select-expressions / unions / subqueries / scalar subqueries / CASE expressions / any()  
Chapter 6 Tracing and Benchmarking
  tracing I-O, logging, and locking / tracing query plans / re-directing trace logs / program-controlled tracing / system-wide statistics / diagnosing lock-contention / IMA / how to benchmark / finding problem queries / query-level response time / application-level response time / continuous response-time monitoring
 

Day 3

Chapter 7 Query Execution Plans I
  goal-orientation of SQL / candidate query plans / reading QEPs / node types / join techniques / query flattening
Chapter 8 Query Execution Plans II
  QEP tell-tales / common errors / function joins / QEP v. reality / key statistics / completeness / case studies / problems with REPEATED queries 
Chapter 9 Set-Oriented Processing
  REPEATED queries / cursors and select-loops /
UPDATE...FROM / row-at-a-time processinng /
set-at-a-time processing / temporary tables /
set-oriented thinking
Contact us

  Discounts are available for large blocks of training or training credits bought at once.  Contact us for details.  

Ingres® is a trademark of Ingres Corporation | ©Rational Commerce Ltd. | Last updated 24/03/2008 20:25