8032495

Index Compression

PublishedOctober 4, 2011
Assigneenot available in USPTO data we have
Technical Abstract

Patent Claims
17 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A method performed by one or more processors for accessing an index list which stores pointers to records in a data store, wherein some of the pointers in the index list are compressed, the method comprising: reading a first entry in the index list, the first entry comprising a first pointer representing an address within a data store where a first record is located, the first pointer having a first size; reading a second entry in the index list, the second entry comprising a header of a compressed portion of the index list, the compressed portion including a plurality of delta pointers that each represent an address within the data store where a corresponding record is located, each delta pointer having a size that is smaller than the first size, and wherein the header includes a size indicator that, when set to one of a plurality of values, defines the size of each delta pointer within the compressed portion; determining the location of a third entry comprising a first delta pointer in the compressed portion of the index list by calculating an offset from a base address of the compressed portion based on the size of the delta pointers as defined by the size indicator; and reading the third entry by accessing the index list at the determined location.

2

2. The method of claim 1 , wherein to the compressed portion includes 64 delta pointers or less.

3

3. The method of claim 1 , wherein the size indicator, when set to a first specified value, defines that the size of each delta pointer within the compressed portion is variable, and wherein determining the location of a third entry comprising a first delta pointer in the compressed portion of the index list by calculating an offset from a base address of the compressed portion based on the size of the delta pointers as defined by the size indicator further comprises: accessing a variable size list within the compressed portion to identify one or more variable compressed entry size indicators that each define the size of a corresponding delta pointer that precedes the first delta pointer in the compressed portion; and calculating an offset from the base address of the compressed portion based on the size of the one or more corresponding delta pointers as defined by the corresponding one or more variable compressed entry size indicators.

4

4. The method of claim 3 , wherein the variable size list is sized to correspond to a native memory bus size of a processor executing portions of the method.

5

5. The method of claim 3 , wherein each variable compressed entry size indicator has an equal number of bits.

6

6. The method of claim 1 , wherein the size indicator, when set to a second specified value, defines that each delta pointer within the compressed portion has been run length encoded.

7

7. The method of claim 1 , wherein determining the location of the third entry is performed in response to following a pointer from a speed-up data structure, the speed-up data structure allowing for skipping of entries in the index list.

8

8. The method of claim 1 , wherein the header of the compressed portion commences with an entry representing a negative number to identify that the compressed portion follows the entry representing the negative number within the index list.

9

9. The method of claim 1 , wherein the compressed portion comprises a sufficient number of filler entries such that the compressed portion begins and ends at native memory boundaries.

10

10. The method of claim 9 , wherein the compressed portion is a whole integer multiple of a native memory bus size of a processor executing portions of the method.

11

11. The method of claim 1 , wherein determining the location of the third entry further comprises accessing an offset correlation table which defines an offset for each of a plurality of groupings of delta pointers in the compressed portion, each delta pointer in a grouping sharing the same offset with other delta pointers in the same grouping, the offset of a grouping comprising a number of bits at the beginning of each delta pointer in the grouping.

12

12. The method of claim 3 , wherein calculating an offset from the base address of the compressed portion based on the size of the one or more corresponding delta pointers as defined by the corresponding one or more variable compressed entry size indicators comprises shifting an address of a previous delta pointer in the compressed portion by a number of bits as defined by the one or more variable compressed entry size indicators.

13

13. One or more physical storage media storing computer executable instructions which when executed by one or more processors perform a method for accessing an index list which stores pointers to records in a data store, wherein some of the pointers in the index list are compressed, the method comprising: reading a first entry in the index list, the first entry comprising a first pointer representing an address within a data store where a first record is located, the first pointer having a first size; reading a second entry in the index list, the second entry comprising a header of a compressed portion of the index list, the compressed portion including a plurality of delta pointers that each represent an address within the data store where a corresponding record is located, each delta pointer having a size that is smaller than the first size, and wherein the header includes a size indicator that, when set to one of a plurality of values, defines the size of each delta pointer within the compressed portion; determining the location of a third entry comprising a first delta pointer in the compressed portion of the index list by calculating an offset from a base address of the compressed portion based on the size of the delta pointers as defined by the size indicator; and reading the third entry by accessing the index list at the determined location.

14

14. The computer storage media of claim 13 , wherein the size indicator, when set to a first specified value, defines that the size of each delta pointer within the compressed portion is variable, and wherein determining the location of a third entry comprising a first delta pointer in the compressed portion of the index list by calculating an offset from a base address of the compressed portion based on the size of the delta pointers as defined by the size indicator further comprises: accessing a variable size list within the compressed portion to identify one or more variable compressed entry size indicators that each define the size of a corresponding delta pointer that precedes the first delta pointer in the compressed portion; and calculating an offset from the base address of the compressed portion based on the size of the one or more corresponding delta pointers as defined by the corresponding one or more variable compressed entry size indicators.

15

15. One or more physical storage media which store a data structure, the data structure comprising one or more index lists, wherein at least one of the one or more index lists comprises: one or more non-compressed pointers that each represent an address within a data store where a corresponding record is located, each non-compressed pointer having a first size; a compressed portion comprising: a header that includes a size indicator that, when set to one of a plurality of values, defines the size of each delta pointer within the compressed portion; and a plurality of delta pointers that each represent an address within the data store where a corresponding record is located, each delta pointer having a size that is smaller than the first size, wherein each delta pointer defines an offset from an address of a previous pointer in the compressed portion.

16

16. The computer readable medium of claim 15 , wherein the size indicator, when set to a first specified value, defines that the plurality of delta pointers of the compressed portion are compressed using run-length encoding, and wherein the delta pointers are included in the compressed portion implicitly based on the run-length encoding.

17

17. The computer readable medium of claim 15 , wherein the size indicator, when set to a second specified value, defines that the size of each delta pointer within the compressed portion is variable, and wherein the compressed portion further comprises a variable size list that defines the size of each of the plurality of delta pointers.

Patent Metadata

Filing Date

Unknown

Publication Date

October 4, 2011

Inventors

Ronald P. Millett

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “INDEX COMPRESSION” (8032495). https://patentable.app/patents/8032495

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.