Upload
edward-powell
View
30
Download
0
Embed Size (px)
DESCRIPTION
Documentum TaskSpace Performance Deep Dive. Daniel Hata. Topics. Introduction to TaskSpace Tuning TaskSpace For Performance Page Serving Using Accelerated Content Services Custom Inbox, Custom Search, Folder Content Views Best Practices and Tuning Advice Benchmark Results. - PowerPoint PPT Presentation
Citation preview
1© Copyright 2008 EMC Corporation. All rights reserved.
Documentum TaskSpace Performance Deep Dive
Daniel Hata
2© Copyright 2008 EMC Corporation. All rights reserved.
Topics
Introduction to TaskSpace
Tuning TaskSpace For Performance– Page Serving Using Accelerated Content Services– Custom Inbox, Custom Search, Folder Content Views
Best Practices and Tuning Advice
Benchmark Results
3© Copyright 2008 EMC Corporation. All rights reserved.
TaskSpace - Rapid TCM
Processing task
TaskSpace Simplifies task processing Optimizes document access and
improves decision making Accelerates development and
deployment of case-based applications Integrates imaging and business
process management into a single UI
4© Copyright 2008 EMC Corporation. All rights reserved.
Topics
Introduction to TaskSpace
Tuning TaskSpace For Performance– Page Serving Using Accelerated Content Services– Custom Inbox, Custom Search, Folder Content Views
Best Practices and Tuning Advice
Benchmark Results
5© Copyright 2008 EMC Corporation. All rights reserved.
Tuning TaskSpace For Performance
Tuning TaskSpace For Performance– Page Serving Using Accelerated Content Services– Custom Inbox, Custom Search, Folder Content Views
6© Copyright 2008 EMC Corporation. All rights reserved.
Use-case: Random Access through a file
Many Content Management applications need fast access through a set of pages
There are several ways to model this.
#1 – Large Documents modeled as multiple content objects
#2 – Large documents modeled as a single large file
Access to random pages in the 2nd case can be slow if the entire file has to be extracted
7© Copyright 2008 EMC Corporation. All rights reserved.
Byte and page serving for improved random content access
Prior to 6.0 if a file was stored as a large multi-page document ( but single page in documentum) then retrieval typically required entire document to be retrieved
– The API supported seeking through the file, but lacked content format awareness to make it easy on the applications to do so
ACS
8© Copyright 2008 EMC Corporation. All rights reserved.
Byte and page serving for improved random content access
The option of storing the file as separate content objects allowed for random access, but slowed down access of the whole set
ACS
9© Copyright 2008 EMC Corporation. All rights reserved.
Byte and page serving for improved random content access
TaskSpace allows for easy access to individual TIFF and PDF pages
Files now can be access quickly in a random page fashion or in a entire document fashion
ACS
10© Copyright 2008 EMC Corporation. All rights reserved.
Accelerated Content Services ACS technology
How do We Know ACS Page Serving is Working?– Verify the ACS URL– Verify the ACS Port– Observe the Amount of Data Sent Over– Observe the Time it Takes to View the Document
11© Copyright 2008 EMC Corporation. All rights reserved.
Accelerated Content Services ACS technology
Use the Daeja Viewer to Investigate ACS Performance
The “i” Button Invokes the ViewOne Pro Image Properties
Page
The “i” Button Invokes the ViewOne Pro Image Properties
Page
12© Copyright 2008 EMC Corporation. All rights reserved.
Accelerated Content Services ACS technology
Ensure URL Contains ACS Port and the Words “getpage”
File Length Should be In Kilobytes
Check the Network Time and Download Rate to Rule Out Network Issues
13© Copyright 2008 EMC Corporation. All rights reserved.
Accelerated Content Services ACS technology
Ensure URL Contains ACS Port and the Words “getpage”
http://plesys104:9080/ACS/servlet/ACS?command<EQ>getpage&version<EQ>2.0&docbaseid<EQ>0003dd&basepath<EQ>C%3A%5CDocumentum%5Cdata%5Ctaskspace%5Ccontent_storage_01%5C000003dd&filepath<EQ>80%5C00%5C06%5Cac.pdf&objectid<EQ>090003dd80003984&cacheid<EQ>dAAEAgA%3D%3DrAYAgA%3D%3D&format<EQ>pdf&pagenum<EQ>0&signature<EQ>bl91quoc1wlOcHRAAEDeJGrPY5n5wtDY6odJOaxiBbxefNAVGFU7MNWv6IyLDbwSBlSPDym%2FBsmt1%2FoANnHnVpAlk19bO60Jzma6Jw86rBOYfLDJc0v7rkUCmXzDA81O%2Fbzdevr0S0hhPp9frW9Ocvrcb4JuL9Hm%2BGvjB5Qdq9U%3D&servername<EQ>PLESYS104ACS1&mode<EQ>1×tamp<EQ>1210960811&length<EQ>1173153&mime_type<EQ>application%2Fpdf&page_plugin_name<EQ>com.documentum.pageaware.pdf.IPdfPageHandlerService&page<EQ>1&transient_delimiter<EQ>::
http://plesys104:9080/ACS/servlet/ACS?command<EQ>getpage&version<EQ>2.
14© Copyright 2008 EMC Corporation. All rights reserved.
Accelerated Content Services ACS technology
ivf_config.xml File Controls the Behavior of ACS– Set Content Server ACS ON/OFF– Set Document Serving Level or Page Serving Level
better
worse
15© Copyright 2008 EMC Corporation. All rights reserved.
Accelerated Content Services ACS technology
Three Essential Settings to Check in the ivf_config.xml File:
– Set Content Server ACS ON/OFF
– Set Page Serving Level or Document Serving Level
– Set Page Serving Level Threshold (in bytes)
16© Copyright 2008 EMC Corporation. All rights reserved.
Accelerated Content Services ACS technology
Additional ACS Configuration Information:– ivf_config.xml Located at {clientserver}\webapps\taskspace\wdk\config\imaging\ ivf_config.xml– Any Change to the File Requires Restarting the Application Server
17© Copyright 2008 EMC Corporation. All rights reserved.
Tuning TaskSpace For Performance
Tuning TaskSpace For Performance– Page Serving Using Accelerated Content Services– Custom Inbox, Custom Search, Folder Content Views
18© Copyright 2008 EMC Corporation. All rights reserved.
Custom Inbox -Example
Users Inbox Filled with Invoices Located in Many Different States
19© Copyright 2008 EMC Corporation. All rights reserved.
Custom Inbox -Example
Go Into Process Builder to View the Process Templates of the Tasks in the Inbox
20© Copyright 2008 EMC Corporation. All rights reserved.
Custom Inbox -Example
Double Click on the Initiate Step to See the Process Variables
21© Copyright 2008 EMC Corporation. All rights reserved.
Custom Inbox -Example
Process Variable is a Structured Data Type (SDT)
22© Copyright 2008 EMC Corporation. All rights reserved.
Custom Inbox -Example
The Attributes of the SDT Map to Columns in the Inbox to Expose Process Data
23© Copyright 2008 EMC Corporation. All rights reserved.
Custom Inbox -Example
Users Inbox Filled with Invoices Located in Many Different States
24© Copyright 2008 EMC Corporation. All rights reserved.
Custom Inbox -Example
What if the User only works on Invoices Located in California?
25© Copyright 2008 EMC Corporation. All rights reserved.
Custom Inbox -Example
Forms Builder Can Modify the Task List to Only Show the Tasks Relevant to the User
26© Copyright 2008 EMC Corporation. All rights reserved.
Custom Inbox
Pre-Define Searches to Only Show Relevant Tasks to the User
The Custom Inbox Wizard Below Will Only Show Tasks In the State of California
27© Copyright 2008 EMC Corporation. All rights reserved.
Custom Inbox -Example
Performance Considerations– The Search Criteria or Filter Defined in Forms Designer Will Not Create an Index Out of the Box– Indexes for Structured Data Type (SDT) Attributes Used in a Search Criteria or Task List Filter Need to be Created
28© Copyright 2008 EMC Corporation. All rights reserved.
Custom Inbox – Index SDT Attributes
What do We Know?– The Display Name of the SDT: Customer– The Attribute Being Filtered or Searched: State
29© Copyright 2008 EMC Corporation. All rights reserved.
Custom Inbox – Index SDT Attributes What do We Need to Find Out?
– DQL for “Put an Index On the State of Each Customer”– EXECUTE make_index WITH type_name=‘X',attribute=‘Y‘– X and Y– Type_name and attribute
30© Copyright 2008 EMC Corporation. All rights reserved.
API> retrieve,c,dmc_wfsd_type_info where sdt_name='cust’
0800270f80002505
API> dump,c,l
API> retrieve,c,dmc_wfsd_type_info where sdt_name=
0800270f80002505
API> dump,c,l
Custom Inbox – Index SDT Attributes
Use IAPI to Get element_type_name and attr_element_type_name
Contains All SDT Information
From Process Builder We Know the Display Name of the SDT: is Customer
31© Copyright 2008 EMC Corporation. All rights reserved.
USER ATTRIBUTES
sdt_name : cust
element_type_name : dmc_wfsd_cust
attr_display_name [0]: First Name
[1]: Street
[2]: State
attr_element_type_name [0]: attr3
[1]: attr16
[2]: attr17
Custom Inbox – Index SDT Attributes
Use IAPI to Get element_type_name and attr_element_type_name
API> retrieve,c,dmc_wfsd_type_info where sdt_name='cust’
0800270f80002505
API> dump,c,l
Object to Index (X Value)
Attribute to Index (Y Value)
We Know the Attribute Being Filtered is State
32© Copyright 2008 EMC Corporation. All rights reserved.
Custom Inbox – Index SDT Attributes
Use the Attributes to Create an Index
USER ATTRIBUTES
sdt_name : cust
element_type_name : dmc_wfsd_cust
attr_display_name [0]: First Name
[1]: Street
[2]: State
attr_element_type_name [0]: attr3
[1]: attr16
[2]: attr17
EXECUTE make_index WITH type_name='dmc_wfsd_cust',attribute='attr17'
Object to Index (X Value)
Attribute to Index (Y Value)
EXECUTE make_index WITH type_name=‘X’, attribute=‘Y’
33© Copyright 2008 EMC Corporation. All rights reserved.
Custom Inbox – Index SDT Attributes
Final Steps– Run Statistics on the Target Tables– Ensure Index Is Created
34© Copyright 2008 EMC Corporation. All rights reserved.
Custom Inbox – Index SDT Attributes
6 Steps to an Optimized Inbox– Know the SDT Display Name and Attribute Used in Filter or Search– Use Process Builder to Find the SDT Name From the Display Name– Use the SDT Name in IAPI to Find the Object and Attribute– Use the Object and Attribute to Create an Index Using DQL– Run Statistics– Verify the Index
35© Copyright 2008 EMC Corporation. All rights reserved.
Topics
Introduction to TaskSpace
Tuning TaskSpace For Performance– Accelerated Content Services (ACS) – Custom Inbox
Best Practices and Tuning Advice
Benchmark Results
36© Copyright 2008 EMC Corporation. All rights reserved.
Best Practices and Tuning Advice – App Server
Java Flags JAVA_OPTS=-server -Xms1024m -Xmx1024m -XX:MaxPermSize=256m -XX:UseParallelOldGC
-serverjvm server mode will provide better performance for long running tests. Has to be the very first flag
-XX:MaxPermSize=256mThe application dynamically generates and loads many classes
-XX:+UseParallelOldGCEnables -XX:+UseParallelGC automatically
JVM capacity– Heap size and threads control the amount of users the JVM can support
Accommodate 150 to 300 Users per JVM• Response times degrade with an increase in users• 150 Users recommended
768-1024 MB heap size• Less than 512 heap size results in out of memory errors• 1024 MB recommended
CPU will be the first resource to bottleneck on this tier Application Server tier is the most scalable tier in the system because there is no finite limit for additional
JVM or servers
37© Copyright 2008 EMC Corporation. All rights reserved.
Best Practices and Tuning Advice – Content Server
Additional Content Server needs to be added to support additional load– Installation of a second Content Server is trivial– Ensure the proximity of both Content Servers is the same
Sessions control the number of Oracle processes on the database– To control the number of Oracle processes (database bottleneck) limit the amount of
sessions the Content Server has– Decrease in sessions results in an increase in CPU
Additional Considerations– Turn Off Mail_Notification Unless it is necessary– Narrow down Audit Trails to the essentials
38© Copyright 2008 EMC Corporation. All rights reserved.
Best Practices and Tuning Advice – Database Server (Oracle Specific)
Oracle processes– Oracle spawns one Oracle process per Content Server session for TaskSpace users– Oracle processes consume the majority of the physical memory– Limit Oracle processes by limit the number of available sessions on the Content
Server
Database Parameters– The following database parameters are essential for TaskSpace
cursor_sharing = FORCE optimizer_mode = CHOOSE optimizer_index_cost_adj = 5 optimizer_index_caching = 95
– The database parameters can be found in the init.ora or through Oracle Enterprise Manager (OEM).
39© Copyright 2008 EMC Corporation. All rights reserved.
Topics
Introduction to TaskSpace
Tuning TaskSpace For Performance– Accelerated Content Services (ACS) – Custom Inbox
Best Practices and Tuning Advice
Benchmark Results
40© Copyright 2008 EMC Corporation. All rights reserved.
Benchmark Description
Data Composition:– 450 unique users.– Transaction mix comprised of 7 transactions.– Each user has 180 tasks in their individual task list.– Document Search spans 50,000 documents and searches on the document title.– Folder Search spans 50 folders, each folder contains 5 subfolders.– Daeja viewer is used for all document viewing. ACS and page-level serving is in place.
41© Copyright 2008 EMC Corporation. All rights reserved.
Benchmark Description
Data Composition (con’t):– The TaskSpace benchmark used 50%-150% think time and limited it to 10 seconds.– The TaskSpace benchmark used an average of 5-minute pacing (240-360 seconds).– Transactions and Hits Per Second
A hit is a request sent to the system. The LoadRunner controller defines this metric. A transaction is one or more hits sent to system. This is defined when writing the LoadRunner script.
Transactions Vs. Hits Per Second
02468
101214161820
100 200 300 450
Users
Avera
ge P
er
Seco
nd
Transactions Per Second
Hits Per Second
42© Copyright 2008 EMC Corporation. All rights reserved.
Benchmark Description
Database/Application Server– Two IBM eServer pSeries p5-
510 Four dual-core, 1.65 GHz,
64-bit POWER5 processors ~219 GB of internal disk, 3 x
7 3 GB 10K rpm Dual Channel Ultra320 SCSI disk drive assembly
8 GB of memory Dual Gigabit Ethernet ports One Fibre Channel
connected CLARiiON storage device via one Emulex 2 GB FC host bus adapter (HBA)
500 GB LUN carved out of a ~4.5 TB 15-drive DAE, RAID level 0
AIX 5.3
Content Server– One Dell 6850
Four Intel Pentium 4 80547 (LGA775) 3.66 GHz w/ HT enabled
12 GB of memory Dual Gigabit Ethernet ports 1 TB Internal SCSI Windows 2003 Server Two Content Servers
installed
Total Hardware Under $50,000
43© Copyright 2008 EMC Corporation. All rights reserved.
CPU Utilization
44© Copyright 2008 EMC Corporation. All rights reserved.
Memory Utilization
45© Copyright 2008 EMC Corporation. All rights reserved.
Response Times
46© Copyright 2008 EMC Corporation. All rights reserved.
Case Study – ACS Failover
better
worse
47© Copyright 2008 EMC Corporation. All rights reserved.
Case Study – ACS Failover
better
worse
48© Copyright 2008 EMC Corporation. All rights reserved.
Case Study – ACS Failover
ACS Page Serving On
49© Copyright 2008 EMC Corporation. All rights reserved.
Case Study – ACS Failover
ACS Page Serving OFF
50© Copyright 2008 EMC Corporation. All rights reserved.
Recap
TaskSpace is a configurable application for efficient task processing
Key features that enable TaskSpace for optimal performance– Accelerated Content Services (ACS) – Indexed Custom Inbox
Best Practices
Expected Results– 450 users– <2.5 seconds response time– scalable on all tiers– hardware < $50,000
51© Copyright 2008 EMC Corporation. All rights reserved.
recap
52© Copyright 2008 EMC Corporation. All rights reserved.
53© Copyright 2008 EMC Corporation. All rights reserved.
Benchmark Description
Think Time vs. Pacing– Think time is defined as time a user would take to read or analyze the information received after
an action. Setting a random percentage will enable the user to get realistic behavior. – The TaskSpace benchmark used 50%-150% think time and limited it to 10 seconds.
54© Copyright 2008 EMC Corporation. All rights reserved.
Benchmark Description
Think Time vs. Pacing– Pacing is defined as time a user would take to read or analyze the information received after an
iteration comprised of one or more actions. Setting a random percentage will enable the user to get realistic behavior.
– The TaskSpace benchmark used an average of 5-minute pacing (240-360 seconds).
55© Copyright 2008 EMC Corporation. All rights reserved.
ACS Diagram
Partial retrieval of Content
App Server
2. Request Object
1. Select Document to View
5. ReturnObject’sURL
3. RequestObject’sURL
6. ReturnObject’s URL
9. Request Page 1 from Object’s URL
10. ReturnPage 1
Content Server
Browser
Image Manager
Viewer
7. Send Object’s URL
11. Display Page 1
8. Store Object’s URL
ACS
4. Check ACL
Page Aware Plug-in