Data Archive Jump Start



Get Well Knowledge Article

Data Archive Jump Start

A step-by-step guide to archiving CMDB data

Data Archive Jump Start

The archive application moves data that is no longer needed during daily operations from the CMDB tables to a set of archive tables.

Benefits of using archive tables include:

  • Records stay available in case questions arise later (vs Deletion)
  • Record retention can be configured to meet regulatory requirements
  • Daily use of the CMDB can continue without the distraction of non-active records
  • Much lower risk than simply deleting incomplete or duplicate records
  • Feature is an included part of the platform with no separate license
  • Archival and Destruction (optional) can be automated

Documentation Links

Quick Setup Play

This play is designed to assist in quickly configuring Data Archive to assist with cleaning the CMDB.

Goal

We can add a simple true/false field to the CMDB which will allow us to match a Data Archive Rule, triggering archival of any record we no longer need immediate access to.

Play Steps

Add a field to the CMDB
  1. Navigate to Configuration > CI Class Manager
  2. Click the Open Hierarchy button

  1. Select Configuration Item at the very top

  1. Click on Attributes on the left, then click on Added on the right

  1. Scroll to the bottom of the list, and double-click on "Insert a new row..."


  1. Enter the following values for the new row...
    • Column label = Ready to archive
    • Column name = u_ready_to_archive (should auto-populate from label)
    • Type = True/False (do NOT leave it as the default: String)
  2. Click Save. This may take a moment or two depending on system load at the time


  1. Sort the list of fields by Column name in reverse (downward arrow) to locate the new record
  2. Double-click the empty space for Default value and populate it with "false" (without the quotes), and click the green checkmark/circle to save

Create a Data Archive Rule

Some facts about Data Archive Rules & the CMDB Table Hierarchy

  • When an Archive Rule is activated (active=true), all of the necessary archive tables are immediately created
  • Choosing a parent class (cmdb_ci, cmdb_ci_hardware or others high up in the hierarchy) will result in one archive table per child table (there are many child tables)
  • These new archive tables will match each CI class with a prefix of "ar_" ie: ar_cmdb_ci_hardware
  • The field we added above is on cmdb_ci, but we can place the archive rules on more specific classes
  • Placing different rules on various tables will allow fine-tuned control using different conditions for matching the rules
  • It is recommended to start with just one rule at the cmdb_ci_hardware or cmdb_ci_appl table, each of which will have 70-115 extended tables


  1. Navigate to System Archiving > Archive Rules
  2. Click New
  3. Complete the form as shown:
    • Name = Hardware Archive Rule
    • Table = Hardware (beware there's 2 of these, trial & error might be required)
    • Description = Archive rule for Hardware CIs marked as Ready to archive = true
    • Active = Leave this un-checked for the moment
    • Conditions = Ready to archive IS true

If the Ready to archive field is not present in the condition builder, swap the drop-down for Table to the other Hardware entry. (alm_hardware and cmdb_ci_hardware are both labeled Hardware)


  1. Save the record, or click Submit and then re-open it
  2. Review the form fields to ensure they are correct in relation to Step 3 above
  3. When you are satisfied with the rule, click the Active checkbox, and Save/Update the record
    • Data Archive happens at the top of each hour - bare this in mind when you are later confirming that archival is taking place
    • When a rule is moved to active, a possibly large number of tables are created in the background (see list of facts above)

Validation

To test or use the Data Archive Rule, we will manually set the Ready to archive field on a few records.

Play Steps

  1. Navigate to any List View for the CDMB (cmdb_ci_hardware.list)
  2. Configure the columns in the view to add Ready to archive field
  3. If necessary, click New to create a dummy Configuration Item
  4. Otherwise, filter for a list of Configuration Items which are candidates for archival
  5. Using List Edit, switch the Ready to archive field on the chosen Configuration Items to True
  6. Wait for the top of the hour to pass - System Log entries will show TableCleaner as the source when the archive rules are processed
  7. Confirm that the Configuration Items marked to archive are no longer present when the List View is refreshed
  8. Navigate to the same table with the ar_ prefix (ar_cmdb_ci_hardware.list)
  9. Confirm that records are now present in the archive table for each of the selected items to archive

Follow-on Task Suggestions

There are a few suggested ways to make Data Archive easier to use or more secure, depending on the needs of each customer.

  • Add a UI Action (button) to toggle the Ready to archive field value
  • Add role based security (ACLs) around
    • Reading the records in the archive tables
    • Marking the items Ready to archive
  • Use Ready to archive attribute when performing Remediate Duplicate Tasks (see KB0829103)

Engagement Questions

Each company should follow their own policies regarding data retention!