Skip to main content
Hitachi Vantara Knowledge

Compression/Encryption service

The Compression/Encryption service compresses object data to make more efficient use of HCP storage space. The space reclaimed by compression can be used to store additional objects.

Depending on the types of objects stored, compression can provide a significant benefit. For example, email objects compress very well.

The Compression/Encryption service runs according to the active service schedule.

Note

The Compression/Encryption service does not compress object data if:

  • The data is stored in a namespace that has S Series storage set as the ingest tier.
  • The data is stored on extended storage.

Compression/Encryption service processing

When the Compression/Encryption service runs, it checks each object that’s eligible for compression. If the object isn’t already compressed, it compresses it. If compressing the object doesn’t reduce its size (for example, because it’s already in a compressed format), the Compression/Encryption service marks it as uncompressible and doesn’t try to compress it again in future runs.

You control which objects are eligible for compression by setting criteria in the System Management Console.

In addition to compressing whole objects, the Compression/Encryption service can compress:

  • Parts of multipart objects
  • Chunks for erasure-coded objects
  • Chunks for erasure-coded parts of multipart objects
  • Full copies of the data for objects and parts that are subject to erasure coding before those copies are reduced to chunks

For the purpose of compression:

  • HCP treats parts of multipart objects as individual objects. Eligibility for compression is based on the individual part size, not on the size of the object as a whole.
  • HCP treats chunks for erasure-coded objects and chunks for erasure-coded parts of multipart objects as individual objects. However, eligibility for compression is based on the size of the whole object or part before erasure coding.

By default, the Compression/Encryption service runs only on primary storage. However, you can configure HCP to run the Compression/Encryption service on extended storage as well.

If an object, part, or chunk that was not eligible for compression becomes eligible, the Compression/Encryption service compresses it on its next run. Similarly, if a compressed object, part, or chunk loses its eligibility for compression, the Compression/Encryption service decompresses it on its next run.

NoteMultiple objects, parts, or chunks merged by the Duplicate Elimination service may have differing eligibility for compression. If any one of the objects, parts, or chunks is eligible for compression, the merged object, part, or chunk data is compressed.

Understanding compression statistics

The Compression page in the HCP System Management Console displays statistics about the space saved by the Compression/Encryption service. It also lets you control various aspects of compression activity.

NoteTo view the Compression page, you need the monitor or administrator role. To change compression settings, you need the administrator role.

To display the Compression page, in the top-level menu of the System Management Console, select Services Compression.

The Compression page shows:

  • Total bytes saved by compression

    The current number of bytes of storage freed by compressed objects, object parts, and chunks for objects and object parts

  • Percent of storage saved

    The amount of storage space currently saved by compression, expressed as a percentage of the total space available for storing objects

  • Number of objects and object parts compressed

    The total number of these items currently compressed: objects, parts of multipart objects, chunks for erasure-coded objects, and chunks for erasure-coded parts of multipart objects

The page also shows the current compression settings.

Changing compression settings

You can control which objects and object parts HCP compresses based on these properties:

  • Age

    You can compress only objects and parts that were added to the repository more than some number of days ago.

  • Size

    You can compress only objects and parts whose content is larger than a specified size. HCP compresses the parts of multipart objects individually based on the size of the part. HCP never compresses objects or parts smaller than seven KB.

  • Location

    You can exclude from compression objects and parts that are located in a specified directory or in any subdirectories of that directory, recursively.

  • Name

    You can exclude from compression objects and object parts where the object name matches a pattern you specify. For example, you might choose to exclude objects with names that match *.jpg because the data for this type of object is already highly compressed.

To be eligible for compression, an object or part must meet all the criteria you specify.

Chunks of erasure-coded objects and parts are compressed based on the eligibility of the applicable object or part.

Note

The criteria you specify apply across all namespaces.

HCP always compresses old versions of objects, regardless of age, size, and any specified exclusion criteria.

HCP does not compress parts of in-progress multipart uploads, parts of a multipart upload that have been replaced, parts of an aborted multipart upload, or unused parts of completed multipart uploads.

How to change compression settings

To change the settings for the Compression/Encryption service, on the Compression page in the System Management Console:

  • In the Compression Settings section, configure the settings that you want to use:
    • To compress only objects and parts added to a namespace more than a certain number of days ago, type the number of days in the Compress objects stored more than field. Valid values are integers in the range zero through 40,000.

      A value of zero tells the Compression/Encryption service not to use age as a criterion when selecting objects and parts to compress.

    • To compress only objects and parts larger than a certain size, type the size, in KB, in the Compress objects larger than field. Valid values are integers in the range zero though 104,857,600 (100 GB).

      A value of zero tells the Compression/Encryption service not to use size as a criterion when selecting objects and parts to compress.

    Then click Update Settings.

  • To exclude objects and parts from compression based on location or name, specify the criteria for exclusion in the Exclude from Compression list:
    • To add a criterion to the list, type the criterion in the field above the list. Then click Add.
    • To remove a criterion from the list, click the delete control (Delete control icon) for that criterion.
    • To remove all criteria from the list, click Delete All.

Exclusion criteria

You can exclude objects and parts from compression based on location, name, or a combination of the two. Locations are paths relative to the namespace identification plus any protocol-specific identifiers, such as rest for HTTP or data for the CIFS protocol.

For object names, you can use patterns. The wildcard character for pattern matching is the asterisk (*), which matches any number of characters of any type, including none.

The format for criteria in the exclude list is:

[/directory-path/]object-name-pattern

The initial forward slash (/) is required with a directory path.

Here are some examples:

  • Either of these excludes all objects and parts in the corporate/mktg/graphics directory, as well as all objects and parts in all subdirectories of that directory, recursively:
    /corporate/mktg/graphics/*
    /corporate/mktg/graphics/*.*
  • This excludes all objects and parts with names ending in .jpg:
    *.jpg
  • This excludes all objects and parts that have names ending in .ppt and that are in the /corporate/hr/benefits directory or any of its subdirectories, recursively:
    /corporate/hr/benefits/*.ppt
  • This excludes all objects and parts that have names matching 21*_*.* (for example, 2198_John_Doe.doc) and that are in the corporate/hr/employees directory or any of its subdirectories, recursively:
    /corporate/hr/employees/21*_*.*

 

  • Was this article helpful?