Performance Tuning for Informer PRESENTER: Jason Vorenkamp| [email protected] | October 11,...
-
Upload
nikki-ramsden -
Category
Documents
-
view
215 -
download
0
Transcript of Performance Tuning for Informer PRESENTER: Jason Vorenkamp| [email protected] | October 11,...
Performance Tuning for Informer
PRESENTER: Jason Vorenkamp| [email protected] | October 11, 2010
ARE YOU ON THE LATEST VERSION OF INFORMER?
Version 4.1
Improved Result Rendering
Improved SQL queries
Version 4.2
Optional Report Sample
Optimized Auto-suggest
3
Database Server Web Server Client Machine
Open a Connection Load Results
Calculations
Arranging Data
Execute the Query
Render the Results
Compute Functions
4
Database Server Web Server Client Machine
Pentium 4® or higher
2 GB recommended
Disk Space: 500 MB
Google Chrome
Firefox
DO YOU HAVE THEMINIMUM SYSTEM REQUIREMENTS?
5
Database Server
Open a Connection
Do you have enough database licenses?
Has Informer reached its connection maximum?
6
Database Server
Open a Connection
Do you have enough database licenses?
UniData : LISTUSER
UniVerse : CONFIG
7
Database Server
Open a Connection
Has Informer reached its connection maximum?
8
Database Server
Open a Connection
Has Informer reached its connection maximum?
9
Database Server
Execute the Query
Do you have initialization subroutines?
Are you selecting on a virtual field from large dataset?
Are you returning a large number of rows?
10
Database Server
Execute the Query
Do you have initialization subroutines?
UniData / UniVerse:Consider purchasing a connection pooling license to reduce initialization subroutine overhead.
11
Database Server
Execute the Query
Are you selecting on a virtual field from large dataset?
PERSON FILE 60,000 RECORDS
SELECT PERSON WITH AGE = 18 5,000 RECORDS
SELECT PERSON WITH NAME = “JASON” 50 RECORDS
1 MINUTE
10 SECONDS
= 1 MINUTE : 10 SECONDSTOTAL
12
Database Server
Execute the Query
Are you selecting on a virtual field from large dataset?
PERSON FILE 60,000 RECORDS
SELECT PERSON WITH NAME = “JASON” 500 RECORDS
SELECT PERSON WITH AGE = 18 50 RECORDS
20 SECONDS
2 SECONDS
= 22 SECONDSTOTAL
13
Database Server
Execute the Query / Loading Results
Are you returning a large number of rows?
Database Server Web Server
Web Server
14
Web Server
Calculations
Do you have calculated columns in your report?
What is the nature of the calculated columns?
Does it loop through an iteration? Does it check an if-then-else statement? Does it run a subroutine or function?
15
Web Server
Calculations
Do you have calculated columns in your report?
60,000 RECORDS
10 ITERATIONS
600,000 CALCULATIONS!
X
=
16
Web Server
Arranging Data
Is your data Sorted?
Are you normalizing on multi-values?
Is your data being grouped?
17
Web Server
Compute Functions
Are you subtotaling/averaging groups?
18
Rendering the Results
Again, is your data being grouped?
Are you displaying all records instead of a paged set?
Do you have a large number of columns?
Client Machine
19
Rendering the Results
Again, is your data being grouped?
Group Headers are not shown in pages!
10,000 Groups = 10,000 Items to render!Client Machine
20
Rendering the Results
Are you displaying all records instead of a paged set?
Paged:
Not Paged:Client Machine
21
Rendering the Results
Do you have a large number of columns?
10,000 Rows x 10 Columns = 100,000 Cells
10,000 Rows x 20 Columns = 200,000 Cells
Twice the information, Twice the render time!
Client Machine
Thank you! Any questions?