# US 8,160,997 B1 · System, method and computer program product for managing aging data in a database schema

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 8,160,997 B1
- Document ID: US8160997B1
- Status: Granted
- Kind: B1
- Application number: 11/739,630
- Filed: 2007-04-24
- Granted: 2012-04-17
- Earliest claimed: 2007-04-24
- Assignees: Amdoes Software Systems Limited
- Inventors: Tal Givoly
- Web page: https://patentgrep.com/patent/US8160997B1

## CPC

- G06F 16/283: {Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A system, method and computer program product are provided for managing aging data in a database. In use, data, or a dimension in a dimension table is identified in a database. Further, an attribute is stored in association with the data, or the dimension. To this end, at least a portion of the data or the dimension is removed from the database, utilizing the attribute.

## Claims

### Claim 1

A method, comprising:
identifying, in a database, a dimension in a dimension table of the database;
storing, in association with the dimension, an attribute;
removing at least a portion of the dimension from the database, utilizing the attribute; and
removing the dimension upon the attribute being null;
wherein the attribute includes a counter that is incremented in response to data being added to the dimension and decremented in response to data being removed from the dimension;
wherein the attribute is utilized to remove an effect of a previous transaction;
wherein the previous transaction includes adding data entries to a plurality of dimensions of the dimension table, and removing the effect of the previous transaction includes removing the data entries from the plurality of dimensions of the dimension table.

### Claim 2 (depends on 1)

The method of claim 1, and further comprising determining whether a new dimension is created.

### Claim 3 (depends on 1)

The method of claim 1, further comprising establishing the counter if it is determined that a new dimension is created.

### Claim 4

A method, comprising:
identifying, in a database, a dimension in a dimension table of the database;
storing, in association with the dimension, an attribute;
removing at least a portion of the dimension from the database, utilizing the attribute; and
removing the dimension upon the attribute being null;
wherein the attribute includes a time-to-live attribute that is updated in response to data being changed in the dimension;
wherein the data is removed in response the attribute being expired;
wherein the attribute is utilized to remove an effect of a previous transaction;
wherein the previous transaction includes adding data entries to a plurality of dimensions of the dimension table, and removing the effect of the previous transaction includes removing the data entries from the plurality of dimensions of the dimension table.

### Claim 5 (depends on 1)

The method of claim 1, wherein the dimension in a dimension table of the database is identified, and the attribute is stored in association with the dimension in the dimension table of the database.

### Claim 6 (depends on 1)

The method of claim 1, wherein the database includes a star schema database.

### Claim 7 (depends on 1)

The method of claim 1, wherein the database includes a snowflake schema database.

### Claim 8 (depends on 1)

The method of claim 1, wherein the database includes an On-Line Analytical Processing (OLAP) database.

### Claim 9 (depends on 1)

The method of claim 1, wherein the removing is carried out utilizing a database transaction.

### Claim 10 (depends on 9)

The method of claim 9, wherein a plurality of the database transactions are aggregated.

### Claim 11 (depends on 9)

The method of claim 9, wherein the database transaction is triggered manually.

### Claim 12 (depends on 9)

The method of claim 9, wherein the database transaction is triggered automatically.

### Claim 13 (depends on 12)

The method of claim 12, wherein the database transaction is triggered automatically at periodic intervals.

### Claim 14 (depends on 12)

The method of claim 12, wherein the database transaction is triggered as a function of when at least one dimension is last updated.

### Claim 15

A non-transitory computer readable medium encoded with a data structure, the data structure comprising:
an attribute object stored, in association with a dimension in a dimension table of a database;
where at least a portion of the dimension is capable of being removed from the database, utilizing the attribute object, and the dimension is removed from the database upon the attribute object being null;
wherein the attribute object includes a counter that is capable of being incremented in response to data being added to the dimension and decremented in response to data being removed from the dimension;
wherein the data structure is operable such that the attribute object is utilized to remove an effect of a previous transaction;
wherein the previous transaction includes adding data entries to a plurality of dimensions of the dimension table, and removing the effect of the previous transaction includes removing the data entries from the plurality of dimensions of the dimension table.

### Claim 16

A computer program product embodied on a non-transitory computer readable medium, comprising:
computer code for identifying, in a database, a dimension in a dimension table of the database;
computer code for storing, in association with the dimension, an attribute;
computer code for removing at least a portion of the dimension from the database, utilizing the attribute; and
computer code for removing the dimension upon the attribute being null;
wherein the attribute includes a counter that is incremented by the computer program product in response to data being added to the dimension and decremented by the computer program product in response to data being removed from the dimension;
wherein the computer program product is operable such that the attribute is utilized to remove an effect of a previous transaction;
wherein the previous transaction includes adding data entries to a plurality of dimensions of the dimension table, and removing the effect of the previous transaction includes removing the data entries from the plurality of dimensions of the dimension table.

### Claim 17

A system, comprising:
memory for storing, in association with a dimension in a dimension table of a database, an attribute; and
a processor in communication with the memory, the processor adapted for removing at least a portion of the dimension from the database, utilizing the attribute, and further adapted for removing the dimension upon the attribute being null;
wherein the attribute object includes a counter that is incremented by the processor in response to data being added to the dimension and decremented by the processor in response to data being removed from the dimension;
wherein the system is operable such that the attribute is utilized to remove an effect of a previous transaction;
wherein the previous transaction includes adding data entries to a plurality of dimensions of the dimension table, and removing the effect of the previous transaction includes removing the data entries from the plurality of dimensions of the dimension table.

### Claim 18 (depends on 17)

The system of claim 17, and further comprising a display communication with the processor and the memory via a bus.

### Claim 19 (depends on 1)

The method of claim 1, wherein the at least a portion of the dimension is removed for controlling an amount of data in the database, a number of dimensions in the database, or a size of the dimension table.

### Claim 20 (depends on 1)

The method of claim 1, wherein the attribute is continuously monitored to determine whether the attribute is null, and a determination that the attribute is null indicates a situation where the dimension has no data stored in association with the dimension, such that removing the dimension is utilized for managing a number of dimensions in the dimension table and automating a removal of related data.
