About performance analyzer

The performance analyzer can help you improve app performance. It analyzes and provides recommendations to improve Quick Base performance when running reports, displaying forms, performing searches, viewing table home pages, sending email notifications, and saving records. It analyzes reports that are called directly, from an API, or from a table home page.

When enabled, a link to Analyze performance displays in the user dropdown on the Global bar. All users can then start measuring the performance of their own actions for the next ten minutes and view an analysis of time spent calculating each filter, field, form element, notification, etc.

The performance analyzer is not available in Internet Explorer.

To enable the performance analyzer:
  1. From the app Home page, click SETTINGS.

  2. Click App properties, then click Advanced Settings to expand the section.

  3. Under Performance options, click Show performance analyzer.

  4. Click Save. A link to Analyze performance displays in the user dropdown on the Global bar.

Analyzing performance

If the app administrator has enabled the performance analyzer for the application:

  1. Click the user dropdown on the Global bar, then click Analyze performance. A message displays, indicating that the performance analyzer will track performance for the next 10 minutes.

  2. Access the areas that you want to analyze; for example, a report, form, search, etc.

  3. When you are finished, click the user dropdown on the Global bar, then click Get performance details.
    If Get performance details (no details yet) displays, that indicates that you have just started performance analysis and have not submitted a request, or your actions have taken place on pages, such as Settings, that are not currently monitored.)

  4. The analysis displays. It includes the name, the time you accessed the page, and a history of the last 10 areas you have analyzed.

  5. Beginning with the most time-consuming category, click to view details about the request and recommendations for improving performance.

  6. When you are finished analyzing, click Stop analyzing performance.

Using analysis to improve performance

Depending upon the areas that you analyzed, different categories may display, along with the amount of time spent performing the action.

The time displayed does not include the time you may wait for the app to load or for other requests to be processed. It also doesn’t measure network latency or how long the browser spends rendering the page after the data is received.

On occasion, the time for a field may display as 0.0 seconds but show a percentage. This is due to rounding. A field that returns fast enough to round to 0.0 is not impacting system performance; you can ignore it.

Recommendations to improve performance within each category

Display column

Filtering

Filtering includes applying the initial filters (matching criteria), calculating the values of dynamic filters, and applying permissions.

To improve performance:

Other processing time

Why might a query have a lot of Other processing time?

For the sake of simplicity, we don’t try to categorize everything Quick Base does in a request. We try to highlight categories that you can control— identifying particular fields or matching criteria so you can decide if they are really necessary, or whether there is a simpler way to get the data you need.

Other processing time may be correlated to the total amount of data on the page (number of records, number of columns) but is not directly tied to any particular field. You’ll see a greater percentage of Other processing time on shorter requests because Quick Base spends a fixed amount of time for every query; that amount of time is relatively small, but if the entire query happens very quickly, it may seem like a high percentage. Also, the performance analyzer itself adds processing time, as it starts and stops the timers and collects the statistics on each field.

Search

When you search from the navigation bar in your application, Quick Base looks for the search term in all searchable fields in the current table, or across the entire application. While this is very convenient, if you have large tables with many fields, it can be slow.

To improve performance:

Sorting and grouping

Recommendations for sorting and grouping:

Sorting

In this example, a report was returning 1,007,676 records, so the biggest time constraint was sorting all of them. Sorting requires looking at all the records, often multiple times. Additionally, if the field you’re sorting by includes duplicates, Quick Base looks at the default sort field to determine which one to show first. In this case, the field chosen to sort by, Milestone Code had only a few dozen different values, so there were a lot of duplicates and the sort had to use the Date Modified field frequently as a tie-breaker.

Sorting just by Date Modified improved the performance (from 95 seconds to 51), but sorting a result set that big is always going to take a long time. It is rarely useful to page through a million records, so it is both faster and a better user experience to filter a report.

For example, when this report is filtered to show only the last month’s records, the time to display the report is reduced dramatically (from 95 seconds to less than 20—a 79% improvement).

Grouping

In this example, almost all the time was spent calculating a custom column because the column used a complex formula based on a summary field of a table with custom permissions. Grouping by a simpler value (a multiple choice field, requiring no calculation) reduced the time from over 10 seconds to 1.6: an 84% improvement. If your business logic requires grouping by a complicated calculation, be aware of the cost, so that you can make an informed trade-off between functionality and performance.

Subtotals

Saving a record

Quick Base performs a number of steps when saving a record. This includes sending email notifications and redirecting to a new page (for example, displaying a newly added record or returning to a report.) If the most time-consuming category on the left:

Notifications

Most of the time, if saving a record takes a long time, it is because notifications are being sent to a long list of recipients.

To improve performance:

Note: There may be fewer notifications listed to the left than are configured for this action if some notifications are disabled or have identical names and owners.

Build email message

If you include a copy of a record in the body of an email, Quick Base generates a separate message for each recipient because each recipient may have different field-level permissions or values in formula fields.

To improve performance:

Generate changed field list

The performance analyzer tells you how many users the changed field list was evaluated against.

For each recipient of a notification, Quick Base checks the permissions for all the fields that were changed to determine whether the recipient is allowed to see the changed values. If a recipient is not permitted to see any of the fields that were changed, he will not receive the notification.

You can see how many messages were actually sent by clicking 'Build email message.'

Grid edit

Grid edit saves multiple records at one time. It checks permissions and makes sure required and unique fields are present and unique, but it does not execute any form rules.

Grid edit generates one email message for each configured notification, no matter how many records were added or modified.

Check for data entry errors

Most data entry errors are caught before the form is submitted, but unique fields and some form rules are evaluated when the record is saved.

If this check is taking a long time, it may be because there are unique fields on the form and many records in the table that must be evaluated to ensure that the value is unique.

Other techniques

You also can optimize Quick Base performance by using one of the recommended browsers.

 

Go back      |       |   

© 1999-2018  QuickBase, Inc.  All rights reserved.  Legal Notices.