# US 2013/0159244 A1 · Methods and apparatus for improving data warehouse performance

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

- Number: US 2013/0159244 A1
- Document ID: US20130159244A1
- Status: Published application
- Kind: A1
- Application number: 13/529,359
- Filed: 2012-06-21
- Published: 2013-06-20
- Earliest claimed: 2006-06-26
- Assignees: The Nielsen Company (US), LLC
- Inventors: Steve Lavdas; Doug McDowell
- Web page: https://patentgrep.com/patent/US20130159244A1

## CPC

- G06F 16/116: {Details of conversion of file system types or formats}
- G06F 16/217: {Database tuning (G06F16/2282 takes precedence; database performance monitoring G06F11/3409)}
- G06F 16/283: {Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP}
- Y10S 707/99934: Query formulation, input preparation, or translation
- Y10S 707/99942: Manipulating data structure, e.g. compression, compaction, compilation
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- Y10S: TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS

## Abstract

Methods and apparatus for improving data warehouse performance are disclosed. An example method to transform a first database into a second database includes generating a first mapping file associated with a fact table of the first database, the first mapping file referenced by a first hierarchical directory file path, generating a second mapping file associated with a dimension table, the second mapping file referenced by a second hierarchical directory file path, and retrieving data from the second database using the first and second mapping files via sequential navigation of the first and second hierarchical directory file paths.

## Claims

### Claim 1

A method to transform a first database into a second database, comprising:
generating, with a processor, a first mapping file associated with a fact table of the first database, the first mapping file referenced by a first hierarchical directory file path;
generating, with the processor, a second mapping file associated with a dimension table, the second mapping file referenced by a second hierarchical directory file path;
appending, with the processor, the second hierarchical directory file path to the first hierarchical directory file path to facilitate access to the first and the second mapping files, respectively;
copying data, with the processor, from the fact table of the first database to the first mapping file, and copying data from the dimension table of the first database to the second mapping file to form the second database; and
retrieving data from the second database using the first and second mapping files via sequential navigation of the first and second hierarchical directory file paths in response to receiving a request to access data in the first database.

### Claim 2 (depends on 1)

A method as defined in claim 1, wherein the sequential navigation comprises traversing a plurality of nested hierarchical directory file paths referenced by the first hierarchical directory file path.

### Claim 3 (depends on 2)

A method as defined in claim 2, wherein executing the sequential navigation further comprises revealing a plurality of database dimensions, each one of the plurality of database dimensions defined by an associated dimension mapping file.

### Claim 4 (depends on 1)

A method as defined in claim 1, wherein the dimension table comprises a dimension key, the dimension key associated with a data file stored in a third hierarchical file path, the third hierarchical file path nested under the second hierarchical file path.

### Claim 5 (depends on 1)

A method as defined in claim 1, further comprising identifying at least one nested hierarchical file path in response to receiving at least one of the first or second mapping files, the at least one nested hierarchical file path comprising a subsequent level of the first or second hierarchical file path.

### Claim 6 (depends on 1)

A method as defined in claim 1, wherein generating the hierarchical path further comprises generating a star schema structure.

### Claim 7

An apparatus to transform a first database into a second database, comprising:
an organizer to generate a first mapping file associated with a fact table of the first database, the first mapping file referenced by a first hierarchical directory file path, to append a second mapping file associated with a dimension table, the second mapping file referenced by a second hierarchical directory file path, and to append the second hierarchical directory file path to the first hierarchical directory file path to facilitate access to the first and the second mapping files, respectively;
a compression engine to copy data from the fact table of the first database to the first mapping file, and copying data from the dimension table of the first database to the second mapping file to form the second database; and
a data retriever to retrieve data from the second database using the first and second mapping files via sequential navigation of the first and second hierarchical directory file paths in response to receiving a request to access data in the first database.

### Claim 8 (depends on 7)

An apparatus to transform a first database into a second database as defined in claim 7, further comprising a data formatter to execute a sequential navigation by traversing a plurality of nested hierarchical directory file paths referenced by the first hierarchical directory file path.

### Claim 9 (depends on 7)

An apparatus to transform a first database into a second database as defined in claim 7, wherein the organizer is to associate a dimension key with a data file stored in a third hierarchical file path, the third hierarchical file path nested under the second hierarchical file path.

### Claim 10 (depends on 7)

An apparatus to transform a first database into a second database as defined in claim 7, wherein the data retriever is to identify at least one nested hierarchical file path in response to receiving at least one of the first or second mapping files, the at least one nested hierarchical file path comprising a subsequent level of the first or second hierarchical file path.

### Claim 11

An apparatus to access a database, comprising:
an input to receive a query; and
a data retriever to:
retrieve a first file path associated with a top level of a hierarchical directory file path structure and responsive to the query;
identify a first mapping file associated with the first file path; and
extract a first nested navigation path from the first mapping file to identify a first level of the hierarchical directory file path structure.

### Claim 12 (depends on 11)

An apparatus as defined in claim 11, wherein the nested navigation path comprises a file including at least one of data or a path to a second level structure of the hierarchical directory file path structure.

### Claim 13 (depends on 11)

An apparatus as defined in claim 11, wherein the data retriever is to examine the first mapping file to identify a second level structure of the hierarchical directory path structure.

### Claim 14 (depends on 13)

An apparatus as defined in claim 13, wherein the data retriever is to retrieve a plurality of second nested file paths from the first mapping file.

### Claim 15 (depends on 14)

An apparatus as defined in claim 14, wherein the data retriever is to identify nested second mapping files associated with respective ones of the plurality of second nested file paths.

### Claim 16 (depends on 15)

An apparatus as defined in claim 15, wherein each nested second mapping file comprises at least one of data or a plurality of third nested file paths.

### Claim 17

An apparatus to retrieve data, comprising:
a data retriever responsive to a query to:
retrieve a first file and extract a plurality of first level file paths;
select a first one of the plurality of first level file paths to identify a first dimension associated with the query; and
identify a plurality of subcategories of the first dimension by evaluating a second file associated with a first one of the plurality of first level file paths.

### Claim 18 (depends on 17)

An apparatus as defined in claim 17, wherein the plurality of first level file paths are associated with corresponding dimensions associated with nested data.

### Claim 19 (depends on 17)

An apparatus as defined in claim 17, wherein each one of the plurality of first level file paths comprises a nested file to define a lower level dimension of the nested data.

### Claim 20

A hierarchical directory file path, comprising:
a fact table path indicative of a highest level of the hierarchical directory file path, the fact table path comprising an associated fact table mapping file;
a dimension table path indicative of a first sub-level of the fact table path, the dimension table path comprising an associated dimension table mapping file; and
a directory tag path indicative of a second sub-level of the fact table path, the directory tag path comprising an associated directory tag data file.

### Claim 21 (depends on 20)

A hierarchical directory file path as defined in claim 20, further comprising a plurality of dimension table paths indicative of the first sub level of the fact table path.

### Claim 22 (depends on 21)

A hierarchical directory file path as defined in claim 21, wherein the plurality of dimension table paths are indicative of database keys.

### Claim 23 (depends on 20)

A hierarchical directory file path as defined in claim 20, wherein the fact table path is indicative of a database structure.

### Claim 24 (depends on 20)

A hierarchical directory file path as defined in claim 20, wherein the first sub-level comprises a database key.

### Claim 25 (depends on 24)

A hierarchical directory file path as defined in claim 24, wherein the database key comprises a plurality of dimension keys at the second sub-level.
