How to reduce eSync duration

  • Updated

Here are some ways that you can reduce the duration of full syncs.

  1. Examine your sync profile and remove unnecessary items. This screenshot shows the default sync options.
    • Database options
      • CMSCore
        • This is the most critical sync profile option as it syncs most of the Ektron tables. At least one of your sync profiles need to have this option. 
      • Workflow
        • This is very rarely used. If you are using Ektron eCommerce you may need this checked.
      • History
        • This option syncs content history. If you make an edit to a content item, it will save the previous version in the content history. Often times this option can be unchecked as content history usually isn't needed on production. 
      • ASP.NET
        • This may be needed(but usually is not) depending on development requirements. It syncs the following tables. 
          aspnet_Applications, aspnet_Users, aspnet_SchemaVersions
      • Search
        • If you plan to add suggested search results, phrases, search synonyms or search mappings you may need to sync this. 
      • Notification
        • This is commonly used for community notifications. It is rarely synced.
      • User Generated Files(UGC)
        • This includes user created content like blogs and forums.
    • Files
      • Templates
        • These are code files like .aspx and .aspx.cs pages. 
      • Assets, private assets, uploaded files, and uploaded images
        • File sync can be extremely time consuming but is usually needed.

  2. In addition to removing sync options you can break up syncs into separate sync profiles. In cases where you need to get content live quickly, create a sync profile that only has the high priority data. For instance, if you are trying to move blogs and it is a high priority, create a sync profile with just UGC selected. 

  3. Upgrade to the latest service pack, site cumulative update, and service CU on all servers in sync relationships. In 9.2 an issue was fixed which was causing a table to grow faster than it should. Fixing that will result in shorter syncs in the long term. 

    Service Pack Installation
    Cumulative Update Installation

  4. Clean up your sync tables and remove unnecessary data. 

    • If you are syncing content_history a great way to increase sync speed is to delete content history. This can be done through the UI or code. Do this before syncing to a min database.

    • To clean up your sync tables your best bet is to sync to a min database after running cms_remove_all_sync_components.

      WARNING: Running cms_remove_all_sync_components should only be done when syncing to a min database or doing a backup and restore sync(if interested, request these steps from support). Only run this if on 9.1SP3 or later.  

      Also be careful to ensure that the database you use as the source database has all needed data. For instance, if you need content history you most likely cannot use the production database as the source since content history is not synced by default(for good reason). If you have user generated content on production you may want to sync it down to your authoring site before doing the above.

      1. Setup a maintenance window(will vary depending on size of database). 
      2. Setup a min database on either staging or prod.
      3. Run the following SQL on the populated database.
        exec cms_remove_all_sync_components
      4. Log into staging and create a new sync relationship.
      5. Ensure the direction of the sync sends data into the min database(which could be on prod or staging).
      6. Register your min site with your search provider.