# US 8,150,832 B2 · Methods and systems for automatically determining a default hierarchy from data

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

- Number: US 8,150,832 B2
- Document ID: US8150832B2
- Status: Granted
- Kind: B2
- Application number: 12/399,211
- Filed: 2009-03-06
- Published: 2010-09-09
- Granted: 2012-04-03
- Earliest claimed: 2009-03-06
- Assignees: Oracle International Corporation
- Inventors: Jonathan Isaac Helfman
- Web page: https://patentgrep.com/patent/US8150832B2

## CPC

- G06F 16/285: {Clustering or classification}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

This disclosure describes, generally, methods and systems for determining a natural hierarchy for a data set. The method determines one or more pair-wise combinations within the data set. The one or more pair-wise combinations each include a first field and a second field from the database. The method then determines a distinct count for each entry in the first field grouped by the second field of the one or more pair-wise combinations, and determines that the distinct counts for each entry has a value equal to one. The method further includes based on the determination that the distinct counts for each entry have a value equal to one, setting the first field in the pair-wise combination as the parent and the second field in the pair-wise combination as the child in a default hierarchy for the data set.

## Claims

### Claim 1

A method of determining a natural hierarchy for a data set, the method comprising:
receiving, at a computer system, a data set, wherein the data set is stored in a database;
analyzing, at the computer system, the data set to determine a plurality of categories and a plurality of quantities included within the data set;
based on the determined plurality of categories and quantities, determining, at the computer system, one or more pair-wise combinations within the data set, wherein the one or more pair-wise combinations each include a first field and a second field from the database;
determining, at the computer system, a distinct count for each entry in the first field grouped by the second field of the one or more pair-wise combinations;
determining, at the computer system, that the distinct count for each entry has a value equal to one;
based on the determination that the distinct counts for each entry have a value equal to one, setting the first field in the pair-wise combination as the parent and the second field in the pair-wise combination as the child in a default hierarchy for the data set, wherein the natural hierarchy is the most appropriate hierarchy for the data set based on the data within the data set;
determining a visual representation most suited for the natural hierarchy, based on structural aspects of the natural hierarchy; and
mapping features of the visual representation to the structural aspects of the natural hierarchy.

### Claim 2 (depends on 1)

The method of claim 1, further comprising filtering out the distinct counts for any entry that have a null value.

### Claim 3 (depends on 1)

The method of claim 1, further comprising determining that the distinct counts for each entry have a value not equal to one.

### Claim 4 (depends on 3)

The method of claim 3, further comprising, based on the distinct counts for each entry having a value not equal to one, determining if there are additional pair-wise combinations within the data set.

### Claim 5 (depends on 4)

The method of claim 4, further comprising, based on having additional pair-wise combinations within the data set, determining, at the computer system, a distinct count for each entry in a first field grouped by a second field of the additional pair-wise combinations.

### Claim 6 (depends on 5)

The method of claim 5, wherein a determination is made for each additional pair-wise combination until either a pair-wise combination which generates a count with a value equal to one is determined or all pair-wise combinations have been distinctly counted.

### Claim 7 (depends on 1)

The method of claim 1, further comprising displaying data within the data set in a graphical format based on the determined default hierarchy.

### Claim 8 (depends on 7)

The method of claim 7, wherein the graphical representation is displayed on a display device.

### Claim 9 (depends on 8)

The method of claim 8, wherein the display device comprises one or more of the following: an LCD display, a CRT display, an LED display, and a plasma display.

### Claim 10 (depends on 7)

The method of claim 7, wherein graphical representation comprises one or more of the following: clustered graph, bar chart, stacked bar graph, treemap, and pie chart.

### Claim 11 (depends on 1)

The method of claim 1, wherein the natural hierarchy comprises a default hierarchy based on the data within the data set.

### Claim 12 (depends on 11)

The method of claim 11, wherein the natural hierarchy comprises a hierarchy for the data within the data set which is configured to generate a logical parent-child relationship for the data set.

### Claim 13 (depends on 1)

The method of claim 1, wherein the natural hierarchy comprises a one to many relationship between the first field and the second field.

### Claim 14 (depends on 1)

The method of claim 1, wherein the data set comprises one or more of the following: an online analytical processing (OLAP) cube, meta-data associated with an ad-hoc relational schema, and a data warehouse.

### Claim 15 (depends on 1)

The method of claim 1, wherein the determining of the distinct count for each entry in the first field grouped by the second field of the one or more pair-wise combinations comprises using the following SQL commands: select, count, distinct, from and group by.

### Claim 16

A system for determining a natural hierarchy for a data set, the system comprising:
a storage device configured to store a database comprising a data set; and
a computer system coupled with the storage device, the computer system configured to execute the following commands:
receiving the data set from the database,
analyzing the data set to determine a plurality of categories and a plurality of quantities included within the data set,
based on the determined plurality of categories and quantities, determining one or more pair-wise combinations within the data set, wherein the one or more pair-wise combinations each include a first field and a second field from the database,
determining a distinct count for each entry in the first field grouped by the second field of the one or more pair-wise combinations,
determining that the distinct counts for each entry has a value equal to one,
based on the determination that the distinct counts for each entry have a value equal to one, setting the first field in the pair-wise combination as the parent and the second field in the pair-wise combination as the child in a default hierarchy for the data set, wherein the natural hierarchy is the most appropriate hierarchy for the data set based on the data within the data set,
determining a visual representation most suited for the natural hierarchy, based on structural aspects of the natural hierarchy, and
mapping features of the visual representation to the structural aspects of the natural hierarchy.

### Claim 17 (depends on 16)

The system of claim 16, further comprising a display device coupled with the computer system, the display device configured to display a graphical representation of the data set based on the default hierarchy.

### Claim 18

A non-transitory machine-readable medium having sets of instructions stored thereon which, when executed by a machine, cause the machine to:
receive a data set, wherein the data set being stored in a database;
analyze the data set to determine a plurality of categories and a plurality of quantities included within the data set;
based on the determined plurality of categories and quantities, determine one or more pair-wise combinations within the data set, wherein the one or more pair-wise combinations each include a first field and a second field from the database;
determine a distinct count for each entry in the first field grouped by the second field of the one or more pair-wise combinations;
determine that the distinct counts for each entry has a value equal to one; and
based on the determination that the distinct counts for each entry have a value equal to one, set the first field in the pair-wise combination as the parent and the second field in the pair-wise combination as the child in a default hierarchy for the data set, wherein the natural hierarchy is the most appropriate hierarchy for the data set based on the data within the data set;
determine a visual representation most suited for the natural hierarchy, based on structural aspects of the natural hierarchy; and
map features of the visual representation to the structural aspects of the natural hierarchy.

### Claim 19 (depends on 18)

The non-transitory machine-readable medium of claim 18, wherein the sets of instructions which, when further executed by the machine, cause the machine to filter out the distinct counts for any entry that have a null value.

### Claim 20 (depends on 19)

The non-transitory machine-readable medium of claim 19, wherein the sets of instructions which, when further executed by the machine, cause the machine to determine that the distinct counts for each entry have a value not equal to one.
