Working with the new FSP dispersion rules

In a previous post I provided instructions for how you can remove the dispersion directories that are present in the default storage rule in the PS3 release of UCM (11.1.1.4.0). In this post I will describe a suggested approach for working with the new dispersion rules so that new content takes advantage of the dispersion rules but migrated content uses the legacy file paths so it will retain its current web URL.

Adding dispersion directories to the vault and web layout paths is a good idea. In most implementations I have seen you do not get good enough dispersion generated by having the security group, account, and doc type fields in the file paths. For large volume implementations (more than a few hundred thousand content items) you are going to end up with thousands of files in each directory in the vault and web-layout directories. This can really impact performance, especially on Windows systems.

So, adding this feature to the default FSP rule in PS3 will help many UCM implementations improve performance, but we need a way to retain the legacy web-layout path for content migrated from previous versions of UCM so that the web URL stays the same.

A suggested method for doing this is to leave the default storage rule that comes with PS3 as-is so that all new content will use the dispersion directories, and create a new storage rule that does not contain the dispersion directories. The new storage rule without the dispersion directories will be used for content migrated from previous versions of UCM. That way any content migrated from a previous version will retain its web URL.

Follow the steps below to create a new storage rule that does not contain the dispersion rules to be used for migrated content.


  1. Navigate to the Providers page.
  2. fsp02_01.jpg

  3. Click on the Info link for the DefaultFileStore provider.
  4. fsp02_02.jpg

  5. Click the Edit button.
  6. fsp02_03.jpg

  7. In the Storage Rules drop down select add new rule and click the Edit rule button.
  8. fsp02_04.jpg

  9. On the storage rule page enter legacy for the storage rule name. Leave the rest of the fields with the default values and click the OK button.
  10. fsp02_05.jpg

  11. Click the OK button.
  12. fsp02_06.jpg

  13. Click the Update button to save the changes and return to the Providers page.
  14. fsp02_07.jpg

  15. Before you restart the UCM managed server you must edit the providers.hda file to remove the dispersion directories from the legacy storage rule you have just created. Edit the following file:

    domain_directory/ucm/cs/data/providers/defaultfilestore/provider.hda

  16. Find the section of the file with the entries for the legacy storage rule you just created and replace

    vault
    $#env.VaultDir$$dDocType$/$dDocAccount$/$dispersion$/$dID$$ExtensionSeparator$$dExtension$


    legacy
    web
    $FsWeblayoutDir$groups/$dSecurityGroup$/$dDocAccount$/documents/$dDocType$/$dispersion$/~edisp/$dDocName$$RenditionSpecifier$$RevisionLabel$$ExtensionSeparator$$dWebExtension$


    legacy
    weburl.file
    $FsHttpWebRoot$groups/$dSecurityGroup$/$dDocAccount$/documents/$dDocType$/$dispersion$/~edisp/$dDocName$$RenditionSpecifier$$RevisionLabel$$ExtensionSeparator$$dWebExtension$


    legacy
    dispersion
    $dRevClassID[-9:-6:0:b]/$dRevClassID[-6:-3:0:b]


    legacy
    FsWeblayoutDir
    $#env.WeblayoutDir$


    legacy
    FsHttpWebRoot
    $HttpWebRoot$


    legacy

    with

    vault
    $#env.VaultDir$$dDocType$/$dDocAccount$/$dispersion$/$dID$$ExtensionSeparator$$dExtension$


    legacy
    web
    $FsWeblayoutDir$groups/$dSecurityGroup$/$dDocAccount$/documents/$dDocType$/$dDocName$$RenditionSpecifier$$RevisionLabel$$ExtensionSeparator$$dWebExtension$


    legacy
    weburl.file
    $FsHttpWebRoot$groups/$dSecurityGroup$/$dDocAccount$/documents/$dDocType$/$dDocName$$RenditionSpecifier$$RevisionLabel$$ExtensionSeparator$$dWebExtension$


    legacy
    dispersion
    $dRevClassID[-9:-6:0:b]/$dRevClassID[-6:-3:0:b]


    legacy
    FsWeblayoutDir
    $#env.WeblayoutDir$


    legacy
    FsHttpWebRoot
    $HttpWebRoot$


    legacy


  17. Save the file and restart the UCM managed server.

  18. Return to the edit storage rule page for the legacy storage rule to see that your changes have been made.

    fsp02_08.jpg


Your new storage rule has been created and your new instance should be ready to either import content from a previous release of UCM or check in new content. When you migrate content from previous releases of UCM make sure that the xStorageRule field is set to legacy so that the web-viewable path will not contain the dispersion directories. Any new content checked into the instance will use the dispersion directories. When you are setting up your profiles and rules for the new system make sure that when a new revision of a migrated content item is checked in it retains the legacy value in the xStorageRule field. That way migrated content will always have the same web-viewable path even after it is updated on the new system.

Comments:

Hi Kevin,

Thanks for this info.

Is that possible to change the storage rule of an existing content?

Actually would like to change the StorageRule back to the default one (with dispersion) whenever an update happens to the migrated content.

Posted by PDS on June 20, 2012 at 04:29 AM CDT #

Post a Comment:
  • HTML Syntax: NOT allowed
About

Kevin Smith is a Technical Director in Oracle Consulting's WebCenter practice. He has been working with content management products since 2004 when he joined Stellent.

Search

Archives
« April 2014
SunMonTueWedThuFriSat
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
Today