• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
  • Skip to footer
TSB Alfresco Cobrand White tagline

Technology Services Group

  • Home
  • Products
    • Alfresco Enterprise Viewer
    • OpenContent Search
    • OpenContent Case
    • OpenContent Forms
    • OpenMigrate
    • OpenContent Web Services
    • OpenCapture
    • OpenOverlay
  • Solutions
    • Alfresco Content Accelerator for Claims Management
      • Claims Demo Series
    • Alfresco Content Accelerator for Policy & Procedure Management
      • Compliance Demo Series
    • OpenContent Accounts Payable
    • OpenContent Contract Management
    • OpenContent Batch Records
    • OpenContent Government
    • OpenContent Corporate Forms
    • OpenContent Construction Management
    • OpenContent Digital Archive
    • OpenContent Human Resources
    • OpenContent Patient Records
  • Platforms
    • Alfresco Consulting
      • Alfresco Case Study – Canadian Museum of Human Rights
      • Alfresco Case Study – New York Philharmonic
      • Alfresco Case Study – New York Property Insurance Underwriting Association
      • Alfresco Case Study – American Society for Clinical Pathology
      • Alfresco Case Study – American Association of Insurance Services
      • Alfresco Case Study – United Cerebral Palsy
    • HBase
    • DynamoDB
    • OpenText & Documentum Consulting
      • Upgrades – A Well Documented Approach
      • Life Science Solutions
        • Life Sciences Project Sampling
    • Veeva Consulting
    • Ephesoft
    • Workshare
  • Case Studies
    • White Papers
    • 11 Billion Document Migration
    • Learning Zone
    • Digital Asset Collection – Canadian Museum of Human Rights
    • Digital Archive and Retrieval – ASCP
    • Digital Archives – New York Philharmonic
    • Insurance Claim Processing – New York Property Insurance
    • Policy Forms Management with Machine Learning – AAIS
    • Liferay and Alfresco Portal – United Cerebral Palsy of Greater Chicago
  • About
    • Contact Us
  • Blog

Documentum or Alfresco – Performance for viewing documents in browser based applications.

You are here: Home / Alfresco / Documentum or Alfresco – Performance for viewing documents in browser based applications.

January 27, 2015

I was talking with a client yesterday that is building a custom application and the topic of viewing performance came up, specifically, “which viewer is the fastest”?  The client has looked at a number of common options.  This post will discuss the many components of document viewing performance that are similar for Documentum or Alfresco.

Documentum or Alfresco Viewing Performance Background

Typically, to initiate a view, a user needs to perform a search, open a folder or review an inbox/alert listing.  In all of these scenarios, a list of documents or the document itself is displayed.  It is always assumed that if the user can see the search result, inbox item, or alert, then the user has read access to the document.  This post will not address performance of search, folder or inbox listing but focus on what happens once the document link is clicked.

Once the document is selected, typically six steps occur:

  1. The request for the document is sent to the application server.
  2. The application server requests the document from Documentum or Alfresco. We’ll call this the “ECM server”
  3. The Documentum or Alfresco database is accessed to find the pointer to the content, typically in a SAN.
  4. The document is retrieved from the SAN. If the document needs to be converted to a viewing format (example Word to an Image File), this typically happens in this step.   Most “off-the-self” annotation tools will convert the documents into a common format for their annotation server at this step.
  5. The application server streams back the document contents to the browser. Based on the type of content returned (based on mime type), the browser can determine how to view the content appropriately.
  6. The browser opens the content in the appropriate viewer.

Some easy buy versus build performance improvements include:

  • Network speed – This is typically 95% of the performance bottleneck based on document size. Not as much as an issue now but early on we would see great applications limited in performance by bad networks.  At one client, our application had to compete against other web traffic over a satellite link.  It doesn’t matter how fast a car is if it is stuck in a traffic jam.  Spending money on network bottlenecks always results in better performance.
  • Memory – Improving the memory of the application server cache as well as Documentum or Alfresco for the database is also an inexpensive way to improve performance.  For the fastest performance, we recommend using ehCache, an open source caching framework that caches the most recently used documents in memory and writes the least accessed documents to disc.
  • Additional CPU Processing Power – improving processing power for the transformation engine will improve performance, especially if transformations happen on every view.

Predictive Retrieval – How to improve user viewing performance

Documentum viewing performance is all about improving each of the 6 steps listed previously.  Outside of the network or the requesting client device, the best performance improvement focuses on Predictive Retrieval.  Predictive retrieval is based on a business scenario, can the application retrieve the documents from Documentum or Alfresco, convert them to the correct format and place them on the application server BEFORE the user selects the document.  To illustrate this point, compare a normal retrieval to a predictive retrieval.

Normal Retrieval Predictive Retrieval
  • User Opens a Folder to get a listing of Documents
  • User Opens a Folder to get a listing of Documents
  • User, after reviewing the folder, clicks on a document
  • System retrieves all folder documents from repository
  • User waits while the application server contacts the repository to locate the file
  • System converts and places documents on application server
  • User waits while the system converts and places the document on the application server
  • User, after reviewing the folder, clicks on a document
  • Document is retrieved over the network and viewed in the browser.
  • Document is retrieved over network and viewed in browser

The key to understanding the predictive retrieval is anticipating what will be viewed and having it ready on the application server before the user requests the document.  In this manner, the user isn’t waiting for the repository actions or movement of the document from the SAN to the application server.  Some common predictive retrieval strategies:

  • Retrieve all documents (or newest ones) from a folder once the folder is requested.
  • Retrieve all documents (or newest ones) from an inbox once the inbox is retrieved or at the beginning of each day.
  • Retrieve annotation images when the document is being viewed.
  • Retrieve all documents (or newest ones) from a search result when the search result is requested.

HPI and OpenContent – Document Viewing Performance

For our product, the High Performance Interface (HPI), we focus on PDF viewing for most document types if they are not image formats like JPG or GIF.  To speed up viewing performance, we typically recommend that the repository be configured to rendition all documents into PDF upon import so that users aren’t waiting on the documents to be converted at view time.

Also, the PDF format has one advantage for viewing large documents over other document types is that documents can be optimized for web viewing called Fast Web View.  This format allows for page-at-a-time downloading (byte serving) from web servers.  Users can view the first page of a large document when the other pages are being retrieved.

HPI can also utilize the browser’s built-in caching abilities.  For example, the first time a user requests a document, we can return the associated content.  However, the next time the user requests the document, OpenContent can detect whether or not the document has changed.  If not, OpenContent will return a 304 (Not Modified) response.  The browser then displays the document from its cache.  This approach avoids two of the “heavy lifting” steps.  If the document was not modified, it is not retrieved again from Documentum or Alfresco, and there is no need to stream the document contents over the network to the browser.

OpenAnnotate – Document Viewing Performance

OpenAnnotate is a browser based viewing and annotation tool.  To allow viewing and annotation of documents by the browser, PDF documents are converted to multiple one page PNGs before being retrieved by the browser.  To improve performance, this conversion can be predicted and take place before the documents are requested by the user.

If the annotation isn’t predicted, OpenAnnotate will request conversion of all pages (in parallel) when the first page is requested.  In this manner, similar to the Weboptimized PDF document, the user will have very quick paging when asking for all pages after page 1.

Additionally, OpenContent will cache these images on the application server.  This way, when the document is requested again, either by the same user or a different user, the page images are reused.  Only when the document is updated does the cache need to be refreshed.

 Summary

In addition to normal ECM tuning, memory and network performance, ECM architects should look for ways to utilize predictive retrieval and conversion of documents from the repository to reduce the time users spend waiting for ECM activities.  Performance can be improved by converting or renditioning into viewable formats before the user requests the view as well as caching within the browser or application server

If you have any other thoughts on performance, please provide below.

Filed Under: Alfresco, Documentum, OpenAnnotate, OpenContent Management Suite

Reader Interactions

Leave a Reply Cancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Primary Sidebar

Search

Related Posts

  • Adobe Acrobat Alternative – Doing more with just a web browser
  • Alfresco or Documentum – Improving Performance Perceptions with OpenAnnotate
  • Documentum and Alfresco – Salesforce Integration for Contract Management
  • Documentum – Top Tips for 2016
  • Documentum or Alfresco – Bulk Upload and “Heads up” indexing
  • Next Generation ECMS – Architecture Thoughts
  • Alfresco or Documentum Collaborative Document Reviews with OpenAnnotate
  • TSG Learning Zone Updated with HPI 2.1 Demos!
  • Documentum – EMC World/Momentum 2013 – TSG Recap
  • Documentum and Alfresco Solutions – Compliance Solution for Regulated Industries – Demo Series

Recent Posts

  • Alfresco Content Accelerator and Alfresco Enterprise Viewer – Improving User Collaboration Efficiency
  • Alfresco Content Accelerator – Document Notification Distribution Lists
  • Alfresco Webinar – Productivity Anywhere: How modern claim and policy document processing can help the new work-from-home normal succeed
  • Alfresco – Viewing Annotations on Versions
  • Alfresco Content Accelerator – Collaboration Enhancements
stacks-of-paper

11 BILLION DOCUMENT
BENCHMARK
OVERVIEW

Learn how TSG was able to leverage DynamoDB, S3, ElasticSearch & AWS to successfully migrate 11 Billion documents.

Download White Paper

Footer

Search

Contact

22 West Washington St
5th Floor
Chicago, IL 60602

inquiry@tsgrp.com

312.372.7777

Copyright © 2023 · Technology Services Group, Inc. · Log in

This website uses cookies to improve your experience. Please accept this site's cookies, but you can opt-out if you wish. Privacy Policy ACCEPT | Cookie settings
Privacy & Cookies Policy

Privacy Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these cookies, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may have an effect on your browsing experience.
Necessary
Always Enabled
Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.
Non-necessary
Any cookies that may not be particularly necessary for the website to function and is used specifically to collect user personal data via analytics, ads, other embedded contents are termed as non-necessary cookies. It is mandatory to procure user consent prior to running these cookies on your website.
SAVE & ACCEPT