# US 10,769,145 B1 · Unified and compressed statistical analysis data

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

- Number: US 10,769,145 B1
- Document ID: US10769145B1
- Status: Granted
- Kind: B1
- Application number: 15/596,827
- Filed: 2017-05-16
- Granted: 2020-09-08
- Earliest claimed: 2016-05-17
- Assignees: United Services Automobile Association (USAA)
- Applicants: United Services Automobile Association (USAA)
- Inventors: Glen Alan Becker
- Web page: https://patentgrep.com/patent/US10769145B1

## CPC

- G06F 16/24535: {of sub-queries or views}
- G06F 9/3836: {Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution}
- G06F 9/3877: {using a secondary processor, e.g. coprocessor (peripheral processor G06F13/12)}
- G06F 9/3895: {for complex operations, e.g. multidimensional or interleaved address generators, macros}
- G06F 9/442: {Shutdown}
- G06F 16/1744: {using compression, e.g. sparse files}
- G06F 16/254: {Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses}
- G06F 16/258: {Data format conversion from or to a database}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Systems and methods for compression and/or unification of statistical analysis system (SAS) data is provided. In one embodiment, a request to open a unified and compressed statistical analysis system (SAS) view file is received. The unified and compressed SAS data step view file including: an SAS data step view; compressed payload data to be used in the SAS data step view when decompressed; and a set of metadata describing characteristics of variables of the SAS data step view. Upon receiving the request, the compressed payload data is automatically decompressed, such that compressed payload data is decompressed and usable with the SAS data step view to render the SAS data step view and decompressed payload data on an electronic display of a client or host providing the request.

## Claims

### Claim 1

A tangible, non-transitory, machine-readable medium, comprising machine-readable instructions to:
receive a request to open a unified and compressed statistical analysis system (SAS) data step view file, the unified and compressed SAS data step view file comprising:
an SAS data step view;
compressed payload data to be rendered in accordance with the SAS data step view when decompressed; and
a set of metadata describing characteristics of variables of the SAS data step view; and
upon receiving the request, automatically decompress the compressed payload data, such that compressed payload data is decompressed and usable with the SAS data step view to render the SAS data step view and decompressed payload data on an electronic display of a client or host providing the request.

### Claim 2 (depends on 1)

The machine-readable medium of claim 1, comprising instructions to automatically decompress by:
parsing the compressed payload data into a plurality of portions of compressed payload data;
decompressing the plurality of portions of compressed payload data in parallel via a plurality of decompression functions running in parallel, resulting in a plurality of portions of decompressed payload data; and
merging the plurality of portions of decompressed payload data, resulting in a full set of decompressed payload data.

### Claim 3 (depends on 2)

The machine-readable medium of claim 2, comprising instructions to:
run each of the plurality of decompression functions on a separate processing core of a multi-core processor complex.

### Claim 4

A tangible, non-transitory, machine-readable medium, comprising machine readable instructions to:
request opening of a unified and compressed statistical analysis system (SAS) data step view file, the unified and compressed SAS data step view file comprising:
an SAS data step view;
compressed payload data to be rendered in accordance with the SAS data step view when decompressed, wherein the requesting automatically triggers decompression of the compressed payload data, resulting in a full set of decompressed payload data; and
a set of metadata describing characteristics of variables of the SAS data step view; and
render the SAS data step view using the decompressed payload data on an electronic display.

### Claim 5 (depends on 4)

The machine-readable medium of claim 4, comprising instructions to:
when a computer implementing the computer-implemented method is not a SAS host or SAS client, construct a generic object model, interpretable by the computer using the characteristics of the variables of the SAS data step view described by the set of metadata.

### Claim 6 (depends on 5)

The machine-readable medium of claim 5, comprising instructions to:
render the SAS data step view using the generic object model.

### Claim 7 (depends on 4)

The machine-readable medium of claim 4, comprising instructions to:
replace a full-size data table with the SAS data step view.

### Claim 8 (depends on 7)

The machine-readable medium of claim 7, comprising instructions to:
determine whether a low storage threshold is met; and
when the low storage threshold is met, replace the full-size data table with the SAS data step view.

### Claim 9 (depends on 7)

The machine-readable medium of claim 7, comprising instructions to replace the full-size data table with the SAS data step view as part of a comprehensive space-management program for storage of full-sized data tables.

### Claim 10

A tangible, non-transitory, machine-readable medium, comprising machine readable instructions to:
receive a statistical analysis system (SAS) data step view;
receive a compressible payload;
generate metadata identifying data elements and associated characteristics of the SAS data step view;
compress the compressible payload without user intervention, resulting in compressed payload data that is configured to be rendered in accordance with the SAS data step view when decompressed;
append the compressed payload data to an end of the SAS data step view, such that the compressed payload data does not encroach upon a memory location indicated by an end pointer location to the SAS data step view; and
associating the metadata with the compressed payload data, the SAS data step view, or both.

### Claim 11 (depends on 10)

The machine-readable medium of claim 10, comprising machine-readable instructions to compress by:
parsing the compressed payload data into a plurality of portions of decompressed payload data;
compressing the plurality of portions of decompressed payload data in parallel via a plurality of compression functions running in parallel, resulting in a plurality of portions of compressed payload data; and
merging the plurality of portions of compressed payload data, resulting in a full set of compressed payload data.

### Claim 12

A computer-implemented method, comprising:
receiving a request to open a unified and compressed statistical analysis system (SAS) data step view file, the unified and compressed SAS data step view file comprising:
an SAS data step view;
compressed payload data to be rendered in accordance with the SAS data step view when decompressed; and
a set of metadata describing characteristics of variables of the SAS data step view; and
upon receiving the request, automatically decompressing the compressed payload data, such that compressed payload data is decompressed and usable with the SAS data step view to render the SAS data step view and decompressed payload data on an electronic display of a client or host providing the request.

### Claim 13 (depends on 12)

The computer-implemented method of claim 12, wherein the decompressing comprises:
parsing the compressed payload data into a plurality of portions of compressed payload data;
decompressing the plurality of portions of compressed payload data in parallel via a plurality of decompression functions running in parallel, resulting in a plurality of portions of decompressed payload data; and
merging the plurality of portions of decompressed payload data, resulting in a full set of decompressed payload data.

### Claim 14 (depends on 13)

The computer-implemented method of claim 13, wherein:
the plurality of decompression functions are each running on a separate processing core of a multi-core processor complex.

### Claim 15

A computer-implemented method, comprising:
requesting opening of a unified and compressed statistical analysis system (SAS) data step view file, the unified and compressed SAS data step view file comprising:
an SAS data step view;
compressed payload data to be rendered in accordance with the SAS data step view when decompressed, wherein the requesting automatically triggers decompression of the compressed payload data, resulting in a full set of decompressed payload data; and
a set of metadata describing characteristics of variables of the SAS data step view; and
rendering the SAS data step view using the decompressed payload data on an electronic display.

### Claim 16 (depends on 15)

The computer-implemented method of claim 15,
wherein when a computer implementing the computer-implemented method is not a SAS host or SAS client, constructing a generic object model, interpretable by the computer using the characteristics of the variables of the SAS data step view described by the set of metadata.

### Claim 17 (depends on 16)

The computer-implemented method of claim 16, comprising rendering the SAS data step view using the generic object model.

### Claim 18 (depends on 15)

The computer-implemented method of claim 15, comprising replacing a full-size data table with the SAS data step view.

### Claim 19 (depends on 18)

The computer-implemented method of claim 18, comprising:
determining whether a low storage threshold is met; and
when the low storage threshold is met, replacing the full-size data table with the SAS data step view.

### Claim 20 (depends on 18)

The computer-implemented method of claim 18, comprising replacing the full-size data table with the SAS data step view as part of a comprehensive space-management program for storage of full-sized data tables.
