IBM FileNet P8, Version 5.2            

Storage policies

A storage policy provides mapping to specific physical storage areas and is used to specify where content is stored for a class or object with content (for example, a document). Content Platform Engine supports the mapping of storage policies to one or more storage objects. Each storage policy can have one or multiple storage areas as its assigned content storage target.

Farming

A storage area farm is a group of storage areas (a subset of the available storage areas) acting as a single logical target for content storage. With farming, Content Platform Engine provides load-balancing capabilities for content storage by transparently spreading the content elements across multiple storage areas.

Therefore, the storage policy functions as both the mechanism for defining the membership of a storage area farm, and also the means for assigning documents to that farm.

Assigning storage areas to a storage policy

You can assign storage areas to a storage policy by selecting storage areas from a list of available storage locations or by creating a filter expression to explicitly assign storage areas based on a customized string expression. If you choose to select storage areas from a list, Content Platform Engine translates that list into a filter expression.

Storage policy filter expression

The storage policy filter expression is a string valued property that behaves in the same manner as a WHERE clause of a SQL SELECT statement. You can edit the filter expression directly to select storage areas that meet specific user requirements.

This filter expression always implicitly includes AND AreaStatus=Open. Note that it is not a requirement that the storage areas that satisfy the criteria are all the same type. The filter criteria, however, are restricted to the queryable properties of the StorageArea class and subclasses; thus, the statistical properties (displayed in red in the storage area properties grid) are excluded from consideration.

Table 1. Examples of storage policy filter expressions
Filter Expression Value Result
(1>0) Matches all Storage Areas
IsClass(Source,DatabaseStorageArea) Matches only the single database storage area in an object store
IsClass(Source,FileStorageArea) Matches all File Storage Areas
IsClass(Source,FixedStorageArea) Matches all Fixed Storage Areas
Id IN ({A178B949-9B20-42EA-B58E-03175AD3879C}) Matches the Storage Area with ID = A178B949-9B20-42EA-B58E-03175AD3879C
Id IN ( {GUID1}, {GUID2} ) Matches a farm of multiple storage areas with IDs = GUID1 and GUID2
IsClass(Source,FixedStorageArea) AND DisplayName like 'DR550StorageArea%' AND RetentionPeriod > 2628000

(In this example, the retention of 2628000 is expressed in minutes.)

Matches DR550 storage with at least five years of retention. (2628000 = 60 minutes per hour x 24 hours per day x 365 days per year x 5 years)
   

Storage policies, in general, are used primarily for farming documents to multiple storage areas. The storage policy filter expression gives you more control over how to specify which storage area or areas will be used. For example, if you want documents of a particular class to be farmed to any of three high speed network-attached storage (NAS) devices, then you can define a naming convention for the file storage areas (one for each NAS, such as FastNAS1, FastNAS2, and FastNAS3).

Then, you can create a storage policy:

   ISCLASS(Source,FileStorageArea) AND DisplayName like 'FastNAS%'

This storage policy can then be assigned to a document class.

Default storage policy

When an object store is created, a default database storage area is created in the open state and is the default storage area for those classes that can store content. A default storage policy is also created, with no filter expression so that all open storage areas are available for content storage.

Create a storage policy

The New Storage Policy wizard guides you through the process of creating a storage policy and assigning to it a list of storage areas. The available storage policies for an object store are then displayed in the Storage Policies folder.

After a storage policy is created, it can be assigned as the default storage policy for class objects, thus giving the class objects a pointer to a physical storage location for storing content.

Note:
  • Assigning a storage policy to a document is optional. The alternative is to assign a storage area directly to the document.
  • The storage area that is assigned to a reservation of a checked-out document is not inherited from the parent document; rather, the storage area is determined by reevaluating the storage policy of the parent document.
  • If both StorageArea and StoragePolicy are set, the former takes precedence. Therefore, a default would normally be set for only one of these properties.
  • If neither property is set or if only StoragePolicy is set but it evaluates to an empty collection of storage areas, the StorageArea property is set to null; if the object has no content, it will not be possible to add content to the object. If you later try to add content to this document, the operation will fail. However, if you use a moveContent command on the document, you are assigning it a storage area, and you can now add content to the document.


Feedback

Last updated: June 2013
cs_stp_about_storage_policies.htm

© Copyright IBM Corporation 2014.
This information center is powered by Eclipse technology. (http://www.eclipse.org)